Microsoft Azure Web Sites 已经做好引领公共 PaaS 的准备

  • Richard Seroter
  • 马德奎

2014 年 5 月 8 日

话题:Java云计算Windows AzureDevOps语言 & 开发架构

随着四月中旬宣布软件更新,Microsoft 基本上弥补了它与其它领先的平台即服务产品之间的差距。借助完善后的定价、免费的 SSL 支持、全局 DNS 负载均衡以及引入 Java 支持,Azure Web Sites 似乎成为了 Heroku、Google App Engine、OpenShift Online、Cloud Bees 和 Engine Yard 的有力竞争者。

近日,Microsoft 副总裁 Scott Guthrie 写了一篇博文,介绍了 Microsoft Azure 平台的一组更新,其中有 4 个针对Azure Web Sites PaaS服务的更新。首先是 Azure Web Sites 的“标准层(Standard Tier)”——该层价格最高,但允许用户部署无限数量的网站——它现在包含 5 个免费的基于 SNI 的 SSL 证书和一个免费的基于 IP 的 SSL 证书。对于那些网站运行在不同 Web Site 层的用户,或者那些免费分配的证书已经用完的标准层用户,这些证书的价格分别为 9 美元 / 月和 39 美元 / 月。谈到层,Microsoft 新增一个“基本层(Basic Tier)”,它没有诸如自动扩展、分段应用程序和后台调度程序访问等功能,但价格比标准层便宜 25%。另外,对于运行在 Azure Web Sites 上的站点,Microsoft 增加了向这些站点映射 DNS 和 SSL 通配符证书的支持。Guthrie 指出,对于那些在 Azure 平台上运行自定义 SaaS 应用程序的用户而言,这项功能会非常有用。

Azure Web Sites 的另一项更新是增加对Azure Traffic Manager的支持。该服务能够根据地理分布、可用端点或者一个简单的轮询算法将 DNS 请求路由到不同的 Azure 端点。更改之后,用户可以将“Web Sites”作为一个有效的服务端点类型添加到 Azure Traffic Manager 配置文件。该服务类似于一个全局负载均衡器,允许开发人员在遍布世界各地的数据中心部署他们的 Web 应用程序,并高效地将流量路由到理想的主机。

最后,开发人员现在可以将 Java 应用程序部署到 Azure Web Sites 上。默认支持的 Java 版本是 1.7.0_51,而开发人员可以选择 Tomcat 7.0.5.0 或 Jetty 9.1.0 作为 Java 容器。在一篇关于这项特定更新的博文中,Microsoft 项目经理 Chris Compy 指出了一些服务的可扩展性以及一些限制条件。

除了门户网站用户界面上或 Web 应用程序库中提供的选项,客户还可以上传他们自己的 Java 版本以及基于 Java 的应用程序。例如,客户可以选择上传 Java 6 和 Tomcat 6 来代替 Azure Web Sites 提供的 Java 版本和容器。

由于许多企业级 Java 应用程序需要大量的内存,Azure Web Sites 还提供了运行 64 位版本 Java 1.7.0_51 的能力。就目前而言,开发人员必须通过在 web.config 文件中进行配置以选择 64 位运行时环境——未来,他们将可以在用户界面上选择 64 位版本。

……

至少在最初阶段,所有运行在 Azure Web Sites 上的 Java 应用程序只监听传入的 HTTP 流量。这意味着在目前这个时候没有 JMX 或 JMS 消息,也没有 JDWP 或 JDI 远程调试。

另外请注意,所有的 Java 程序必须作为应用程序运行,而不能作为服务。

Azure Web Sites 与某些存在已久的 Web 应用程序 PaaS 服务提供商相比怎么样呢?在下面的表格中,InfoQ 比较了 Azure Web Sites 与包括HerokuGoogle App Engine(GAE)、OpenShift Online(OS)、CloudBees(CB) 和Engine Yard(EY) 在内的其它五个 PaaS 平台的内置功能。

 

Azure

Heroku

GAE

OS

CB

EY

Platforms

Java

x

x

x

x

x

x

.NET

x

         

Ruby

 

x

 

x

x

x

Node

x

x

 

x

x

x

PHP

x

 

x

x

x

x

Python

x

x

x

x

   

Perl

     

x

   

Go

   

x

     

Built-in application scaling

x

x

x

x

x

x

SSL support

x

x

x

x

x

x

Load balancing – single region

x

x

x

x

x

x

Load balancing – multiple regions

x

         

Deploy from source control

x

x

x

x

x

x

Continuous integration

x

 

x

x

x

x

Release/version management

x

x

x

x

x

x

OS virtualization containers

     

x

   

Custom background jobs

x

x

x

x

x

x

Service monitoring

x

x

x

x

x

x

Add-on, service ecosystem

x

x

x

x

x

x

Azure 的此次更新标志着微软正向着云托管 Web 应用程序的顶级提供商积极推进。随着公共和私有云提供商的混合完善了大规模应用程序托管的基本特性,PaaS 市场本身也在不断发展。InfoQ 先前的文章,如“PaaS 怎么样了?”,探讨了 PaaS 采用缓慢的现状及其定义正发生怎样的变化。在最近的 InfoQ 圆桌会议上,该编辑聚集了四位云专家,谈论 PaaS 的未来,以及自像 Google App Engine 和 Heroku 这样的服务首次引起人们的注意后 PaaS 发生了怎样的变化。

查看英文原文:Microsoft Azure Web Sites Ready to Take on Public PaaS Leaders

Java云计算Windows AzureDevOps语言 & 开发架构