Google is launching Managed Virtual Machines today, a new service on its Cloud Platform that gives developers the best new option for hosting their applications in the cloud. Instead of having to decide between using an infrastructure-as-a-service platform like Compute Engine or a platform-as-a-service (PaaS) service like App Engine, Virtual Managed Machines, the company says, gives them the best of both worlds.
If you’re planning the backend infrastructure for your web or mobile app today, you will have to decide whether you want the full flexibility of using a service like Compute Engine or Amazon’s EC2 to manage your servers in the cloud, or if you want to go with a platform-as-a-service provider like Parse or Google’s App Engine. By opting for a PaaS, you take away the complexity of having to manage your servers, but you also don’t get the flexibility to change to a different database later or make other modifications to your service.
As Google Cloud Platform Director of Product Greg DeMichillie told me last week, one of the questions he hears the most from prospective users is which model to choose. Google, after all, offers both kinds of service with Compute Engine and App Engine. “App Engine users often worried they may want to run something not available in App Engine and don’t want to be limited,” he noted.
With Virtual Managed Machines, they don’t have to choose. If they want to “color outside the lines,” as DeMichillie likes to call it, they can still opt for App Engine but have parts of their service run on these new Managed Virtual Machines. They can install whatever they want to on them, but the App Engine framework will continue to handle scaling for them. Users who start with Compute Engine can always migrate part of their service over to app engine, too, and all it takes to make that transition is making a few code changes to a YAML file.