本次Build大会宣布的另一个更新,就是网站服务支持Java。熟悉Java的用户对于Cloudfoundry等PaaS技术一定不陌生,现在,Azure上也可以实现类似功能了。Azure的网站服务在架构上与Cloudfoundry十分类似,都是事先准备一大堆server,然后根据用户部署,为用户分配某几个server和负载均衡器,组成用户的一个虚拟集群。Azure网站服务底层是用Windows server+IIS组成集群。IIS+插件可以支持.NET, Python, PHP, Nodejs运行。不过IIS不能和Java Webserver(比如Tomcat)集成,因此,Azure网站服务在支持Java方面,与支持其他语言稍有不同,就是没有采用IIS,而是直接用Windows Server+Tomcat/Jetty
下图是Azure网站服务的简化架构图。主要有4个部分,分别是负载均衡器,Web集群,代码库,代码发布
当用户部署网站时,Azure会为用户分配相应的资源,组成用户的集群,用户可以发布代码到网站代码库上,这部分代码会被映射给他的集群(就是把用户代码目录通过SMB方式挂载到用户的虚拟机上面)。不同用户的资源和代码都是相互隔离的。当用户访问自己的网站时,负载均衡器会根据URL转发请求道不同的集群