首頁  >  文章  >  php框架  >  laravel框架中Job與事件event的解析

laravel框架中Job與事件event的解析

不言
不言原創
2018-08-25 17:29:503029瀏覽

本篇文章帶給大家的內容是關於laravel框架中Job和事件event的解析,有一定的參考價值,有需要的朋友可以參考一下,希望對你有幫助。

在做專案的時候,一直對JobEvent有個疑惑。感覺兩者是相同的東西,搞不清楚兩者的差別在哪裡!經過一段時間的琢磨和查找了相關的資料,對JobEvent做了一些總結,以便記憶。

Job

Job既可以用作同步,也可以用作非同步。
如果你想延遲執行一個操作,或是這個過程需要花一段時間,那麼就可以選擇用Job#,例如上傳一個比較大的檔案。
Job一般用在正在處理的事情。例如我們去銀行辦理業務,很多人排隊等待,我們可以把這條隊看成一個隊列queue,把每一個人看成一個Job,服務人員會幫我們一個接一個的處理業務。辦完了一個業務,系統會叫號叫到下一個人,執行下一個Job。每個人需要辦理的業務都不一樣,這就是每個Job需要完成的任務。

Event

事件監聽可以允許參與不同的角色。事件監聽可以認為是特定事件發生的一個Job,一旦事件創建,監聽器就會觸發。事件可以理解成“當...”,“就...”。一個事件可以被多個監聽器監聽,例如登入後,系統既要發送郵件,又要發送短信,這個時候,就可以建立一個登入事件,事件觸發後,同事被發送郵件和發送短信監聽到。

Job可以不間斷的執行,類似我們要在每晚凌晨執行一個腳本。

總結來說

Job專注於與正在做的事情:

  • 正在註冊

  • #正在更新

  • 正在發布

  • #批次發放

Event關注與做過的事情:

  • 註冊完成

  • 更新完成

#發佈完成

發送完成

Event 更多的用在已經完成的事情,類似於英文的過去式

###相關推薦:#########深入解析PHP的Laravel框架中的event事件操作,laravelevent###############Laravel 5框架學習之路由、控制器與視圖簡介,laravel框架######

以上是laravel框架中Job與事件event的解析的詳細內容。更多資訊請關注PHP中文網其他相關文章!

陳述:
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn