多应用+插件架构,代码干净,二开方便,首家独创一键云编译技术,文档视频完善,免费商用码云13.8K 广告
该功能为定时分发节点 即 定时执行脚本,脚本内含更新分发节点的功能 该功能需要`MySQL5.7`以上的版本 该任务只针对`image`表内`is_valid`字段值为`0`的记录 原因:图片失效后图片会被设置`is_valid`字段值为`1` 失效的图片就没有执行分发的必要了 如果需要重置`is_valid`字段值,可以执行以下操作 * 后台缓存管理->刷新全部图片分发识别缓存 ### 开始 首先解释一下cron配置信息 配置文件地址:`根目录/.env` ![](https://img.kancloud.cn/3b/ac/3bac59ca4c0ebfa7d11ebf15511589d6_730x277.png) ``` #任务运行间隔时间 IMAGEUPDATE_TIME=30 #单次任务运行更新图片个数 IMAGEUPDATE_LIMIT=3 #节点标识 IMAGEUPDATE_API_TYPE=ali,toutiao ``` **实际操作时请去除注释** ### 配置好之后我们就可以开始了 1. 看一下这个图片的信息 ![](https://img.kancloud.cn/29/49/29499284d60485d871a7fb1551ef3019_1076x502.png) > 运行任务有两种模式 `web`和 `命令行`,推荐`命令行`模式 #### web * [ ] web端运行需要配置超级令牌鉴权,防止恶意请求 后台->其他->超级令牌 ![](https://img.kancloud.cn/58/f8/58f8e60c79cbd7e00434aff7baf39e52_709x569.png) > 访问地址`你的域名`+`cron/imageUpdate?token=`+`超级令牌` ![](https://img.kancloud.cn/16/12/1612967d4e047a36c791af2577564001_943x262.png) ![](https://img.kancloud.cn/6d/94/6d946966d4e64a208beb063f18456668_1098x593.png) #### 命令行 > 重新来张图片 ![](https://img.kancloud.cn/47/c1/47c199ff8c0199bf4a7c5ab84bba766b_1046x581.png) 进入网站目录 ![](https://img.kancloud.cn/df/7a/df7a26ab5ae17cad945e85974c79030a_513x95.png) 我使用`screen`演示 ``` #查看是否安装 screen screen -v #安装screen yum -y install screen ``` ![](https://img.kancloud.cn/92/6a/926a99651c61c72769a3c80bbc509589_640x280.png) * [ ] 执行任务运行命令 ``` php think ImageUpdate start ``` ![](https://img.kancloud.cn/18/1b/181b73cdf9121ed7f8fdfffb821293d2_543x88.png) ![](https://img.kancloud.cn/2f/75/2f75e714312934cc6084fe3ef817eb56_859x102.png) > 以上这种情况说明没有开启需要的函数 > 将`pcntl_`开头的禁用函数全部删除 ![](https://img.kancloud.cn/ea/6c/ea6cac51d396ae92129658788defd5ff_557x443.png) * [ ] 再次执行命令 ``` php think ImageUpdate start ``` ![](https://img.kancloud.cn/bf/61/bf61234f0f1afd005f229f012e47569c_600x308.png) ![](https://img.kancloud.cn/b4/03/b403f59a6c150b55a9d5c17ba09b86a3_1048x482.png) ### 日志查看 也可以打开`runtime/log/`目录查看运行日志 ![](https://img.kancloud.cn/94/99/9499a80314884b005b7ec61d5053f317_683x184.png) ### 说明 * 当前任务会根据`update_time`也就是更新时间来排序,每次更新后会更新`update_time` * 定时任务不会重复更新已有节点