Java web app框架,用于处理耗时计算的进程的客户端回调
我想了解一些在JavaWeb框架内处理长时间计算任务的方法,以及如何回调到浏览器客户机 我参加了JBoss远程处理和Spring远程处理 希望能够让客户端发送处理请求。处理可能需要X个时间,完成后会响应客户端 欢迎任何赞成、反对和建议Java web app框架,用于处理耗时计算的进程的客户端回调,java,web,frameworks,callback,Java,Web,Frameworks,Callback,我想了解一些在JavaWeb框架内处理长时间计算任务的方法,以及如何回调到浏览器客户机 我参加了JBoss远程处理和Spring远程处理 希望能够让客户端发送处理请求。处理可能需要X个时间,完成后会响应客户端 欢迎任何赞成、反对和建议 谢谢。有几种方法可以实现这一点: 使用Servlet3.0和 将实现与UI的长轮询或服务器推送合并 使用HTML5构建您的UI,并利用(最不可移植的解决方案) JBoss和SpringRemoting可能也是可行的解决方案,但它们实际上是为不同的目的而构建的。
谢谢。有几种方法可以实现这一点:
- 使用Servlet3.0和李>
- 将实现与UI的长轮询或服务器推送合并
- 使用HTML5构建您的UI,并利用(最不可移植的解决方案)
JBoss和SpringRemoting可能也是可行的解决方案,但它们实际上是为不同的目的而构建的。执行长时间的计算任务和为web应用程序推送服务器实际上是两件不同的事情 如前所述,使用comet的web应用程序将允许服务器推送(这是一个术语,表示web服务器可以在浏览器不启动请求的情况下将更新推送到浏览器)。有一些框架建立在这个基础之上。ICEfaces、Primefaces和ZK是三个支持此功能的web应用程序框架。Flex也支持从服务层推送数据 异步执行可以是任何简单的事情,比如一个运行的线程,它有足够的信息来启动服务器推送过程返回到客户机。您还可以使用基于消息的解决方案来处理长流程的异步执行
有很多选择,这实际上取决于您当前使用的工具/框架,并找到合适的工具/框架。您可以使用GWT,它可以很好地处理异步调用。我在很多应用程序的后台都有大量的数据负载。用户可以与各种视图等进行交互。。。。它非常无缝地集成到GWT中,并使用其自制的rpc机制。此外,如果需要,也可以使用JBoss Errai进行推送(当然是在gwt中)。值得一看 我不得不在一些遗留项目中使用Icefaces,要做到这一点非常困难。GWT只是让它变得简单。除非将异步调用绑定到按钮之类的组件并确保请求未排队,否则您需要使用JS。很乱
我想只有我的两分钱。在计算任务时,浏览器应该显示什么?我将看看您提到的AsyncTask以及Grails中支持的AsyncTask。谢谢