It’s 2012, and the mobile computing revolution is here. The proliferation of smartphones, tablets, and other mobile or always-connected devices has already changed the way we interact with technology and each other, thanks in large part to the web. The internet is now the focal point of 21st century life, and for application developers, it’s time to get your app, as is the buzzword nowadays, in the cloud.
Of course, you’re probably thinking that’s a lot harder than it sounds. It’s difficult to keep up with resource management as your user base expands, and nobody wants a reputation for unreliability. Fortunately, major technology companies such as Amazon or Microsoft have services that offer easy cloud-based app deployment. We’ll evaluate each of the major Platform as a Service (PaaS) and Infrastructure as a Service (IaaS) system so that you can find the right one for your applications.
If you are a Microsoft .NET shop, the easy choice is Windows Azure, Microsoft’s PaaS offering. Azure integrates extremely well with .NET applications, and as a PaaS system, automates management of your virtual servers, allowing the developer, to focus on development. Azure also supports non-Microsoft languages such as Java; however, porting them over is more difficult than porting .NET applications. Microsoft’s Skydrive is its online document storage and file sharing system. With the development of Azure, Microsoft is showing how they fight off cloud services from competitors such as Amazon and Google.
Amazon Web Services (AWS) is the most popular cloud service available. AWS features its EC2 engine among other components. A lot of popular sites use AWS – so many, that it’s estimated that 1% of the entire web runs on EC2. Unlike Azure, AWS is essentially language-agnostic with comparatively reduced support for .NET. Some of the top offerings of AWS are its unparalleled suite of tools and software, a storage medium and aggressive speed. However, EC2 is more of an IaaS and depending on your perspective requires far more manual control over the individual virtual servers that are hosting your application. Obviously, the AWS suite offers lots of tools for managing those machines or even automated management, but if you want to scale, you have to add additional virtual servers manually. (Azure, as a PaaS, handles scaling automatically.) A downside of the AWS IaaS is the fact that backups for your servers are extra and if one fails the entire instance is lost. Matching its policy on scaling, Amazon charges rent for each virtual box you occupy, although it’s worth mentioning that AWS is free to try.
Google’s Paas/IaaS offering is the App Engine, which is perhaps the third major cloud option. Google has quite a lot of experience in the cloud, perhaps more than even Amazon, and they bring it all to App Engine. App Engine supports Java and Python, and like Azure scales without concern for individual machines. As is Google’s modus operandi, most of App Engine is built on open-source technologies, which can make porting easy. However, while AWS features .NET capabilities, albeit limited ones, App Engine doesn’t support .NET at all. The way App Engine focuses on ‘transactions’ requires some peculiar programming. Likewise, Google charges by the transaction, which can make cost predictions a headache but can possibly save money compared to AWS’s flat rate.
Texas based Rackspace claims its clients include 40% of the Fortune 100, and it offers highly customizable virtual boxes – especially with regards to storage space – at highly customizable rates. While not as flexible as AWS, Rackspace boasts a shallow learning curve and reportedly excellent customer service, notable assets for anybody looking to dip their toe in the cloud. And if none of the aforementioned services are a good fit for you and your application, there are hundreds of smaller services offering unique features that we don’t have space to cover here but are nonetheless deserving of your attention – and maybe even your business!
iCloud is from the
people who love mobile, Apple. Apple claims their spot among the growing cloud services market. iCloud is Apple’s attempt to unify its extremely popular product lines with a seamless, integrated cloud solution. Receiving glowing reviews about features, mobile access, ease of use, and of course help and support, Apple shows they know how to do the cloud with agility and competence. This cloud based service is of course limited to the Apple product line, so if you are a business who utilizes Apple products; you are in luck, because they are doing it well!
Dropbox and Egnyte offer online storage services that allow businesses to be very agile with their data storage capabilities. Both services allow businesses to be very agile with their data storage capabilities. If you are looking for a cloud based personal hard drive online, you will find it in this type of cloud service. Dropbox provides instant access to your most important files, no matter where you are.
If the trend towards a mobile- and internet-based culture is any indication, cloud computing is here to stay, so there’s no time like the present to get applications up and running in the cloud. A bit of research is what it takes to find the right fit for your business and application.