我有一个asp.net网页,其中按钮点击事件过程运行35分钟,在前端我使用ajax并显示进度条图像。如果过程(按钮点击事件)在不到30分钟内完成,则页面重新加载成功,否则“进行中”图像即使在过程完成后仍会显示,直到AsyncPostBackTimeout
的时间(设置为60分钟)并显示60分钟后服务器超时问题。
如果我做错了,请告诉我。
答案 0 :(得分:3)
没有看到你的代码,我无法告诉你出了什么问题。但是,我可以推荐几个选项:
答案 1 :(得分:1)
如果一个过程需要30分钟,那么明天可能需要60分钟或更长时间,因为您的服务器将忙着做其他事情。这种方法从根本上说是错误的。
我的建议是将这么长的任务放到另一层,即系统服务。该服务运行,从队列中挑选任务,逐个执行。前面层每隔几秒钟或几分钟就会查看操作是否完成。或者甚至更好,用户不会等待,他们会做其他事情,最终他们会被告知长时间运行的任务已经完成。