加载中

标签:Mods

MC性能监视器
起因是要给一个MC服务器的官网添加显示服务器状态的功能,于是写了一个Mod,用于监控TPS,MSPT和系统资源情况等。 实现思路 关于MTPS和TPS的实现参考了TabTPS,其对于MinecraftServer类的注入和状态机设计很好的实现了对于TPS和MSTP的高精度记录 至于系统资源的情况,由于Java没有实现固定的接口用于获取主机的内存情况,在这里使用了Oracle JDK提供的com.sun.management.OperatingSystemMXBean获取,按秒获得CPU,内存等的使用情况,随后每分钟计算平均发送给api服务器,同时提供接口发送这一秒的精确情况 在数据传输的协议上,MC服务器作为客户端连接到api服务器,使用WebSocket协议。 在线程管理上,为了防止干扰MC主线程的运行,所有数据利用volatile关键字保证可见性,由于数据只有一个线程写入,无需写入锁。用于传输监控数据的 SystemStats 类被设计为不可变对象,其所有字段均使用 final 修饰。配合 volatile...