2011-10-13 120 views
1

在我的项目中,业务逻辑在Application Server上实现为EJB,桌面客户端 - 调用这些EJB的独立应用程序。一切工作正常,当我只有单方面的沟通(客户端 - >服务器),但现在我需要的可能性订阅/由服务器汇集。因此,基本上在客户端登录到服务器后,服务器可以随时将更新发送到服务器。由于我不能在应用服务器之外使用EJB,所以问题是如何去做(解决这些问题的标准和优先方式是什么)。也许我可以在任何JMS实现?(它是如何工作的外部应用程序服务器。)服务器调用客户端(EJB)

问候

回答

0

投票将是一个简单的解决方案。它可能不适合你的需要在所有情况下,因为它会增加服务器负载:

  • 您的桌面客户端可以查询获得任何更新的服务器上简单地创建一个EJB。为此,您可以在客户端上创建后台线程。在客户端上使用某种观察者模式,您可以将信息“推送”到GUI。
0

JMS实现在这里似乎很合适,服务器发布消息&客户端使用它。同样,由于通信将是异步的,它将最佳地利用客户端服务器资源。

轮询可能会降低性能,因为在许多情况下,它可能不需要作为连续活动。您可以通过同步/异步通信使用基于需求的主题/队列机制。