> 백엔드 개발 > PHP 튜토리얼 > 为什么discuz这个功能计划任务功能不用事件调度呢?

为什么discuz这个功能计划任务功能不用事件调度呢?

WBOY
풀어 주다: 2016-07-06 13:53:56
원래의
990명이 탐색했습니다.

为什么discuz这个功能计划任务功能不用事件调度呢?

我到了指定时间观察数据库发现指定数据没有变化,也就是计划任务没执行,我听说打开页面才执行,我就服了 为什么这个团队不用事件调度呢?

回复内容:

为什么discuz这个功能计划任务功能不用事件调度呢?

我到了指定时间观察数据库发现指定数据没有变化,也就是计划任务没执行,我听说打开页面才执行,我就服了 为什么这个团队不用事件调度呢?

你这是两个问题:

  1. Discuz没执行计划任务

  2. Discuz的开发团队不用事件调度

第一个问题,应该说如果你的网站没有任何用户访问,那有可能确实不执行,毕竟Discuz的计划任务是触发执行的。至于如何解决,建议找一下类似这样的帖子,有可能是升级或者装插件导致的。

第二个问题,应该是Discuz的设计思路决定的,我猜它的设计思路是希望用最基本的php和mysql就能完成主要功能,所以设计的时候没有考虑用事件调度。

因为他要考虑用户使用的是空间

虚拟主机没有crontab权限,技术从来都是在限制条件下做权衡的。
这个功能我觉得可能是:
将配置写入一个随机命名的文件,然后php忽略用户关闭,死循环一直跑到点就执行,如果发现配置文件不存在了,就退出。

관련 라벨:
원천:php.cn
본 웹사이트의 성명
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.
인기 튜토리얼
더>
최신 다운로드
더>
웹 효과
웹사이트 소스 코드
웹사이트 자료
프론트엔드 템플릿