Configuração de tarefa de tempo de download assíncrono

as tarefas de cronometragem do linux usam cronb para executar o script bash.sh em 3 segundos

Uma frase de index.php Task executada escrita no script bash.sh. Você pode acionar o método de execução do controlador de tarefas. O código-fonte do arquivo de entrada de tp3.2 é escrito em index.php

Aqui é para executar o arquivo php diretamente, mas não através do apache, então não haverá processamento de tempo limite


Desenvolva tarefas demoradas para exportar produtos. Porque as estatísticas são mais demoradas.

Código do arquivo de exportação

Crie um controlador ExportLogic e escreva um método orderExp: ele grava estatísticas do banco de dados e baixa o código exel.
Insira a descrição da imagem aqui

Quando o usuário clica em exportar, a tarefa é entregue e salta para o centro de download

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

E escrever dados na tabela de registro de download.
Insira a descrição da imagem aqui

Crie um novo controlador de tarefas da seguinte maneira:
Insira a descrição da imagem aqui
Insira a descrição da imagem aqui

Os registros são produzidos na fila no redis e, quando os registros são produzidos, func executa o método exportXlsx para exportXlsx. Este controlador de tarefa é escrito para chamar o método orderExpAsnyTask no método Task. Em seguida, o método orderExpAsnyTask chama o método orderExp do controlador ExportLogic.

Acho que você gosta

Origin blog.csdn.net/minihuabei/article/details/111314866
Recomendado
Clasificación