跨站点或应用程序实现IIS负载平衡 - 而不是服务器

时间:2016-05-01 05:37:39

标签: iis arr

我有一个通过SOAP接口返回数据的IIS应用程序。所有电话都是原子的。由于与后端通信的问题,此IIS应用程序不是线程安全的。一次发出多个电话会导致不稳定。 IIS应用程序IS STABLE在单独的应用程序池中运行多个实例(我测试了100个应用程序)我已配置此IIS应用程序的多个实例,然后使用负载平衡策略(在客户端内)调用服务。每次只有一个呼叫通过每个服务。我有网址:

app1-100是在不同池下运行的相同副本。

我想将主网址配置为:

我将如何配置此功能?它甚至可能吗?

1 个答案:

答案 0 :(得分:0)

您可以尝试在IIS中设置Web Garden,这将为同一站点创建多个工作进程。要记住的问题是,如果您的应用程序保持会话状态,则不会将其存储在进程中而不将其存储在共享持久性存储(例如Redis)中。

要设置Web园,请编辑网站应用程序池的属性,并将Maximum Workers Processes设置为大于1的数字。

IIS将在工作进程之间循环请求。

<强>更新

以上实际上并不是一次强制执行一个请求。要强制执行并发请求限制,您需要调整网站的高级设置。 *右键单击网站节点 *管理网站 * 高级设置 *更改最大并发连接数

如果将此值设置为1,则无论您运行的应用池数量是多少,它一次只能处理一个。您可以尝试将此设置为2并具有2个工作进程,因为IIS应将第二个进程发送到第二个进程,但不保证每个应用程序池的序列化。要一次只有一个将Max Worker Processes设置为1,将Max Concurrent Connections设置为1

enter image description here

web garden setting