2012-03-16 50 views
0

我有一个使用Java/Spring的客户端/服务器应用程序。客户端通过httpinvokers访问服务器并发出返回序列化对象的请求。跟踪远程调用拉取序列化对象的进度

我们有拉过一个非常大的50MB +序列化对象的调用。很明显,这个调用需要几分钟的时间来处理。有没有一种方法可以跟踪这次调用的进度?举例来说,这将是完美的,如果我有机会测试传输的数据量,而通话过程中,可能通过使用一个单独的线程。

谢谢

回答

2

你将不得不作出2个不同的调用(第二将是异步)。你的服务器将实现一个观察者模式来更新其转移到正在观察它的对象数据。服务器会将这50MB数据分块写入,而不是流入。

观察员类是其他类,你将异步调用。观察者将保持返回有多少数据被传送。

它的那种Gmail中实现HTML5在附件上传进度条发布前的同一个概念。他们所做的是通过html控制,他们上传了正在写入服务器端的附件,同时他们使用flash对象向该服务器发送调用以查看已保存多少数据。

+0

感谢您的回复,但我希望在保持单一通话模式的同时做些事情。有没有办法做到这一点? – springcorn 2012-03-17 04:00:18

+1

与单个呼叫,NO – 2012-03-17 05:29:12