游戏服务端之使用JMX监控游戏进程

游戏服务器运行过程中,我们希望能够对游戏里各种资源进行监控。比如,查看在线玩家总人数,查看内存使用情况,统计请求消息数量等等。这种问题归结起来就是,我们希望查看游戏进程的内存数据。

前边有一篇文章 (查看生产环境的内存数据),介绍如果通过加载类文件或使用javascript脚本查看内存数据。但这篇文章并没有介绍如何让游戏进程执行我们外部的代码,这属于跨进程通信的范畴,总体来说也是比较复杂的。

现在,我打算介绍另外一种黑科技,让监控游戏服务器更加方便快捷。

我们使用的工具叫做JMX(Java Management Extentesions),简单来说,就是对运行中的服务器进行各种资源监控的工具。

有了JMX,我们可以轻易查看游戏进程里的各种资源,甚至触发各种管理接口。

我们直奔主题,来点干货吧。

1.使用JMX工具,我们首先需要定义一个接口,该接口必须以MBean词尾

定义MBean接口(ControllerMBean.java)

package com.kingston.jmx;public interface ControllerMBean {/*** 统计在线玩家总数* @return*/int getOnlinePlayerSum();/*** 统计内存使用情况* @return*/String getMemoryInfo();/*** 执行指定脚本 * @param scriptId*/void exceScr


本文来自互联网用户投稿,文章观点仅代表作者本人,不代表本站立场,不承担相关法律责任。如若转载,请注明出处。 如若内容造成侵权/违法违规/事实不符,请点击【内容举报】进行投诉反馈!

相关文章

立即
投稿

微信公众账号

微信扫一扫加关注

返回
顶部