在本地负载平衡Windows Azure实例

时间:2013-03-18 12:06:52

标签: azure load-balancing azure-compute-emulator

在将多实例WebRole部署到Windows Azure Emulator时,模拟器正在运行WebRole的多个IIS Express实例,每个实例都在保留的本地IP上,如:

 127.255.0.1
 127.255.0.2
 127.255.0.3

问题是我想要访问WebRole,就像它真的部署在Azure上一样,我需要检查实例之间是否存在Session State

由于我的Session Id存储在cookie上,每次我连接到不同的实例时,我需要手动将“注入”cookie检查会话数据的请求(因为浏览器认为IP是下一个实例作为不同的域名。)

有没有办法可以使用hostname(在Windows 7机器上)将其自身指向其中一个IP?

1 个答案:

答案 0 :(得分:1)

好吧,显然模拟器 负载均衡实例之间的所有请求:

单击Cloud Project上的“Debug”将打开一个带有IP的网页,该IP是虚拟负载均衡器(如果尚未采用,通常为127.0.0.1:80)。

然而,首先有两件事误导了我:

  • 1。多个IIS Express实例列表,每个实例都有自己的绑定(附图像)。

enter image description here

  • 2。隐含的亲和力:

    我将我的Web应用程序输出为instance-id并继续获取 始终使用相同的instance-id。原因是(我猜) 模拟器强制执行的关联(可能使用cookie) 比较)。

<强>结论:

如果您想自己手动负载均衡或控制亲和力,您可以利用IIS Server Farming功能(我最终做的)来模拟负载均衡。

(Apache / Nginx作为某种'反向代理'也是一个不错的选择,但我更喜欢坚持已经安装和使用的产品。)