swoole的热更新实现

使用swoole_http_server替代php-fpm后,由于php长驻内存,修改了代码不能实时调试,需要去手动去重启服务,很是不方便,参考了持续的思考的文章swoole之代码热更新实现之后,决定使用inotify来监控文件状态的改变,来给swoole发送reload信号,来实现swoole的热更新。

如何安装inotify就不写了,安装之后可以建立一个脚本文件,如php_reload.sh:

#!/bin/sh
# src 需要监控的地址
src=/home/server/Project/test/app/
/usr/bin/inotifywait -rmq -e create,modify,delete $src | while read event
  do
        /home/server/Project/test/bin/httpserver reload
  done

配合上一篇的脚本使用非常方便,现在可以实时的修改脚本并查看结果了。

标签: none

仅有一条评论

  1. qai41

    其实不用这么麻烦,简单封装下部署工具就可以了, 你部署工具部署完成代码后, 直接发信号给swoole就可以了

添加新评论