Azure网站和Azure Web角色之间的区别是什么?

新的Azure网站和ASP.NET MVC应用程序的传统Azure Web角色之间有什么重大区别? 我有什么理由选择“网站”而不是“网络角色”,反之亦然?

让我们假设在任何情况下我都需要相同的容量(例如2个小实例)。 除了预览期间网站临时折扣33%的事实之外,价格似乎相当。

有什么事情我可以用一个“网站”来完成,而这个网站在网络角色中很难或不可能? 例如,使用“网站”将多个网站放在一组虚拟机中变得容易吗? 我有“网站”还是“网络角色”会失去什么? 能够微调IIS吗? 能够在本地使用缓存服务?


Web角色为Web Apps(以前的Web站点)提供了多种功能:

  • 能够运行提升的启动脚本来安装应用程序,修改注册表设置,安装性能计数器,微调IIS等。
  • 能够将应用分成多个层(可能是前端的Web角色,后端处理的工作者角色)和独立缩放
  • 出于调试目的,可以将RDP加入虚拟机
  • 网络隔离
  • 专用虚拟IP地址,允许云服务中的Web角色实例访问受IP限制的虚拟机
  • 限制ACL的端点(在Azure SDK 2.3中添加,2014年4月)
  • 支持任何TCP / UDP端口(网站仅限于TCP 80/443)
  • 虽然Web应用程序比Web角色有优势:

  • 使用部署历史记录/回滚进行近乎即时的部署
  • Visual Studio Online,github,本地git,ftp,CodePlex,DropBox,BitBucket部署支持
  • 能够推出众多CMS和框架之一(如WordPress,Joomla,Django,MediaWiki等)
  • 使用SQL数据库或MySQL
  • 简单而快速地从免费套餐到共享套餐到专属套餐
  • 网络工作
  • 网站内容的备份
  • 内置的基于Web的调试工具(简单的cmd / powershell调试控制台,进程管理器,诊断工具如日志流等)
  • 随着2014年4月和2014年9月的发布,现在有一些Web应用程序和Web角色(和角色角色)共有的功能,其中包括:

  • 舞台+制作插槽
  • 通配符DNS,SSL证书
  • Visual Studio集成
  • 流量管理器支持
  • 虚拟网络支持
  • 以下是我从网站图库选择表单中选取的一个屏幕抓图: 在这里输入图像描述

    我认为Web应用程序是快速启动和运行的好方法,您可以从共享资源转移到保留资源。 一旦你超出了这个范围,你就可以移动到Web角色并根据需要进行扩展。


    编辑2014年:对于它的价值,很多这个答案中的信息不再正确 - 请参阅评论。

    将更多内容添加到@David响应中:

    使用Windows Azure网站时,您无法控制IIS或Web Server,因为您正在同一台计算机上使用资源片以及数百个其他网站,所以您无法像IIS一样共享资源,因此无法控制IIS。

    网站共享和Azure网络角色之间的巨大差异在于,网站被视为进程绑定,而角色是虚拟机绑定的。

    网站存储在内容共享中,可以从服务器场中的所有“网络服务器”访问,因此不需要复制或任何类似的内容。

    Windows Azure网站不能拥有自己的主机名,而只能使用websitename.azurewebsites.net,并且您确定可以在您的DNS提供程序中使用CNAME设置,以便仅当它们以保留模式运行时才将请求与以前的Windows Azure角色完全相同地路由。 共享网站不支持CNAME设置。


    我刚刚在http://robdmoore.id.au/blog/2012/06/09/windows-azure-web-sites-vs-web-roles/上发布了关于此主题的综合博客文章。

    摘自我的结论:如果您需要大规模的SSL,亚洲或美国西部数据中心,非标准配置(IIS,端口,诊断,安全证书或启动脚本),RDP或具有成本效益的工作人员角色结合您的Web角色),那么您现在必须坚持使用Web角色。

    否则,网站是一个很好的选择!

    链接地址: http://www.djcxy.com/p/62715.html

    上一篇: What is the difference between an Azure Web Site and an Azure Web Role

    下一篇: Hosted Web Role