ホームページ >PHPフレームワーク >Laravel >Laravelフレームワークでのジョブとイベントの分析

Laravelフレームワークでのジョブとイベントの分析

不言
不言オリジナル
2018-08-25 17:29:503070ブラウズ

この記事の内容は、laravel フレームワークでのジョブとイベントの分析に関するものです。必要な方は参考にしていただければ幸いです。

プロジェクトに取り組んでいたとき、私は常に ジョブイベント について疑問を抱いていました。同じような気がするけど、何が違うのかわからない!しばらく考えて関連情報を検索した後、覚えやすいように JobEvent の要約をいくつか作成しました。 JobEvent有个疑惑。感觉两者是相同的东西,搞不清楚两者的区别在哪里!经过一段时间的琢磨和查找了相关的资料,对JobEvent做了一些总结,以便记忆。

Job

Job既可以用作同步,也可以用作异步。
如果你想延迟执行一个操作,或者这个过程需要花费一段时间,那么就可以选择用Job,例如上传一个比较大的文件。
Job一般用在正在处理的事情。比如我们去银行办理业务,很多人排队等待,我们可以把这条队看成一个队列queue,把每一个人看成一个Job,服务人员会帮我们一个接一个的处理业务。办完了一个业务,系统会叫号叫到下一个人,执行下一个Job。每个人需要办理的业务都不一样,这就是每个Job需要完成的任务。

Event

事件监听可以允许参与不同的角色。事件监听可以认为是特定事件发生的一个Job,一旦事件创建,监听器就会触发。事件可以理解成“当...”,“就...”。 一个事件可以被多个监听器监听,比如登录后,系统既要发送邮件,又要发送短信,这个时候,就可以建立一个登录事件,事件触发后,同事被发送邮件和发送短信监听到。

Job可以不间断的执行,类似于我们要在每晚凌晨执行一个脚本。

总结来说

Job关注与正在做的事情:

  • 正在注册

  • 正在更新

  • 正在发布

  • 批量发放

Event关注与做过的事情:

  • 注册完成

  • 更新完成

  • 发布完成

  • 发送完成

Event

ジョブ

ジョブは同期と非同期の両方で使用できます。

操作の実行を遅らせたい場合、またはプロセスに時間がかかる場合は、比較的大きなファイルのアップロードなど、Job の使用を選択できます。

Job は通常、処理中のものに使用されます。たとえば、用事を処理するために銀行に行くとき、多くの人が列に並んで待っています。キューをキュー queue として、各人を Job として考えることができます。サービススタッフが次々と対応させていただきます。業務が完了すると、システムは次の人を呼び出し、次の Job を実行します。誰もが処理する必要がある業務は異なります。これは、各 Job が完了する必要があるタスクです。

イベント

イベント リスニングでは、さまざまなロールが参加できるようになります。イベント リスニングは、イベントが作成されるとリスナーが起動される、特定のイベントが発生する ジョブ として考えることができます。イベントは「いつ...」「ちょうど...」として理解できます。 たとえば、ログイン後、システムは電子メールとテキスト メッセージの両方を送信する必要があります。このとき、イベントがトリガーされた後、同僚の送信を監視できます。電子メールとテキストメッセージ。
ジョブ は、毎晩早朝にスクリプトを実行するのと同じように、中断することなく実行できます。

要約

ジョブ が何をしているのかに注意してください:

登録中

  • 🎜更新中🎜
  • 🎜公開中🎜
  • 🎜バッチで配布中🎜
  • 🎜イベント過去のイベントをフォローして実行する: 🎜
    • 🎜登録完了🎜
    • 🎜アップデート完了🎜
    • 🎜リリース完了🎜
    • 🎜送信完了🎜
    🎜Event は、英語の過去形と同様に、完了したものによく使用されます🎜🎜関連する推奨事項: 🎜🎜🎜詳細な分析PHP の Laravel フレームワークでのイベント操作、laravevent🎜🎜🎜🎜🎜Laravel 5 フレームワーク学習パス、コントローラーとビューの概要、laravel フレームワーク🎜🎜

    以上がLaravelフレームワークでのジョブとイベントの分析の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

    声明:
    この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。