我应该如何设计一个应用程序,该应用程序由众多(但相同)独立的流程组成,这些流程需要将数据与企业应用程序通信,并通过web接口进行监视和访问。
在Java中有一个更具体的例子:
现在,理想情况下,我希望(1)中的进程能够从(2)中的bean调用方法,但也希望(2)中的bean能够和更新有关事物的过程(1)。
因此,这些是所需的执行流程,假设有10个独立的进程(1)为10个不同的用户运行(考虑一个“用户”-例如,一个数字可以很容易识别的“用户”):
到目前为止,我最好的方法是通过JMX公开这些J2SE应用程序,然后从那里开始,但有一件事我不知道--谁或者什么应该持有“URI X的进程负责用户Y”的密钥对列表,然后相应地指导调用。
顺便说一句,只要Java平台(!)是一个易于扩展的平台,请随时提供任何建议。
编辑:也有办法在某个应用服务器上“托管”这样的独立进程吗?如果进程失败,将重新生成进程,允许在远程计算机上部署和监视此类进程,等等?
发布于 2013-08-08 13:40:32
过去我使用Java Message Service已经有一段时间了,所以我恐怕没有最新的技术细节,但是从您的描述来看,处理管理GUI和客户端进程之间的通信似乎很适合您的情况。
有各种各样的选项(我相信您对异步通信感兴趣),所以您应该看看最新的发展,以检查自己是否适合您的情况。
关于服务器将与进程交换的数据大小,我认为这是一个不同的主题,我必须说答案取决于此。发送消息中的所有数据是否更好?还是消息只是一个通知,以便客户端得到通知,然后连接到某个企业bean以检查某些新状态?我更喜欢后一种情况,但这是你应该根据你的需求来决定的。我不会盲目地排除第一种选择,除非我有一些明显的证据证明这是行不通的。
关于缩放,我不认为它会比你剩下的豆子更糟糕。就服务器而言,它们的进程都是需要服务的客户端。
请接受上面的建议:我不知道你的问题/设计的具体内容。我说的更多是一般性的。
我希望这能帮上忙
https://stackoverflow.com/questions/18126395
复制相似问题