随着云计算技术的发展,PaaS(平台即服务)越来越受到开发者的青睐,PaaS供应商也如雨后春笋般出现。
所谓PaaS实际上是指将软件研发的平台作为一种服务,并提供给用户。用户或者企业基于PaaS平台可以快速开发自己所需要的应用和产品。同时,PaaS平台开发的应用能更好地搭建基于SOA架构的企业应用。PaaS作为一个完整的开发服务,提供了从开发工具、中间件,到数据库软件等开发者构 建应用程序所需的所有开发平台的功能。
本文整理了近几年发展迅速的9款PaaS产品,希望能够对你选择应用开发部署平台有所帮助。
1. Microsoft Windows Azure
Windows Azure是微软的云计算平台,其主要目标是帮助开发者开发可运行在云服务器、数据中心、Web和PC上的应用程序。开发者能使用微软全球数据中心的储存、计算能力和网络基础服务。
Azure服务平台包括了以下主要组件:Windows Azure;Microsoft SQL数据库服务、Microsoft .Net服务;用于分享、储存和同步文件的Live服务;针对商业的Microsoft SharePoint和Microsoft Dynamics CRM服务等。
2. Google App Engine
Google App Engine 是Google提供的服务,允许开发者在 Google 的基础架构上运行网络应用程序。Google App Engine 应用程序易于构建和维护,并可根据访问量和数据存储需要的增长轻松扩展。使用 Google App Engine,将不再需要维护服务器,开发者只需上传应用程序,它便可立即为用户提供服务。
通过 Google App Engine,即使在重载和数据量极大的情况下,也可以轻松构建能安全运行的应用程序。该环境包括以下特性:
动态网络服务,提供对常用网络技术的完全支持
持久存储有查询、分类和事务
自动扩展和载荷平衡
用于对用户进行身份验证和使用 Google 帐户发送电子邮件的API
一种功能完整的本地开发环境,可以在您的计算机上模拟Google App Engine
3. VMware Cloud Foundry
Cloud Foundry是VMware的一项开源PaaS计划,使用各种开源开发框架和中介软件,来提供PaaS服务。开发者可以通过这个平台来建设自己的 SaaS的服务,不用自行建设和维护硬体服务器和中介软件。由于Cloud Foundry采用开源的网站平台技术,所以开发者的应用程序也可以任意转移到其他平台上而不受限于PaaS的平台。
目前Cloud Foundry可以支持多种开发框架,包括Spring for Java、Ruby on Rails、Node.js以及多种JVM等。Cloud Foundry平台也提供MySQL、Redis和MongoDB等数据库服务。
4. Force.com
Force.com是企业云计算公司Salesforce.com的社会化企业应用平台,允许开发者构建具有社交和移动特性的应用程序。另 外,Force.com还提供了有助于在云上更快建立及运行业务应用程序的所有功能,包括数据库、无限实时定制、强劲分析、实时工作流程及审批、可编程云 逻辑、实时流动部署、可编程用户界面及网站功能等。
Force.com支持Apex编程语言,开发者可以基于UI层面编写数据库触发器和程序控制器。
5. Heroku
Heroku是一种提供Ruby语言服务的云计算应用平台,为开发者进行网络编程提供全新体验。目前,除了Ruby外,该平台还支持Node.js、Clojure、Java、Python和Scala等语言。
Heroku构建在Amazion AWS之上,该平台采用了Ruby on Rails 的网络开发框架,客户只需在本地计算机设置一个Ruby Gem(Ruby语言的程序包管理器),就可在Heroku云中部署和运行应用程序。客户可以直接从浏览器中访问和编辑自己的代码,也可以添加相关语言的 插件。Heroku平台在程序开发上可让开发者得到与本地计算机相同,甚至更好的体验。
6. Amazon Elastic Beanstalk
Elastic Beanstalk为在Amazon Web Services云中部署和管理应用提供了一种方法。该平台建立如面向PHP的Apache HTTP Server和面向Java的Apache Tomcat这样的软件栈。开发人员保留对AWS资源的控制权,并可以部署新的应用程序版本、运行环境或回滚到以前的版本。CloudWatch提供监测 指标,如CPU利用率、请求计数、平均延迟等。通过Elastic Beanstalk部署应用程序到AWS,开发人员可以使用AWS管理控制台、Git和一个类似于Eclipse的IDE。
7. Engine Yard Cloud
Engine Yard的特色是提供一个Ruby on Rails的技术栈,其中包括Web服务器、应用和数据库服务器,同时提供一个Rails优化的Linux发行版。开发者可以通过Engine Yard的仪表板来进行环境配置、应用程序部署和监控。
8. Engine Yard Orchestra
Engine Yard在去年收购了PHP应用开发平台Orchestra,为PHP开发者提供了部署PHP应用到云中的服务。开发者可以使用流行的PHP框架构建应用程序,并可以通过Git或Subversion进行部署。
9. CumuLogic
CumuLogic主要面向Java开发者,提供了一个运行应用程序,并能够将应用迁移到云上的平台。通过CumuLogic提供的部署和管理应用的管理层,开发者能够轻松部署移动、HTML5、Web或企业应用。