首页
学习
活动
专区
工具
TVP
发布
社区首页 >问答首页 >ASP.NET web服务的IIS7.5应用程序初始化(预热),无需重新映射请求

ASP.NET web服务的IIS7.5应用程序初始化(预热),无需重新映射请求
EN

Stack Overflow用户
提问于 2013-03-12 05:06:10
回答 1查看 7.5K关注 0票数 19

我正在尝试使用IIS 7.5应用程序初始化扩展来配置web应用程序的预热过程。这是我正在采取的一种方法,以最大限度地减少应用程序池回收造成的速度减慢,这是一个问题explained well in other questions on Stack Overflow

我想要的,是获得应用程序初始化的好处,不需要重新映射请求任何地方。

到目前为止,我所做的

对于基本用例,我遵循了IIS 8 instructions,它工作得很好!我创建了一个名为app_starting.htm的启动页面,通过使用以下代码,它在应用程序初始化时显示:

代码语言:javascript
复制
<applicationInitialization remapManagedRequestsTo="app_starting.htm" skipManagedModules="true" >
    <add initializationPage="/" />
</applicationInitialization>

为什么这不好

我想使用初始化来加速对使用ASP.NET MVC编写的基于REST的web服务的请求。此web服务是多个应用程序的后端。当他们向资源(即/client/1/addresses)发出请求时,他们不能处理接收启动页面。

我尝试过的

我删除了remapManagedRequestsTo属性。然而,现在当我在初始化过程中请求资源时,会出现错误,直到初始化完成为止,我会得到一个500 。在此之后,响应将恢复正常。依赖于此服务的应用程序也不会很好地响应500错误,因为初始化不应该是一个错误条件。

我需要的是

在不执行任何重新映射的情况下,我希望请求行为恢复正常。即使正在进行初始化,对应用程序的其他请求也应该排队,并等待,直到初始化完成。

我是不是漏掉了什么?我能做到这一点吗?

谢谢你的帮助!

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2013-03-13 01:08:49

我想我已经回答了我自己的问题。我删除了skipManagedModules属性,它起作用了。此代码完成应用程序初始化,在预热期间,请求似乎在处理之前等待它完成:

代码语言:javascript
复制
<applicationInitialization>
    <add initializationPage="/" />
</applicationInitialization>

我找不到任何文档来解释它为什么会有这样的行为,也不太理解skipManagedModules是什么意思。如果有人能进一步解释这一点,我可以将解释标记为答案。谢谢!

票数 28
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/15348621

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档