使用JMX监控游戏服务器

游戏服务器运行过程中,我们希望能够对游戏里各种资源进行监控。比如,查看在线玩家总人数,查看内存使用情况,统计请求消息数量等等。这种问题归结起来就是,我们希望查看游戏进程的内存数据。本文将介绍一种黑科技(JMX),让监控游戏服务器更加方便快捷。...
阅读(344) 评论(0)

hashmap死循环示例及检测方法

hashmap属于线程不安全容器,在并发环境有可能发生死循环。本文将模拟死循环出现的场景,再结合jstack说明如何一步步定位出现死循环的代码。...
阅读(3847) 评论(0)

查看生产环境的内存数据

维护生产环境项目的时候,在排查问题的过程中,有时强烈希望查看内存中的一些数据,却苦于没有办法将这些值输入到终端或日志中。 本文将使用动态执行脚本和使用自定义类加载器执行临时代码两种方式查看远程内存数据。...
阅读(3753) 评论(0)

hotswapagent——热更新代码而无需重启生产环境

使用jdk1.4+的instrumcent机制热更新代码,只能修改方法体。采用JRebel插件虽然可以动态增加方法和属性,但JRebel本身是收费软件。本文将介绍如果使用开源插件HotswapAgent+DCEVM,实现代码热更新。...
阅读(12712) 评论(0)

手游服务端代码热部署

采用jdk6的Instrumentation接口,动态改变已加载到JVM的类文件的方法体定义,实现在不重启应用的情况下,修改文件源代码...
阅读(2759) 评论(0)

线程死锁检测方法

当多条线程以不同的顺序抢占同步资源的时候,就有可能发生死锁。可通过jstack分析堆栈信息或者采用JConsole工具来帮助我们快速找到发生死锁的根源。...
阅读(4204) 评论(2)
    个人资料
    • 访问:101431次
    • 积分:1421
    • 等级:
    • 排名:千里之外
    • 原创:41篇
    • 转载:0篇
    • 译文:0篇
    • 评论:27条
    博客专栏
    最新评论