Files
loan-pricing/doc/implementation-report-2026-04-09-start-script-ps-ef.md

1.3 KiB

启动脚本进程判断改为 ps -ef 实施记录

修改内容

  • bin/prod/restart_java.sh 中的后端进程收集逻辑由 pgrep -f 改为 ps -ef | awk
  • bin/restart_java_backend.sh 中的后端进程收集逻辑由 pgrep -f 改为 ps -ef | awk
  • 删除 bin/restart_java_backend.sh 中对 pgrep 命令的依赖校验
  • 更新 bin/prod/restart_java_test.sh,补充 ps -ef / pgrep 约束校验,并修正测试夹具中的 JDK 目录
  • 新增 bin/restart_java_backend_test.sh,校验本地后端重启脚本已改用 ps -ef

实现说明

  • 两份脚本都只在 ps -ef 结果中匹配同时满足“包含脚本标记参数”和“-jar 指向目标 jar”这两个条件的 Java 进程
  • 进程筛选时继续忽略 <defunct> 记录,避免误判僵尸进程
  • 现有 PID 文件校验逻辑保持不变,本次只收敛“扫描当前是否已有进程”的实现方式

路径检查

  • 已确认本次实施记录保存路径为 doc/implementation-report-2026-04-09-start-script-ps-ef.md

验证结果

  • 已执行 sh bin/prod/restart_java_test.sh
  • 已执行 sh bin/restart_java_backend_test.sh
  • 已执行 sh -n bin/prod/restart_java.sh && sh -n bin/restart_java_backend.sh
  • 已确认测试中拉起的假 Java 进程在脚本收尾阶段自动停止并清理