码迷,mamicode.com
首页 > Web开发 > 详细

MVC项目中ExecutionTimeout不生效的解决方案

时间:2015-01-05 11:04:16      阅读:621      评论:0      收藏:0      [点我收藏+]

标签:

 

我们做web服务器端开发时,经常会遇到一个需求场景,因为某些耗时处理造成页面的响应处理时间超长,技术角度就想能否给页面处理程序一个指定的超时时间,服务端处理程序执行时间超过这个指定的超时时间则中断处理,直接返回响应,以防止服务器端宿主的吞吐队列堆积,造成全站瘫痪。

 

asp.net中,有这么一个方便的东西,他就是ExecutionTimeout 。

相关背景

ExecutionTimeout 属性指示在请求被 ASP.NET 自动关闭前允许执行的最大秒数。 默认值为 110 秒。 只有当 <compilation> 元素中的调试特性设置为 false 时,此超时属性才适用。

如果超时过期,则引发异常。 您可以在事件日志的 Application 文件夹中记录相关的信息。 通过在<healthMonitoring> 配置元素中启用应用程序状况监视来执行此操作。

经测试验证发现:
ASP.NET Webform项目的中ExecutionTimeout 生效。
ASP.NET MVC3中项目中中ExecutionTimeout 不生效。

 

MVC项目让ExecutionTimeout 生效的解决方案

web.config
技术分享 
技术分享
技术分享
目前只在最终页请求处理controller里落地,未来可以放到basecontroller里
技术分享
 

相关资料

MVC项目中ExecutionTimeout不生效的解决方案

标签:

原文地址:http://www.cnblogs.com/yuxuanji/p/4202954.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!