Iâve been thinking about the cloud a lot lately, and what it really means. Different vendors come up with different definitions that promote their own services. My take is that the cloud is really just advanced hosting services that come with a set of many potential benefits and opportunities, but also some challenges and shortcomings as well. For example, the cloud offers limitless scalability and unrivaled availability for most applications supported by the total virtualization of a large, well-managed and scalable infrastructure.
Cost is also a factor. Amazon Web Services and Google App Engine are already delivering the ability to build and deploy an application without any capital investment in hardware and software. Further, some experts estimate that large scale computing environments can be run at about a 70 percent lower cost factor than individual data centers for small and medium businesses.
The challenges include things like disaster recovery. How would you recover in the event your cloud vendor went dark? What about portability? If you choose Google App Engine would it be possible to port to another cloud service if you needed to? Lastly, security concerns arise, including fear about who might have access to my business data.
Despite the potential concerns, many of us have started to embrace SaaS and cloud computing, and are already utilizing hosted CRM, web analytics, Amazon Web Services or Google App Engine. Once hardware and network operations are outsourced to the cloud, the single most important responsibility is to ensure that the application delivers high levels of service to the end-users.
The most accepted method of doing this today is to setup remote external Web application performance monitoring. In an environment where every resource is virtualized (CPU, disk I/O, memory, and network), the only way to understand the end-user experience is to measure where the ârubber meets the road,â at the Web application interface layer.