IIS 7 Window Server 2008 - WCF 服务超时
我有一个用于 Silverlight 应用程序的 WCF 服务,可以对 SQL Server 数据库执行数千次插入。通常情况下一切正常,但当我们有大量数据时,服务需要更长的时间来完成工作。
在我的本地 IIS 服务器(Win XP、IIS 5)和 ASP.Net 开发服务器(即使不在调试模式下)上,我可以运行请求很长时间,直到任务完成。我已将客户端 silverlight EndPoints 超时/缓冲区大小设置为很大的值(20 分钟等)。
当我们部署到实时(IIS 7 / Win 2008 Server)时,由于某种原因,服务在 2 分钟内超时。并不是服务停止运行,因为日志文件仍在写入,而 Silverlight 显示异步回调方法的“未找到”错误。
IIS 上控制超时的设置到底在哪里?我知道它们有 5 种左右不同的超时设置,可以在 web.config 中设置。但是,我在 IIS 中更改的任何设置都没有任何效果(表单身份验证有超时,wcf 有超时等..)。
请记住,这个应用程序和 web.config 在 IIS 5 / Win XP 上运行得很好。最后,我是否必须重新启动 IIS 才能使任何超时更改生效?我不愿意这样做,因为它是一个实时服务器,并且上面运行着其他应用程序。
I have a WCF Service for a Silverlight Application that can perform a few thousand inserts to an SQL Server database. Normally everything works fine but when we have a large set of data the service takes a longer time to do the work.
On my local IIS server (Win XP, IIS 5) and my ASP.Net dev server (even when not in debug mode) I can run the request for a long time until the job is done. I have set the Client side silverlight EndPoints timeouts/buffer sizes to a large amount (20 minutes etc..).
When we deploy to live (IIS 7 / Win 2008 Server) for some reason the service times out dead on 2 minutes. It's not the service thats stopped running because the log file is still being written to whilst Silverlight shows a "Not Found" error for the async callback method.
Where on earth is the setting on IIS that controls the timeout? I know their are 5 or so different setting for timeouts that can be set in the web.config. However, no setting I change in IIS has any effect (forms authentication has a timeout, wcf has one etc..).
Please bare in mind that this app and web.config works perfectly ok on IIS 5 / Win XP. Finally, do I have to restart IIS for any timeout changes to to effect? I am reluctant to do this because its a live server and there are other applications running on it.
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(1)
尝试更改网站的连接超时。看起来默认是两分钟。
Try changing the connectionTimeout for the web site. Looks like the default is two minutes.