V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
derpc
V2EX  ›  PHP

WeCenter 的计划任务是怎么实现的?

  •  
  •   derpc · 2016-12-20 18:05:59 +08:00 · 2432 次点击
    这是一个创建于 2928 天前的主题,其中的信息可能已经有所发展或是发生改变。
    在学 php ,拿 WeCenter 进行研究。
    很好奇他们计划任务怎么做的,貌似并没有依赖外部的服务。
    研究了下发现 app/crond/main.php 用来管理控制定时任务,但并没有找到是在什么时机触发它允许的。
    有人能来讲讲工作原理么?非常感激
    7 条回复    2016-12-20 22:25:44 +08:00
    isCyan
        1
    isCyan  
       2016-12-20 18:15:05 +08:00   ❤️ 1
    就那么几种,系统的 crontab ,或者用户每访问一次就执行一次任务
    giuem
        2
    giuem  
       2016-12-20 18:39:20 +08:00 via iPhone   ❤️ 1
    几种实现计划任务的方法 https://segmentfault.com/a/1190000002955509
    derpc
        3
    derpc  
    OP
       2016-12-20 19:20:28 +08:00
    @isCyan
    @giuem 并没有发现 WeCenter 调用 linux 系统服务,所以很好奇他们怎么实现的。用户访问去触发的话很不规律啊。但看 wecenter 后台,能够很精确的控制任务的执行频率
    shiny
        4
    shiny  
       2016-12-20 19:32:36 +08:00 via iPhone   ❤️ 1
    很久以前看 dz 的源码,计划任务是用户触发后 ignore user abort 同时设置不超时,就常驻后台运行了。几年前用过这个原理写过一个说说的爬虫,找出过周围同昵称的美女。好用。
    baocaixiong
        5
    baocaixiong  
       2016-12-20 19:44:46 +08:00   ❤️ 1
    好像是:
    用户访问时,随机调用 cron 接口实现的😂😂
    derpc
        6
    derpc  
    OP
       2016-12-20 20:21:58 +08:00
    @baocaixiong 找到了, PC 端页面模板中有一端 js ,通过建立 img 标签去请求 crond/main.php
    谢谢大家
    johnnie502
        7
    johnnie502  
       2016-12-20 22:25:44 +08:00
    这不还是靠用户访问去触发
    关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   实用小工具   ·   5672 人在线   最高记录 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 29ms · UTC 03:07 · PVG 11:07 · LAX 19:07 · JFK 22:07
    Developed with CodeLauncher
    ♥ Do have faith in what you're doing.