2

我们的 Web 应用程序依赖于一个封闭源代码的专有 DLL/库,该 DLL/库似乎设置了静态变量,这些变量似乎在不同请求中持续存在并与状态混淆。这对于单个用户的一批请求来说很好,但是如果另一个用户开始使用该应用程序,则来自流程范围内第一个用户的静态变量会与第二个用户的交互混淆。

在每个用户/请求的基础上,我可以确定第三方 DLL 的静态内存使用范围的最佳方法是什么?

我相信最简单的实现是将每个请求路由到特定的 Web Worker(不同进程的内存空间),但我似乎找不到任何 IIS/ASP API 可以控制 IIS 如何选择特定的 Web Worker一个要求。

4

1 回答 1

0

您只能将流量路由到应用程序池本身。IIS 仅对每个应用程序池的工作进程进行循环路由。您可以使用单个工作人员创建多个应用程序池,然后使用 HAProxy 之类的东西将请求路由到不同的应用程序池。

于 2019-12-17T20:26:12.173 回答