4

我需要一些指导。我已经在我的 Web 应用程序中使用 eventbus 模式实现了 vert.x(1.3.1.final)。目前,我正在做的是每当在服务器上生成事件时,都会向与该唯一地址关联的客户端/客户端发送通知。一切都很好。

现在,在我的 Web 应用程序中,某些特定进程占用了 tomcat 的所有资源,而 tomcat 给出了 OutOfMemoryError。因此,我的团队决定将占用大量资源的进程与 Web 应用程序(即外部 tomcat)分开。

所以现在的要求是在同一服务器上的不同 JVM 上执行的两个 java 进程之间进行通信。

vert.x可以吗?关于使用它的进程间通信,我没有得到太多帮助。或者我将不得不使用其他方法,例如(使用 java 进程间通信的技术。)?就性能而言,最好的解决方案是什么。

4

2 回答 2

3

如果您使用 -cluster 启动每个进程并相应地设置端口,则同一服务器上的两个 vert.x 进程可以使用内置事件总线进行通信。请参阅分发中包含的示例。

您也可以考虑查看 vertx 2.x 而不是 1.3.1 ...

于 2013-11-20T14:08:29.713 回答
0

对于您的具体情况,我可以看到ZeroMQ将是最合适的。

您还可以使用Java 管理扩展 (JMX)通过简单的 Web 界面公开正在运行的进程中的方法。

于 2013-11-18T08:41:48.360 回答