Better Scalable Development Platforms
“The cloud” is a new term for an old idea: harnessing another organization’s infrastructure and expertise to deliver compute resources as a service over the network. Those resources include applications, servers, compute cycles, storage capacity, development platforms and more. The services are typically provided by a third-party on a “pay as you go” basis.
Businesses of all types and sizes are moving to cloud computing, and for many good reasons. The cloud is elastic; it scales up and down instantly and efficiently. It eliminates the need to buy and maintain expensive hardware and software for your development platform. And, it is mature enough to accommodate small and large-scale applications.
Perhaps even more importantly, the cloud is a catalyst for rapid-fire innovation. Developers can test more ideas in less time. Bad ideas can be corrected faster. Good ideas come to light sooner. And cloud computing can improve the developer experience because it reduces the cost of delivering better services.
In short, the cloud is a powerful model for creating new services, new competitive advantages and new business models.
Many different forms of cloud computing have emerged, but there are three primary models:
Infrastructure as a Service (IaaS): The cloud provider manages and delivers the underlying infrastructure, including storage, network and computing resources. The end user is able to deploy, run and control software, which may include operating systems, applications and possibly limited control of select networking components (e.g. firewalls).
Platform as a Service (PaaS): The cloud provider manages and delivers programming languages, frameworks, libraries, services and tools for the end user to create and deploy applications. The service provider also manages and controls the infrastructure, including network, servers, operating systems and storage, while the end user has control over the deployed applications and configuration settings for the application hosting environment. Learn more about the Engine Yard PaaS product family and related products.
Software as a Service (SaaS): The cloud provider manages and controls the underlying cloud infrastructure, operating systems, application platform and even individual application capabilities, with the possible exception of limited user-specific configuration. The end user has the ability to use the vendor's applications running on a cloud infrastructure. The applications are accessible from various client devices through either a web browser or an application programming interface (API).