解决windows 10下java应用找不到pid

arthas, jps, jconsole等工具会从hsperfdata获取已经启动的java应用信息。如果对应的目录没有访问权限,就会找不到对应的pid。目录路径在临时目录java.io.tmpdir下面的hsperfdata_%USER%,Windows 10默认用户没有读写权限。Windows 10默认临时目录<user>\AppData\Local\Temp\

使用arthas直接操作redis

容器化部署和生产环境隔离,不能直接访问中间件数据。使用arthas的tt命令找到一个中间件客户端的实例,然后通过`tt -i <index> -w 'target.xxx()'`直接访问中间件。

stateless4j踩坑经历

stateless4j是一个轻量级的java状态机框架,但是太久没有更新,master分支代码和maven repository上的版本有差异。建议使用master分支代码打包一份jar,上传到私服。

设计模式系列:状态模式

状态模式适合的场景:一个对象在其内部状改变时改变它的行为;有大量判断状态的代码。状态模式处理的核心问题是状态迁移路径。在实践中,先列出系统的各个状态,再画出转换路径。

sd项目重构实践

项目快速迭代之后需要重构。首先面临的是服务级别的拆分重构,其次是优化领域模型。在代码级别重构,使用工厂模式、策略模式、更新协议字段、控制单个方法大小等方法。

一次young gc频繁的优化过程

压测遇到频繁young gc 频繁问题。使用jstat -gcutil查看内存分区使用状况。计算cms收集器新生代大小遇到了问题。扩大新生代空间,减少young gc次数,单次gc耗时增加很少。