Java:通过将应用程序升级到Web服务来衡量应用程序的性能

时间:2011-06-07 09:02:57

标签: java web-services performance monitoring

我有一个在某种程度上表现为服务器的应用程序。我有一些消费者(另一个应用程序)将任务发送到“服务器”应用程序并得到一些结果。该应用程序在Java中实现为控制台应用程序。问题是我需要测量应用程序的性能(如果可能的话,CPU,内存,吞吐量以及我可以获得的任何其他内容)。如果我将“服务器”作为控制台应用程序,我会遇到应用程序级别测量问题,这可能非常困难。我的想法是将控制台应用程序“升级”为Web服务,即创建某种类型的包装器,以便能够将“服务器”称为Web应用程序。我想那时监控部分会容易得多。

我想听听你的想法。这是一个好主意吗?如果我将其升级到Web服务,我可以获得更好的结果吗?我怎么做到这一点?此时我只想得到一些结果,代码可能很脏。该应用程序最初被设想为Web服务(或类似的东西),控制台应用程序只是一个模拟,因此创建Web服务而不是控制台应用程序并不是一件可怕的事情。

2 个答案:

答案 0 :(得分:3)

也许您可以使用JMX协议和JConsole连接到您的应用程序。使用JConsole,您将获得有关内存使用情况,CPU使用情况,线程等的详细信息。它还允许您通过MBean动态控制应用程序。

看看:http://download.oracle.com/javase/1.5.0/docs/guide/management/jconsole.html

答案 1 :(得分:0)

是的,最好将您的应用程序作为Web服务。它将使您的应用程序安全可靠,并且可以开箱即用。

您可以自己选择要应用的Web服务。我建议你去RestFul网络服务(JAX-RS)。您可以使用sl4j记录有关mem和cpu使用情况的所有信息。