Java, and other languages, gave us platform independence long ago. Application writers could ignore the underlying operating system (to a large extent) and focus on the work at hand. While this reduced the need for OS and architecture-specific code, the underlying operating system still required a lot of care and feeding.
Recently, Platform as a Service took over management of the underlying operating system and infrastructure, but early PaaS offerings required moving your application and data out to a service provider and risking lock-in.
Last month VMware announced a partnership with Salesforce.com to deliver a new way to run apps written for the Spring Framework. VMforce opens up new context to run Java enterprise applications, hosted by force.com. These applications are built with the same tools used to run applications within vSphere or vCloud.
Yesterday Google made a big announcement that their popular App Engine framework will now be host-able on VMware vSphere, vCloud partners, VMforce, or other infrastructures such as Amazon EC2.
This is write once, run anywhere on steroids.
This new flexibility is a great way to bridge the gap between private and public clouds:
- For applications that require a large degree of elasticity, multi-context frameworks are a boon to cloud-bursting (extending to a public provider during times of peak usage)
- Disaster Recovery can be much more cost-effective if the answer during an outage is to run the same application on Google App Engine, Force.com, Azure or others
- For applications dealing with sensitive data, public PaaS environments can be used as a test-bed during development (especially scalability testing) before building out the private cloud infrastructure required to host the production application
- Applications can take advantage of frameworks and tools that make scalable applications easier to develop, without locking into a particular provider
- Portability gives additional options for security. It is difficult to apply external security controls (WAF, DAM, DLP, IDS/IPS) to a public PaaS environment, but applications can be guarded by physical or virtual appliances in your private cloud
While it will take some time before development with these frameworks dominate enterprise applications, there is no doubt this will be a factor in the evolution of the datacenter. We are moving, more rapidly than I would have expected, towards decreased relevance of the virtual machine and operating system for server workloads.
This new-found Application and Data-centricity is a welcome step forward. I hope Google’s announcement is a sign of more to come.