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

标签 java web-services performance monitoring

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

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

最佳答案

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

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

关于Java:通过将应用程序升级为 Web 服务来测量应用程序的性能,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6262938/

相关文章:

Java/JPA - 动态设置对象/实体的属性

java - 如何为 Java InputStream 元素发送 EOF?

javascript - 从 JavaScript Web 服务客户端发送 CORS POST 请求返回 http 405 错误

android - Android 中共享首选项的最佳替代方案是什么?

java - Apache POI 依赖项

java - 如何使基本身份验证作为 Angular JS/Spring 启动应用程序中的 keycloak 的替代方案

web-services - 您如何向非技术人员解释 'Web Services' 这个术语?

.net - 如何测试涉及数据库和 Exchange 服务器访问的类(class)?

c# - 什么是最快的 sql 实现,如 'x%' 在 c# 集合中的键

performance - 在Retina iPad上使用CoreGraphics绘制图像的速度很慢