异步下载-定时任务配置

linux 定时任务 使用cronb写的3秒执行 bash.sh脚本

bash.sh脚本里写的 index.php Task run 什么的一句话。可以触发Task控制器的run方法。index.php里写的是tp3.2的入口文件的源代码

这里直接是运行php文件,而没有通过apache,所以不会出现超时处理


开发 导出excle的耗时任务。因为有统计比较耗时。

导出文件代码

创建一个ExportLogic控制器,里面写一个orderExp方法:里面写从数据库里统计到数据,下载exel代码。
在这里插入图片描述

当 用户点击导出,投递任务,并跳转到下载中心

        $this->getWxRedis()->lpush('k8s_queue',serialize([
            'type' => 'func_job',
            'func' => 'orderExpAsnyTask',
            'data' => [
                'userid'=>1,
            ]
        ]));

并往下载记录表里写数据。
在这里插入图片描述

新建一个Task控制器,如下:
在这里插入图片描述
在这里插入图片描述

从redis里队列里出记录,当出来的记录是func为exportXlsx去执行exportXlsx方法 。这个任务控制器写的是调用Task方法里的orderExpAsnyTask方法。然后orderExpAsnyTask方法调ExportLogic控制器的orderExp方法。

猜你喜欢

转载自blog.csdn.net/minihuabei/article/details/111314866