通过网页执行长存储过程

时间:2011-06-29 06:45:12

标签: oracle stored-procedures struts long-integer

我在Weblogic 10.3.3上运行了这个Web应用程序(使用Struts 1.x),它读取文件并将数据输入到数据库(Oracle 11g DB)。而且通过这个Web应用程序,我可以在数据库中运行存储过程。现在的问题是在对存储过程进行一些更改后,需要很长时间才能完成执行(25-40分钟)。

现在将加载运行存储过程的页面,即使在存储过程完成后(通过会话浏览器检查),页面仍将处于加载状态,有时它将显示超时错误。

网页是否有办法运行需要很长时间才能完成的存储过程(60分钟)?我应该更改应用程序代码还是Weblogic设置?

感谢您的回复。

1 个答案:

答案 0 :(得分:1)

你永远不应该让用户等待。当我上次处理时:

  1. 客户端(用户/浏览器)告诉服务器“启动过程”
  2. 服务器生成启动过程的线程。
  3. 服务器告诉客户端(用户/浏览器)“我现在完成了。稍后再回来.Mabee我发邮件给你了”
  4. 服务器完成程序。
  5. 服务器通过电子邮件向用户表明该程序已完成。
  6. 辅助线程终止。
  7. 服务器吃了罗宾爵士的吟游诗人,并且非常高兴。
相关问题