4
背景
- 项目是一个Java实现的长连接有状态的服务器程序(比如游戏服务器端)
- 线上出现问题时,通常需要一种排查方式或者解决办法
- 输入一段代码,编译,加载,执行
- 代码段可以输入项目任何项目的公共api调用,然后输出内存数据排查
- 调试环境下,类似ide debug下可以执行一段表达式代码,然后execute
- 之前的线上环境,我们是直接用了如beanshell脚本,直接编写beanshell脚本,调用已有api获取数据,然后动态执行
想问一下arthas是否提供类似功能
思路- 其实之前自己实现也比较简单。服务器端提供一个解析脚本接口,输入是.java(或者源文件字符串)。服务器端收到后,动态编译、加载、执行。
- 不过如果arthas直接支持就更好了