我正在尝试阅读关于Windows Azure中的负载均衡的知识,并且关于它的所有信息都非常含糊且非特定。我真正想要的只是一个简单的答案:Azure如何执行负载平衡?Windows Azure如何执行负载平衡?
许多应用程序使用会话或内存数据来提高性能。对于Azure,我不确定这是否可行,因为(从我所知道的情况来看),Azure没有任何“粘性”会话。即使它不是基于会话的,也只是基于IP的平衡,这对于许多应用程序来说已经足够了。
那么,今天的问题 - Azure如何执行其负载平衡?
我正在尝试阅读关于Windows Azure中的负载均衡的知识,并且关于它的所有信息都非常含糊且非特定。我真正想要的只是一个简单的答案:Azure如何执行负载平衡?Windows Azure如何执行负载平衡?
许多应用程序使用会话或内存数据来提高性能。对于Azure,我不确定这是否可行,因为(从我所知道的情况来看),Azure没有任何“粘性”会话。即使它不是基于会话的,也只是基于IP的平衡,这对于许多应用程序来说已经足够了。
那么,今天的问题 - Azure如何执行其负载平衡?
好的,在这里给出一个正确的答案 - Azure DOES支持web和worker角色前面的负载平衡(所以在这个线程上标记为最好的答案是完全错误的),但它不支持Affinity负载平衡这就是jvenema所要求的我想的。当前的实现使用循环法行为。
好的澄清Andy;我很感激。我最初应该在问题上更清楚。 – jvenema 2010-11-11 15:26:06
您正在访问:-) – 2010-11-11 19:51:42
如果只有一个调用基于Azure的服务的客户端应用程序,该怎么办?这种流量会不会被路由到一个特定的网络角色? – 2011-09-03 17:40:54
我想你可能在寻找Windows Azure AppFabric和Velocity,具体来说。请参阅PDC sessions以了解更多信息。
我读过关于AppFabric的文章 - 这是我们进入“它负载平衡的地方,但我们不会告诉你如何“妈妈。 – jvenema 2010-02-14 22:16:48
尽管AppFabric缓存是撰写此答案时推荐的解决方案,但现在已被弃用,MS现在推荐使用托管的Redis缓存http://blogs.msdn.com/b/appfabric/archive/2015/04/ 02/windows-server-appfabric-1-1-ends-support-4-2-2016.aspx – knightpfhor 2015-09-13 21:53:32
Azure通过在您设置的实例之间分配流量来处理表存储和SQL Azure的负载平衡。
对于类似于传统asp.net应用程序的会话状态,会话数据将存储在表存储器中,然后可用于所有webrole实例。这提到了here。
Windows Azure为每个公共端点提供负载均衡,允许您将应用程序扩展到任意多个实例。您需要确保您的应用程序是无状态的(或将实例的状态存储在跨实例的公共区域中,例如斑点或表)。唯一没有负载平衡的端点是内部端点。因此,如果您正在进行某种类型的角色间通信,例如从Web角色到在内部端点上托管wcf服务的多个工作角色实例之一,则需要处理这些实例之间的负载平衡。
我意识到这是一个老问题,但我们通过使用Windows Web Farm Framework并创建支持Affinity的代理服务器层到我们的Web服务器来解决Affinity问题。
http://technet.microsoft.com/en-us/library/jj129385.aspx
这是建议,如果你是自托管,似乎同样适用于Azure的架构。该层是这个样子......
防火墙:Azure的负载均衡(循环赛到代理服务器)
代理:应用程序请求路由(ARR)来执行负载均衡的亲和力对web服务器,静态和动态压缩和SSL。将SSL卸载到代理服务器可为Web服务器提供额外的处理器时间。此外,Web Farm Framework可以扩展,因为它可以管理每个额外的Web服务器,复制应用程序文件,监视运行状况,在线/离线切换等。您可以拥有10,000多台Web服务器。
Web:普通Web服务器(不需要SSL,压缩等)。
数据库:正常的数据库服务器或Azure SQL。
微软建议您至少有两台ARR(代理服务器)服务器。有些人会对Azure的额外成本感兴趣。然而,我们发现微型实例(15美元)比代理服务器更适合,如果5兆位是足够的速度。
另一种替代方法是将两台ARR服务器配置为小实例($ 100pm,即$ 65pm),但关闭一台ARR服务器并且仅在高峰期或第一台服务器出现故障时启用它(例如,可能安排第二台ARR服务器当第一次运行Windows更新并在一小时后停止时启动)。
这是一个麻烦设置,但一旦它的工作,它非常光滑!
注意:WFF文档中存在关于术语ARR,代理和控制器的一些混淆。他们通常都是一样的东西。记住这一点,如果你尝试设置它。
好概要格兰特! – jvenema 2013-06-30 18:26:16
虽然负载均衡曾经是循环赛,微软有从此改变了他们做的负荷,在这个博客中描述平衡的方式:
http://azure.microsoft.com/blog/2014/04/08/microsoft-azure-load-balancing-services/
的微软Azure负载平衡器采用了5元组(源IP,源端口,目标IP,目的端口,协议类型)计算用于映射流量到可用服务器的散列
2014年晚些时候......以防万一其他人登陆: http://windowsitpro.com/azure/azure-load-balancer-stickiness-options – Dawesi 2015-05-16 01:27:04