帝云CMS(DiYunCMS)-免费开源可商用的PHP万能建站程序
任务队列的作用是将任务添加到队列中依次异步执行,防止程序堵塞卡顿,队列中的任务必须手动或配置自动执行才能正常进行任务。
![8f554fb9865446183d4ff7d6751d2845.png](https://img-blog.csdnimg.cn/img_convert/8f554fb9865446183d4ff7d6751d2845.png)
计划任务队列界面
如上图所示,可以看到当前待执行的任务,可以【删除队列】和【手动执行队列】任务。
手动执行效率低,我们可以设置自动执行任务,无需人工干预。
定时任务执行方案配置方法
1、Linux系统
wget "http://你的网站/index.php?s=api&c=run"
或者
curl "http://你的网站/index.php?s=api&c=run"
如果是宝塔面版,可以添加计划任务--》访问URL--》5分钟执行一次,如下图所示:
![878830b3af661b5d2ba20cc5a06dd8dd.png](https://img-blog.csdnimg.cn/img_convert/878830b3af661b5d2ba20cc5a06dd8dd.png)
宝塔面版设置自动执行计划
2、Windows系统
wondws服务器需要你手动安装curl工具,并创建bat设置为定时计划
curl "http://你的网站/index.php?s=api&c=run"
重要提示:如果你网站域名启用了CDN,那么就不能使用CDN域名来执行自动任务,需要重新绑定一个没有CDN的域名。
3、虚拟主机只能放在模板的公共页面(如footer.html、header.html等等),当有人访问网站时就触发任务执行
{if !is_file(WRITEPATH.'config/run_lock.php')}
{/if}
如果执行完成时,任务队列仍然没有被执行,可以把url改成:
"/index.php?s=api&c=run&is_ajax=1&is_cdn=1&num=5"
![08610c1feb7277835654a6319201a894.png](https://img-blog.csdnimg.cn/img_convert/08610c1feb7277835654a6319201a894.png)