Run项目架构

Run是一个命令行工具,没有复杂的CS或BS架构,只是通过解析命令行或者配置文件来下载运行相应的脚本。

Flock

Run使用了前面提到的进程文件锁,避免同时运行同一个脚本。同时运行同一个脚本会有什么问题呢?例如我们run pt-summary,同时另一个终端执行run -u pt-summary,这样前一个命令可能使用旧脚本也可能使用新脚本,这是我们要规避的问题。