2

我想创建一个供小型制造公司使用的生产管理系统。该系统将允许记录设备制造的不同阶段。要求如下:
1.非基于浏览器的界面。需要基于 Swing 或 AWT 之类的东西。虽然我理解实现基于浏览器的解决方案的便利性,但企业主坚持使用非浏览器界面
2.从多个系统访问。这些系统将允许在中央系统上进行 CRUD 操作(瘦客户端?)
3.应用程序不会有超过 3 个并发用户。
我需要一些关于这种应用程序的好路径的建议。目前,我正在考虑将 Griffon 与 RMI 一起使用。但是,我没有太多的开发经验。也请阅读一些有关 Apache River (Jini) 的信息。将 Griffon 与 RMI 一起使用是个好主意吗?

请提供一些建议。谢谢。
编辑:经过一番阅读,我决定使用更主流的框架。所以,Griffon 不是一个选择。Jini(Apache River)或OSGI(Apache Felix)怎么样?

4

2 回答 2

3

嗯,一个最近退出孵化阶段的项目与一个已经在生产中使用超过 3 年的项目相比,如何被认为是主流?无论如何,Apache River 让您可以访问 Jini 技术,仅此而已;这意味着您无法仅靠 River 实现列表中的第 1 项。River 可以使用 RMI 访问远程资源,但是您可以直接使用 RMI,或者尝试 DRMI、Kryonet、Hessian/Burlap、Spring 的 HTTP Invoker、Protocol Buffers、Avro/Thrift、REST、SOAP、ZMQ 等等。

即使您选择这些选项之一和/或 River,您仍然必须定义以下内容

  • 应用程序结构(文件结构和运行时行为)
  • 构建设置
  • 依赖管理
  • 测试配置文件
  • 打包
  • 部署策略

这些以及更多是 Griffon 带来的。正如您可能已经注意到的那样,该框架允许您通过添加插件来构建应用程序,减少您必须分配用于寻找依赖项、设置引导机制和完成任务的时间。关于远程技术,请查看 Griffon 提供的不同选项http://artifacts.griffon-framework.org/tags/plugin/remoting

更重要的是,您还可以将 OpenDolphin ( http://open-dolphin.org/dolphin_website/Home.html ) 与 Griffon 结合使用。甚至在 opendolhpin 存储库中找到了一个示例应用程序,显示了一个完整的客户端-服务器应用程序(使用 Griffon、Grails 和 OpenDolphin 构建)https://github.com/canoo/open-dolphin/tree/master/dolphin-griffon-crud

于 2013-06-24T08:09:17.317 回答
2

根据您目前对该问题的理解,我不推荐 OSGI,尤其是对于小型制造公司(可能的维护问题,取决于“人员”)。

在您的情况下,我不提倡 JINI 或 OSGI的主要原因是因为您所说的

However, i don't have much development experience.

只要您完全理解LookupService和服务注册等概念,JINI (Apache River) 就是一个可行的选择。这里有大量的 RMI 可能会影响防火墙......

OSGI 并不难,但您可能在决定如何构建应用程序以及与服务交互等方面遇到问题。

尝试坚持你可以处理的最简单的实现方法(考虑到灵活的设计):让它工作,然后改进它

有一些简单的 Web 服务选项,例如Spring Remoting(例如通过 http/https),除非 Spring 为您的应用程序引入了太多的概念和令人头疼的问题。

于 2013-06-22T14:29:11.410 回答