3

这个问题更多地基于设计细节而不是特定的编程问题。我希望SO上的人不要介意这样的问题。

我正在设计一个具有两个广泛组件的应用程序。

组件 1 -> 托管在云中的中央服务器,使用 JBoss 5.1.0 服务器。我们希望在我们在这里寻求的解决方案中使用该基础设施。我们将此解决方案基于 JBossW 并使用基于 POJO 的 Web 服务。

组件 2 -> 是一个远程部署的 Java Client,负责收集数据。

我们目前有一个架构,客户端轮询服务器以获取配置详细信息,然后指示客户端何时开始收集数据(以及其他内务处理任务)。一旦客户端收到响应,它就会相应地配置自己。

这支持预定的数据采集,当数据采集时间到来时,如接收到的配置中指定的,客户端启动数据采集过程,然后将结果上传到服务器。

这里可能成为问题的一种情况是,当配置更改时,此更改到达客户端时不可避免地会延迟,直到客户端在下一次轮询之后收到新配置为止。为了避免这种情况,我们希望在这里实现某种“推送”技术,类似于“<a href="http://en.wikipedia.org/wiki/Comet_%28programming%29" rel="nofollow" >Comet”在基于 Web 的应用程序中。

有没有人实现过类似的东西,或者他们有任何可以分享的设计见解?我们注意到,我们有一个更重量级的解决方案,涉及从云到客户端的入站请求,但这更适合具有 DMZ 设施和其他适当安全措施的大型企业部署。

问题:

  1. JBossWS 是合适的 WebService 引擎吗?从我们所读到的内容来看,它似乎很受重视,并且仍然是事实上的标准。
  2. 有什么框架可以帮助实现基于“客户端推送”的解决方案,用于与 JBossWS 和基于 Java 的客户端进行通信?
  3. 在设计/实现此类应用程序时,我们应该考虑哪些具体案例或场景?
  4. 任何此类应用程序可以基于的开源框架?如果我们可以选择,我们使用并为开源计划做出贡献?
4

1 回答 1

0

我将看看 Servlet 3 规范中的异步处理能力。对于 JBoss,我会特别关注事件驱动的 servlet技术。

于 2012-04-18T14:49:13.763 回答