共享资源的Java Web应用程序的多个实例

Dav*_*ner 1 java spring weblogic java-ee

我有一个Web服务,它接受输入xml消息,转换它,然后将其转发到另一个Web服务.

该应用程序部署到两个Web逻辑应用程序服务器,以实现性能和弹性.

我想要一个允许两件事的网站监控页面

  • 能够停止/开始转发消息

  • 能够监控过去一小时内的消息数量等.进入Web服务等的不同发送者的数量.

我想知道实现这个的最佳方法是什么.

我目前的想法是让内存数据库(例如Debry或HSQL)复制数据,以便在应用程序服务器的不同实例中运行的应用程序的两个(或更多)实例之间共享信息.我想我必须设置某种主/从配置.

我希望链接到一篇讨论如何解决这个问题的文章.

(注意,这是一个使用spring MVC的简单弹簧应用程序)

谢谢,

大卫.

too*_*kit 5

这听起来像是Java Management Extensions(JMX)的一个很好的匹配

  • JMX允许您公开某些操作(例如:启动/停止转发消息)
  • JMX允许您监控某些性能指标(例如:处理的消息的移动平均值)

Spring很好地支持将bean暴露为JMX MBean.有关更多信息,请参见此处

然后,您可以使用基于Web的开源JMX控制台,例如jManage

希望这可以帮助.