现在是 2017 年,我正在寻找一些有关跨多个 VM 服务器的 IIS Web Farms 的“最佳实践”指导。2016 版之前的 Server 建议如下
- 分布式文件系统复制 (DFS-R)
- 应用程序请求路由 (ARR) 和网络负载平衡 (NLB)
鉴于 Server 2016 和群集共享卷 (CSV),这可能不再有意义。Azure IAAS 平台还添加了自己的负载均衡器功能。
TechNet 在“实际应用”部分中将 SOFS 作为“推荐”解决方案,但只有一个要点。 https://technet.microsoft.com/en-us/library/hh831349(v=ws.11).aspx
“Internet 信息服务 (IIS) Web 服务器可以在横向扩展文件共享上存储网站的配置和数据。”
鉴于 Server 2016,本地和 Azure IaaS(不是 PaaS!)的最新“最佳实践是什么?” SOFS(主动-主动)能否胜任 IIS Web Farms 的任务?
答案1
您将无法部署 DFS-R,因为它无法复制打开的文件,而像 PeerLock 这样的第三方锁既昂贵又不可靠。TL;DR:坚持使用推荐的解决方案:SOFS。
答案2
服务器 2016,集群共享卷 (CSV)。
2016 年的哪些版本不适用于非常特定的用例之外,网站也不例外。这种情况在 2019 年发生了变化,但即便如此,我还是会尽可能地选择独立服务器场。是的,集群共享卷意味着几乎类似的冗余……
...直到您想要进行 A/B 测试或部分测试升级并意识到所有 Web 服务器都使用相同的代码库。
Azure IAAS 平台还添加了自己的负载均衡器功能。
这可能相关也可能不相关,具体取决于您做什么 - 即,一旦达到一定规模,我会尝试通过在更近的位置拥有独立副本来进行大量负载平衡。没有一个适合所有站点的最佳实践。