问题想法来定义的Java体系摆动的JavaFX/RMI/EJB3.0应用
我们参与了一个新的项目,开发与几个PC的应用程序,将作为通用计算机。还有一台计算机不时地作为主控机器来控制客户的所有过程。那台计算机必须通过服务器机器向所有其他机器发送消息,请求注册协助。那时,在客户端机器上运行的进程必须获得对计算机的控制,并且充当运行该应用程序的从机,直到从主机发送新消息释放它们。之后,客户机再次作为通用计算机。
The following scheme试图解释通过服务器的CM(控制机)的SM(从机)的涨幅访问之后发生了什么(SRVR)
- 控制机器CM发送消息,注册协助服务器 2 SRVR接收消息,记录一些信息,并广播所述寄存器辅助消息到SMS
- 的运行SM过程等待消息获得总量控制在每个SM
- 用户通过一个视图中选择的动作SM和机器发送一个响应于
- 的SRVR接收响应,并将其广播到所有的机器,包括结果机(RM)来更新所述服务器(SRVR)与新的状态的观点
- 的CM发送结束寄存器的SRVR给SRVR的消息。
- SRVR将消息广播到所有SM,应用程序视图关闭,应用程序再次进入侦听状态。
指出:
- 一切都需要某种形式的Java技术
- 所有的机器都乳宁的GNU/Linux/GNOME(Ubuntu的)做
- JPA是强制性用于日志记录和持久性
- JavaFX将根据Oracle进行更改,因为他们正在考虑放弃脚本语言 层
的问题是:
您应该使用哪个组合Java技术的一种观点?我的意见是使用Swing,并可能通过SwingComponent.wrap(loginPanel)将其嵌入到FX中,以帮助平面设计师做出更好的视觉工作(这是此应用程序中的必备工具)。请考虑绑定选项JSR-295(现在已经死了,因为我可以看到)或一些适当的选择。
您将如何保持更新应用程序客户端,我的意见是通过Java Web Start并将其作为一个小程序提供。
如果SRVR使用Java EE与EJB 3.0访问远程对象,可以吗?如果是这样,你将如何整合/模型/ EJB与RMI。我对RMI/EJB集成没有太大的经验,我不确定它是否正确。特别是因为EJB规范已经信任RMI。但是,那么如何从会话Bean(我可以看到有状态的)广播消息来更新视图?
在SM中选择的任何选项必须在所有注册为观察者的视图(其他SM,RM和CM)中查看。你会为此建议一个模型/架构/产品吗?
一旦SM应用程序被唤醒,哪种方法可以使SM应用程序获得完全控制权? - 请记住,它是Linux-
观察者模式如何应用于分布式环境?
硬件安排是否正确适用于此应用程序?
我知道这些都是很多的问题,我不是要开始这个讨论,我知道可以有很多不同的意见,我希望听到所有的人,包括实施细则。我正在寻找来自你们的一些反馈,你的意见将受到高度赞赏。提前致谢!