workman 处理繁重任务

xflyhack

有这么一个需求,假设每天新产生用户10w,每天早上六点给这些用户发送激活邮件,用workman怎么进行多启动进程进行处理呢?有的人说 多开php进行 但是有demo了?workman 能批量启动n个任务做这件事么?

3238 2 0
2个回答

抽不完的寂寞

可以啊,开N个进程,每个进程onWorkerStart设置定时器

define('COUNT', 80);
$worker = new Worker();
$worker->count = 100;
$worker->onWorkerStart = function($worker){
    Timer::add(1, function(){
        // 不到6点不发邮件
        if(date('H:i:s') != '06:00:00') {
            return;
        }
        取数据发邮件....
    });
};
Worker::runAll();
  • 暂无评论
evilk

加队列吧

  • 暂无评论
年代过于久远,无法发表回答
🔝