gpt4 book ai didi

java - 小型 Java Web 服务器和 JMX

转载 作者:行者123 更新时间:2023-12-01 05:20:59 26 4
gpt4 key购买 nike

我在理解如何将 JMX 代理链接到我的 TJWS(微型 Java Web 服务器)时遇到了一些困难

The web server is instrumented with dynamic MBeans that expose their management interfaces (attributes and operations) at runtime. We identified a set of components as being part of TJWS and we created for each of them a corresponding MBean. ThreadPool or HTTP Session are such types of components. When created, the corresponding MBeans receive a reference to these components through their constructor. When created, the corresponding MBeans receive a reference to these components through their constructor. For each component we chose a set of significant attributes to be monitored

那么这是否意味着我必须修改服务器代码,以便它在组件创建事件上创建 MBean?或者还有别的意思吗? :)

如果有人能指出我正确的方向,我将不胜感激

最佳答案

我看了你发给我的链接。我只能阅读前三页(无需付费)。但是,TJWS 的文档没有提及任何有关 JMX 或 MBean 的内容,因此我认为该论文的作者一定已经自己实现了 JMX Hook 。

话虽如此,所概述的三个模型中的每一个都引用了“托管应用程序”,这意味着应用程序本身应该提供“ Hook ”来公开管理接口(interface)。 (以下内容主要是我的猜测,因为论文的可访问部分在描述开始时就结束了......)

守护进程模型MBeanServer 及其 MBean 对于托管应用程序来说是远程的,因此应用程序需要提供一种远程调用公开的管理功能的方法。这可以是 RMI、REST、WebServices 等。

组件模型与守护进程模型相同,但公开的函数可以在本地调用,不需要远程处理。

驱动程序模型与组件模型相同。

说实话,除非这是一项学术练习,否则我会坚持使用简化的组件模型,其中现有的 TJWS 组件被检测并实现 MBean 接口(interface)。例如,您的 ThreadPools 将实现 MBean 接口(interface)并提供 JMX 属性,例如 MaxThreadCountActiveThreadCount。然后这些MBean应该注册到本地VM的平台MBeanServer中。 (假设Java 1.5+)

MBeanServer 的远程处理和联合将得到处理,因为远程处理内置于 JVM 中(RMI、IIOP、WebServices 和 REST 均可用),并且联合可以使用 OpenDMK 实现。 .

关于java - 小型 Java Web 服务器和 JMX,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10433157/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com