更新日志
继承指定文件夹里的模块 -- 2017-05-11
新增LOAD_TYPE,可以动态加载包,不需要每次都重启ppython服务 -- 2017-09-22
新增日志记录,脚本控制启动/重启/停止,支持supervisor管理ppython进程 -- 2019-03-29
优化日志记录方式,新增ipv 6 支持,且不再将python部分放入项目代码库,应单独管理 -- 2019-04-03
更新使用说明,明确表示ppython没问题,不会导致请求发送两次。
终于将内奸揪了出来
1. 如果在调用ppython时,最后PHP有打印形式的输出,则对应的python脚本会被执行两遍,这也是为什么日志打印两遍的原因,目前未找到解决方法。
导致请求两次的内奸终于找到了: 原来是chrome上的jsonView jsonViewer json formatter 格式化插件导致get请求会发送两次ಥ_ಥ。停用该插件即可!
令人惊喜的更新
利用ppython.sh 来替换screen或tmux
请注意:这种方式和supervisor互斥
# 开启ppython服务
sh ppython/ppython.sh
# 停止ppython服务
sh ppython/ppython.sh stop
所有重要信息都会被记录在日志里 ppython/log/python/all.log ,默认按天进行分割,保留最近10天日志,追错/排查不再抓瞎
强烈建议使用supervisor来管理你的ppython服务
supervisor简介
C/S架构的进程控制系统,可使用户在类UNIX系统中监控、管理进程。常用于管理与某个用户或项目相关的进程。 官网地址:http://www.supervisord.org
组成部分
supervisord:服务守护进程 supervisorctl:命令行客户端 Web Server:提供与supervisorctl功能相当的WEB操作界面 XML-RPC Interface:XML-RPC接口
使用方法
安装supervisor # 注意,supervisor不支持python3,如果你默认是python3请使用pip2 isntall supervisor来安装
pip install supervisor
修改配置文件
①在supervisor/supervisord.conf搜索 /Users/liuzhen20/work/2019/php-python/ppython/ ,然后将这几处替换成你的ppython所在位置
②修改supervisor/supervisord.conf第22~25行 [inet_http_server] ; inet (TCP) server disabled by default
port=127.0.0.1:8886 ; 这里改为你的IP地址和端口
username=admin ; 默认用户名
password=admin2019 ; 默认密码
③在supervisor/ppython.ini搜索 /Users/liuzhen20/work/2019/php-python/ppython/ ,然后将这几处替换成你的ppython所在位置
启动服务 sh ppython/supervisord/super_update.sh
访问服务
Enjoy it!
一、ppython 简述
本类库基于年久已不再维护的ppython改写,为了表达对它的敬意,我决定沿用原名称。
站在巨人的肩膀上