在我的应用程序中,我从近70台服务器中获取用户详细信息。这可能需要最多2分钟才能获取详细信息。但是当应用程序超过90秒时,应用程序会超时。除了我在左下角收到超时异常(浏览器中的警告消息)之外,屏幕没有变化
我在配置文件中将执行超时设置为3600,如下所示。但它仍然在90秒内超时。
<httpRuntime maxRequestLength="2147483647" executionTimeout="3600"/>
请帮我解决这个问题。 提前致谢
答案 0 :(得分:1)
试试这个
<configuration>
<system.web>
<sessionState timeout="20"></sessionState>
</system.web>
</configuration>
使用此代码,您的应用程序将在20分钟后退出。
答案 1 :(得分:0)
据我所知,这里有两个问题。第一个是实际的页面渲染。您应该考虑加载一次页面,然后触发一些内容来获取您的用户。在加载页面的同时应该进行AJAX调用以获取用户。
第二个问题是,由于几个原因,长时间运行的进程与ASP.Net不能很好地协同工作。其中之一是应用程序池每隔一段时间就会循环中止所有线程。你可能不会为此烦恼,但偶尔你会失败。否则,您需要将其推送到Windows服务中,并且网页应该从Windows服务请求它。 ajax应每隔1到2秒轮询页面以查看是否完成。一旦Windows服务完成了工作,它应该更新一些东西(可能是一个数据库表),然后在AJAX中返回结果。
答案 2 :(得分:0)
我遇到了同样的问题,不得不向scriptmanager AsyncPostBackTimeout =&#34; 1200&#34;
增加超时(默认为90秒)