一般,我们开发Web应用程序的时候,都需要IT运维人员准备Windows OS或Linux OS的Web Server,安装相应的Web组件,比如IIS, Tomcat等等。然后开发人员把相应的代码部署到Web Server上并进行配置。
对于IT运维人员来说,Web Server是IaaS,IT运维人员需要维护Web Server的操作系统等内容。而对于开发人员来说,Web Server是PaaS,开发人员只需要维护Web Application即可。运维人员关心操作系统OS层面的东西,开发人员关系自己的代码是否有bug即可。
那么,Azure Web Apps是什么呢,Azure Web App提供了一个PaaS服务。只需开发人员把开发的代码直接部署到Azure Web Apps,无需操作系统层面的管理,直接降低了管理的成本。实现了,我们现在说的去操作系统化,或者无操作系统层。
首先,需要注意的是:Azure Web Apps支持的开发语言包括:.NET, Java, PHP,Python
基本涵盖所有主流开发语言。
其次,Azure Web App能用来干啥呢?
它提供四种等级的服务,当然每个等级的收费也是不同的:
1. 免费(Free)
(1) 客户的计算资源是和其他用户共享的
(2) 每天仅有60分钟的CPU计算时间
(3) 最多能使用的存储大小为1GB
(4) 不支持横向扩展功能
(5) 没有SLA保障的
2. 共享(Shared)
(1) 客户的计算资源是和其他用户共享的
(2) 最多能使用的存储大小为1GB
(3) 每天仅有240分钟的CPU计算时间
(4) 支持横向扩展功能,且横向支持最多6个共享实例
(5) 没有SLA保障的
3. 基本(Basic)
(1) 客户的计算资源是独享的
(2) 可以创建无限多个类型为Basic的Azure Web Apps
(3) 最多能使用的存储大小为10GB
(4) 支持横向扩展功能,且横向支持最多3个独享的实例
(5) 支持99.9%的SLA
4. 标准(Standard)
(1) 客户的计算资源是独享的
(2) 可以创建无限多个类型为Standard的Azure Web Apps
(3) 最多能使用的存储大小为50GB
(4) 支持横向扩展功能,且横向支持最多10个独享的实例
(5) 支持99.9%的SLA
基于以上对Azure Web App的了解,那么它的劣势在哪呢?
1. 单个Web Apps实例大小
单个Azure Web Apps实例最大为Large,配置是4Core/7GB。如果读者开发的Web Application,单个实例需要运行的最小计算单元大于4Core/7GB,则这个Web Application不适合部署在Azure Web AppsPaaS平台。
2. 横向扩展能力
在Standard模式下,Azure Web Apps支持横向扩展功能,且横向支持最多10个独享的实例
3. 不支持安装软件
因为无法通过Windows Remote Desktop或者Linux SSH管理Azure Web Apps的操作系统,所以Azure Web Apps不支持自定义安装软件
4. 不支持Azure Virtual Network虚拟网络
在国内由世纪互联运维的Azure China,Azure Web Apps目前不支持加入到Virtual Network虚拟网络中,所以访问加入到Virtual Network的Azure VM虚拟机,必须通过Azure VM的公网IP或者DNS访问。为了保证安全性,还建议结合Access ControlList(ACL)设置一起使用。
原文地址:http://shadowxyj.blog.51cto.com/11142118/1762781