我必须向Azure部署一个宁静的web api 2项目,期望获得大量流量。我不确定哪种Azure服务可以选择最佳性能。 Web api服务在后台运行用于http处理的完整IIS,而worker角色需要通过OWIN实现http处理。任何经历?
答案 0 :(得分:0)
我建议您使用Azure API应用程序(https://azure.microsoft.com/en-us/documentation/articles/app-service-api-apps-why-best-platform/),因为这是用于托管Web API 2服务的服务。使用API应用程序时,您可以获得负载平衡,自动扩展,监控等功能。因此,您可以专注于构建满足业务需求的东西。
你应该总是避免自己做任何管道,因为它总是可以回来并在以后咬你。在这种情况下,API应用程序是正确的选择!
答案 1 :(得分:0)
我强烈建议您使用Azure应用服务(Web应用程序或API应用程序)代替Azure“云服务”。好处很丰富,缺点很少。
App Service带来的一些显着优势是自动扩展,Web作业(认为轻量级工作者角色),更简单,更快速的部署机制,以及与Application Insights的无缝集成。
云服务唯一能做得更好的是规模(垂直和水平)。但对于大多数Web / webAPI场景,随着App Service可用的新定价层,这些优势大大减少。
应用服务环境(应用服务的一项新功能),您可以逐字扩展到无限数量的实例(默认为50,但您可以致电Microsoft以增加限制)并使用更强大(是的,那是一个技术术语)实例大小。
在您开始使用App Service Environment之前,我建议您评估一下您的用户群的地理分布。标准和高级定价等级的每个应用服务计划可以分别扩展到10和25。您可以在几个不同的数据中心(美国西部,美国东部,美中,或海外,根据情况)将应用服务计划与流量管理器放在一起,现在您有三个应用服务计划,每个都有一个最大值10或25,取决于定价等级。这可以增加大量金属,并具有改善最终用户体验和提高系统可用性/灾难恢复的双重好处。
现在我只推荐云服务用于真正强烈的批处理,或者现有应用程序存在架构限制,需要能够更好地控制实例的底层操作系统(云服务支持启动任务,让您当生成一个你无法使用App Service的新实例时,做各种疯狂的事情。