陈斌彬的技术博客

Stay foolish,stay hungry

9个重量级的云计算(PaaS)平台

随着云计算技术的发展,PaaS(平台即服务)越来越受到开发者的青睐,PaaS供应商也如雨后春笋般出现。

所谓 PaaS 实际上是指将软件研发的平台作为一种服务,并提供给用户。用户或者企业基于 PaaS 平台可以快速开发自己所需要的应用和产品。同时,PaaS 平台开发的应用能更好地搭建基于 SOA 架构的企业应用。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 或企业应用。