我正在开发一个 Web API 并将其托管在 Windows Azure 上。我应该考虑什么来决定将其部署在哪里?据我所知,它可以部署为网站或云服务。我很想知道你们看到的优点和缺点。
谢谢!
最佳答案
云服务和 Windows Azure 网站都是 ASP.NET Web API 的良好宿主。
我同意@SLaks - 取决于您想要多少控制权。
使用云服务实现最大程度的控制(包括控制性能特征和(对于需要此功能的 API)扩展能力)。部署速度(秒而不是分钟)和成本(可能是免费的,具体取决于您的扩展需求)的网站。
- 对于网站,您的最大 VM 大小为“大”。通过云服务,它可以达到 XL(大型规范的两倍)。
- 通过网站,您最多可以拥有三个处于预留模式的虚拟机实例。使用云服务,没有硬性限制(尽管您可能需要调用支持以超过标准帐户中的 20 个核心)。
- 对于网站,您无法控制 IIS。借助云服务,您可以做到这一点,因此您可以执行诸如使用 Warm-up Module in IIS 之类的操作并调整回收设置(这些都有助于改善某些情况下的延迟)。
有关扩展网站的更多信息:http://www.windowsazure.com/en-us/manage/services/web-sites/how-to-scale-websites/
总而言之,从最少到最多的控制,您确实拥有:网站共享实例(高密度模式,控制较少,规模有限,免费)=> 保留模式(控制较少,规模更大,更可预测(b/c 没有你不知道的租户),需要花钱,知识含量低)=> 云服务(对 IIS 的最大控制,需要花钱,需要更多有关云服务的知识)。
关于azure - 在 Windows Azure 的何处部署 Web Api : as Website or as Cloud Service?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14633957/