最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

PHP Laravel框架異步執(zhí)行的實現(xiàn)詳解

 更新時間:2022年07月19日 10:38:46   作者:lbb1022  
Laravel是一套簡潔、優(yōu)雅的PHP Web開發(fā)框架(PHP Web Framework)。它可以讓你從面條一樣雜亂的代碼中解脫出來;它可以幫你構(gòu)建一個完美的網(wǎng)絡(luò)APP,而且每行代碼都可以簡潔、富于表達力

Laravel 異步執(zhí)行任務(wù)

不影響當(dāng)前程序繼續(xù)執(zhí)行

描述:用戶操作時 要執(zhí)行計算量大且不影響主操作的任務(wù)時,可采用異步方式執(zhí)行。

隊列的目的是將耗時的任務(wù)延時處理,比如發(fā)送郵件,從而大幅度縮短 Web 請求和響應(yīng)的時間

大致操作

  • 生成要執(zhí)行的文件 php artisan make:job UploadTask
  • .env 中的 QUEUE_CONNECTION=sync 變?yōu)?QUEUE_CONNECTION=redis
  • UploadTask文件里寫入要執(zhí)行的任務(wù)
  • 啟動任務(wù)隊列 php artisan queue:work
  • 在觸發(fā)位置使用 dispatch(new UploadTask()); 開啟隊列

代碼粘貼

app/Jobs/UploadTask.php

<?php
namespace App\Jobs;
use Illuminate\Bus\Queueable;
use Illuminate\Queue\SerializesModels;
use Illuminate\Queue\InteractsWithQueue;
use Illuminate\Contracts\Queue\ShouldQueue;
use Illuminate\Foundation\Bus\Dispatchable;
use Illuminate\Support\Facades\Log;
class UploadTask implements ShouldQueue
{
    use Dispatchable, InteractsWithQueue, Queueable, SerializesModels;
    /**
     * Create a new job instance.
     *
     * @return void
     */
    public function __construct()
    {
        //因為要導(dǎo)入大文件 需要很久時間
    }
    /**
     * Execute the job.
     *
     * @return void
     */
    public function handle()
    {
        Log::info('UploadTask');
        $command = 'cd ' . base_path() . ' && php artisan ExcelFile ';
        $ret = shell_exec($command);
        Log::info('UploadTask-導(dǎo)入結(jié)束'.print_r($ret,true));
    }
}

啟動代碼摘取

 			$form->saved(function (Form $form) {
                dispatch(new UploadTask());
                return $form->redirect('yyImport','保存成功');
            });

其他操作

因為是個人的電腦 隨時會關(guān)機 queue就會被停掉 所以使用了windows的開機自啟執(zhí)行vbs

runReadExecelVbs.vbs

set ws = CreateObject("Wscript.Shell")
ws.run "cmd /c I:\yinyue\runReadExecel.bat",vbhide

runReadExecel.bat

cd I:\yinyue
php artisan queue:work

到此這篇關(guān)于PHP Laravel框架異步執(zhí)行的實現(xiàn)詳解的文章就介紹到這了,更多相關(guān)PHP Laravel異步執(zhí)行內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!

相關(guān)文章

  • PHP中l(wèi)ist方法用法示例

    PHP中l(wèi)ist方法用法示例

    這篇文章主要介紹了PHP中l(wèi)ist方法用法,結(jié)合實例形式分析了list方法實現(xiàn)將數(shù)組值賦給變量的相關(guān)操作技巧與注意事項,需要的朋友可以參考下
    2016-12-12
  • 百度工程師講PHP函數(shù)的實現(xiàn)原理及性能分析(三)

    百度工程師講PHP函數(shù)的實現(xiàn)原理及性能分析(三)

    這篇文章主要介紹了百度工程師講PHP函數(shù)的實現(xiàn)原理及性能分析(三),本文講解了常用php函數(shù)實現(xiàn)及介紹,并作了總結(jié)及建議,需要的朋友可以參考下
    2015-05-05
  • PHP使用WebDriver實現(xiàn)音頻文件的自動下載與保存

    PHP使用WebDriver實現(xiàn)音頻文件的自動下載與保存

    WebDriver是一個用于自動化瀏覽器操作的開源工具,它提供了一套統(tǒng)一的API,可以與各種瀏覽器進行交互,模擬用戶的操作行為,下面我們就來看看PHP如何使用WebDriver實現(xiàn)音頻文件的自動下載與保存吧
    2024-04-04
  • PHP通過文件保存和更新信息的方法分析

    PHP通過文件保存和更新信息的方法分析

    這篇文章主要介紹了PHP通過文件保存和更新信息的方法,結(jié)合實例形式分析了php基于文件的信息保存相關(guān)操作技巧,需要的朋友可以參考下
    2019-09-09
  • php實現(xiàn)singleton()單例模式實例

    php實現(xiàn)singleton()單例模式實例

    這篇文章主要介紹了php實現(xiàn)singleton()單例模式的方法,以實例形式簡單講述了單例模式的實現(xiàn)過程,需要的朋友可以參考下
    2014-11-11
  • 詳解PHP數(shù)組賦值方法

    詳解PHP數(shù)組賦值方法

    這篇文章主要介紹了詳解PHP數(shù)組賦值方法,文章就怎樣創(chuàng)建數(shù)組、怎樣給PHP數(shù)組賦值,文章都做了詳細的介紹和講解,希望對大家有幫助。
    2015-11-11
  • php獲取本周星期一具體日期的方法

    php獲取本周星期一具體日期的方法

    這篇文章主要介紹了php獲取本周星期一具體日期的方法,涉及php針對日期的操作技巧,非常具有實用價值,感興趣的朋友可將該代碼片段整合進自己的日期類中以方便日后調(diào)用,需要的朋友可以參考下
    2015-04-04
  • PHP連接sql server 2005環(huán)境配置及問題解決

    PHP連接sql server 2005環(huán)境配置及問題解決

    這篇文章主要介紹了PHP連接sql server 2005環(huán)境配置及問題解決,需要的朋友可以參考下
    2014-08-08
  • 實例解析PHP定時器的具體實現(xiàn)

    實例解析PHP定時器的具體實現(xiàn)

    我們在開發(fā)中常會需要程序定時的執(zhí)行一些操作,這時寫一個簡潔高效的定時器就非常有必要,關(guān)于定時器本文將給大家詳細的介紹,對大家的學(xué)習(xí)或工作具有一定的參考借鑒價值
    2021-09-09
  • 使用PHP實現(xiàn)二分查找算法代碼分享

    使用PHP實現(xiàn)二分查找算法代碼分享

    二分查找又稱折半查找,它是一種效率較高的查找方法。
    2011-06-06

最新評論

沛县| 贵州省| 临城县| 大渡口区| 磴口县| 筠连县| 临泽县| 温泉县| 河北省| 阳山县| 仪征市| 和平区| 延吉市| 尼勒克县| 遂平县| 姚安县| 当阳市| 灌阳县| 华容县| 宁阳县| 洞头县| 嫩江县| 滨海县| 民丰县| 缙云县| 汉寿县| 旬邑县| 宁津县| 临沭县| 大足县| 驻马店市| 成武县| 武平县| 志丹县| 中卫市| 泊头市| 阳曲县| 嵊泗县| 调兵山市| 南华县| 泽州县|