私は私の特性にこのような機能を持っています。どのように私はすべてのカップを同時にプレイすることができますか?Laravel同時発射機能は
0
A
答えて
1
ほとんどの場合、PHPは「同期」しているため、理論的にはどの関数にも「同時呼び出し」できません。
ただし、この作業を行うための回避策があります。
PHPはスクリプト言語です。つまり、あなたのコンソールでこれを起動したとき:
php -r "echo 'Hello World';"
A PHP プロセスが起動され、この過程で起こるものを同期的に実行されます。
ここでの解決策は、複数のPHPプロセスを起動して同時に機能を実行できるようにすることです。
同時に実行するすべての機能を配置するSQLテーブルを想像してください。その後、実際には「同時に」動作する10個のPHPプロセスを実行できます。
Laravelは、この問題を解決するソリューションを提供します。 @Anton Gildebrandがコメントで述べたように、それは「キュー」と呼ばれています。
あなたがここにドキュメントを見つけることができます。それを行うのhttps://laravel.com/docs/5.5/queues
laravelの道を、「ジョブ」を作成することです。各ジョブは、実行したい機能を表します。ここであなたの仕事はcupPlay
になります。ここで
は、ドキュメントから貼り付け作業コピーの基本的な例である:
<?php
namespace App\Jobs;
use App\Podcast;
use App\AudioProcessor;
use Illuminate\Bus\Queueable;
use Illuminate\Queue\SerializesModels;
use Illuminate\Queue\InteractsWithQueue;
use Illuminate\Contracts\Queue\ShouldQueue;
use Illuminate\Foundation\Bus\Dispatchable;
class ProcessPodcast implements ShouldQueue
{
use Dispatchable, InteractsWithQueue, Queueable, SerializesModels;
protected $podcast;
/**
* Create a new job instance.
*
* @param Podcast $podcast
* @return void
*/
public function __construct(Podcast $podcast)
{
$this->podcast = $podcast;
}
/**
* Execute the job.
*
* @param AudioProcessor $processor
* @return void
*/
public function handle(AudioProcessor $processor)
{
// Process uploaded podcast...
}
}
あなたのキューを実行するために、あなたの労働者のドライバを設定しているだろうときに、あなただけ起動する必要があります:
コマンドラインからphp artisan queue:work --queue=high,default
を入力すると、タスクが実行されます。
そして、あなたが望むよう、あなたのニーズに応じて、できるだけ多くの労働者を実行することができます...
私はこのことができます願っています!
関連する問題
- 1. lodash debounce非発射機能
- 2. xcode 8 swift 3スローダウン機能の「発射」時間
- 3. Laravelの反射はどのように機能しますか?
- 4. Aurelia-注射機能
- 5. コレクションのモデル発射時のバックボーンイベント(二重発射)
- 6. 同時に.replace機能
- 7. ASP.NET開発サーバーの同時処理が機能しない
- 8. 2同じ機能で射撃を返しますか?
- 9. 減速機が発射しない
- 10. カスタムクエリ機能laravel
- 11. 注射がTypescriptで機能しない
- 12. jQuery同時に2つの機能
- 13. 即時非同期機能の遅延
- 14. 即時の同じテキストのフィールド機能
- 15. TDD Laravel - laravelとspatie/laravel-activitylogの機能テストでJSONのエンコーディングエラーが発生する
- 16. Laravel 5.4時には検証ルールが機能しない
- 17. は一度発射トリガーは
- 18. Bukkit - トラック発射
- 19. Laravel 5.0機能テストデータベース
- 20. Laravelのlink_to_route機能
- 21. 権限とキャプチャ機能が発射されないmagentoカスタム決済ゲートウェイ
- 22. ジャンプ/クリックのためのjQuery/jQuery UIスライダーイベント。機能が発射されない
- 23. ページへのイオン経路の後に発射機能を維持しますか?
- 24. "dragend"イベントリスナーはロード時にのみ発射する(一度)Google Maps
- 25. Laravelの集計注射
- 26. Laravel JWTリフレッシュトークンミドルウェアと同時リクエスト
- 27. Postgresのアドバイザリロック機能で同時実行が可能
- 28. 、同じ機能
- 29. カントリー発射Gitblit GO
- 30. ストップ発射アヤックスが
Laravel Queuesをご覧ください。 –