有个难题,烦请对web通讯java比较了解的高手来看看(100分)

  • 主题发起人 主题发起人 lzasp
  • 开始时间 开始时间
L

lzasp

Unregistered / Unconfirmed
GUEST, unregistred user!
如果操作在服务器运算时间特别长,比如在上亿条纪录的数据库中统记,
时间超过了web server的timeout设定,那么client(web)端就会出现timout
页面,如何避免这种情况?也就是说让客户浏览器能够一直等到处理结果完成而不会timout。
3ks!
 
简单。你时不时的
代码:
out.println(" ");
out.flush();
就行了。比如你每处理1000条就flush一次。
 
处理都其中在database里,根本就没有机会用这些~~
 
那就这样,HTTP 协议里面支持长连接的流。这个http刘就是不过期的。很多聊天室就怎么做。
可惜我不熟悉....你查一下是怎么做的。
 
下面的这篇文章中,有一些保持流不断的办法,包括曹大侠的 flush 方法。
http://www.javaworld.com/javaworld/jw-03-2000/jw-03-pushlet.html
我倒是比较倾向于客户端 html 刷新 - HTML refresh。你在处理数据库的时候,
把进度(例如完成的百分比)放到一个表中,客户端可以每10秒钟自动刷新网页,
<META HTTP-EQUIV="Refresh" CONTENT="10"> 去察看这个进度。
如果任务完成则跳转到完成页去。
 
后退
顶部