0

我需要在 Java 中创建一个绘图应用程序,其中用户在主应用程序上绘制线条和颜色等,并且许多客户端查看器相应地更新他们的视图。每个客户端查看器可以不同地可视化接收到的数据(例如,给定在主应用程序中绘制的一条线,查看器 1 可能会执行相同的操作,而查看器 2 可能会应用一些过滤以显示不同。)。

对于这样的应用程序,Java 消息服务方法是一个不错的选择吗?主应用程序将发送消息中的更改,客户端将异步更新他们的视图。稍后我可能需要区分发出的数据类型,因此考虑使用 CAMEL 为不同的客户端设置不同的主题。如果这些都不是一个好的选择,那么有什么适合的技术呢?

如果稍后设计发生变化,以便每个客户端也发送更新并需要相应地更新,它们仍然是一个不错的选择吗?

如果主应用程序中的更新率/数量很大,这种方法会扩展吗?(例如,1024x768 像素或更高像素的更新速度为 60 帧/秒。-我可能可以计算帧差并仅发送更改。)

感谢您抽出宝贵时间,并对许多问题感到抱歉。如果我的任何假设也是错误的,请告诉我。

4

1 回答 1

0

While it is do-able, I doubt JMS and Camel would be the best fit for this type of distributed application.

JMS/Camel are good for enterprise integration scenarios where you want some level of decoupling between services and consumers. The decoupling usually comes with maintenance and performance overheads.

For the type of app you describe, it sounds like decoupling us not important so you might be better off looking at some distributed application environment where the clients and servers are implemented in the same language and you have rpc calls between them.

Depending on your language choice, distributed technologies you could consider are: distributed Java, distributed Ruby, Celluloid, HTML5+Websockets (e.g. check out meteor.com).

于 2012-04-19T07:32:02.543 回答