我有一台 Windows 2008 / IIS 7.5 服务器,我想将其作为另一个服务调用的代理。
我遇到的问题是我所调用的服务通常需要一段时间才能响应,因此我需要代理来:
- 未超时
- 处理尽可能多的传入请求,因为除了将请求传递给服务并等待响应之外,它不做任何工作。
有人能就如何配置这样的设置提供一些建议吗?
答案1
对于第一部分,你可以参考https://stackoverflow.com/questions/2414441/how-to-increase-request-timeout-in-iis7-0为您的应用程序配置连接和执行超时设置。它适用于 iis 7.0,但可能也适用于 7.5。
对于问题的第二部分,您必须配置应用程序池设置。您可以在以下位置找到有关如何执行此操作的信息:这个文件。
答案2
您通常会在应用程序框架(ASP、ASP.Net 等)中设置容量(即线程数)限制和超时限制。
如果存在线程或内存可扩展性限制问题,您可能需要考虑设置 numProcesses > 1 ,这将创建一个 Web Garden;如果您的应用需要状态(或者更确切地说,不是无状态的),那么 Web Garden 并不是一个合适的选择,除非您使用某种形式的进程外状态。