我在我的项目中使用JBoss EAP6.2。我已经将无状态bean (slsb-strict-max- pool )的池大小配置为x。我可以在线程转储中看到一些线程在等待一些池化实例。
现在我想在运行时监控每个@Stateless bean使用的池大小。那么有没有办法通过一些MXBean来访问这些信息呢?所以我可以在某个地方显示@Stateless bean已经分配了y个池化的实例?
谢谢,Rokko
发布于 2019-03-27 22:45:40
好吧,如果你已经分析过线程转储,我想你应该了解jboss-cli。它显示了EJB组件的运行时指标。例如:
/deployment=ProjectEAR.ear/subdeployment=ProjectWAR.war/subsystem=ejb3/stateless-session-bean=StatelessEJBName :read-resource(include-runtime=true, recursive=true)
{
"outcome" => "success",
"result" => {
"component-class-name" => "StatelessEJBName",
"declared-roles" => [],
"execution-time" => 0L,
"invocations" => 0L,
"methods" => {},
"peak-concurrent-invocations" => 0L,
"pool-available-count" => 20,
"pool-create-count" => 1,
"pool-current-size" => 1,
"pool-max-size" => 20,
"pool-name" => "slsb-strict-max-pool",
"pool-remove-count" => 0,
"run-as-role" => undefined,
"security-domain" => "other",
"timers" => [],
"wait-time" => 0L,
"service" => undefined
} }还不是很清楚,您是想只获取运行时EJB统计信息,还是从应用程序中以编程方式获取EJB统计信息?
https://stackoverflow.com/questions/55378653
复制相似问题