Rumah  >  Artikel  >  rangka kerja php  >  Pembangunan Laravel: Bagaimana untuk menguruskan baris gilir menggunakan Laravel Horizon dan IronMQ?

Pembangunan Laravel: Bagaimana untuk menguruskan baris gilir menggunakan Laravel Horizon dan IronMQ?

王林
王林asal
2023-06-17 11:00:001734semak imbas

Dengan perkembangan perniagaan Internet yang berterusan, konkurensi yang tinggi dan pemprosesan data yang banyak telah menjadi cabaran yang mesti dihadapi oleh aplikasi Internet. Untuk menangani cabaran ini, menggunakan baris gilir untuk mengendalikan tugas yang memakan masa telah menjadi penyelesaian biasa dalam rangka kerja Laravel. Artikel ini akan memperkenalkan cara menggunakan Laravel Horizon dan IronMQ untuk mengurus baris gilir dan tugas mereka.

1. Laravel Horizon

Laravel Horizon ialah alat pengurusan baris gilir yang disediakan secara rasmi oleh Laravel Ia menyediakan antara muka web yang mudah digunakan dan boleh membantu kami melihat baris gilir dalam masa nyata . Selain itu, Laravel Horizon juga menyediakan ciri berkuasa seperti statistik, percubaan semula automatik, had tetingkap masa dan pengendalian pengecualian untuk tugasan dalam baris gilir.

  1. Pasang Laravel Horizon

Gunakan Komposer untuk memasang Laravel Horizon: laksanakan arahan berikut:

composer require laravel/horizon
  1. Penerbitan skrip Horizon

Selepas melaksanakan arahan di atas, anda juga perlu menerbitkan skrip Laravel Horizon kepada projek dengan melaksanakan arahan berikut:

php artisan horizon:install
  1. Konfigurasikan Laravel Horizon

Laravel Horizon Fail konfigurasi terletak di config/horizon.php Anda boleh mengkonfigurasi gelagat Horizon dengan menukar fail ini Contohnya, tetapkan sambungan dan nama baris gilir dalam fail konfigurasi:

return [
    // 要运行的进程数
    'processes' => 10,

    // 队列连接设置
    'environments' => [
        'production' => [
            'supervisor-1' => [
                'connection' => 'redis',
                'queue' => ['default'],
                'balance' => 'simple',
                'processes' => 10,
            ],
            'supervisor-2' => [
                'connection' => 'redis',
                'queue' => ['high'],
                'balance' => 'simple',
                'processes' => 5,
            ],
        ],
    ],
]
    <.>Mulakan Laravel Horizon
Gunakan arahan berikut untuk memulakan Laravel Horizon:

php artisan horizon

Lawati http://localhost/horizon dan anda akan melihat antara muka web Laravel Horizon.

2. IronMQ

IronMQ ialah perkhidmatan baris gilir mesej awan berprestasi tinggi yang boleh menerima dan menghantar sejumlah besar data melalui API. Berbanding dengan perkhidmatan baris gilir mesej arus perdana yang lain, IronMQ lebih fleksibel dan boleh dipercayai, menyokong berbilang bahasa dan sistem pengendalian, serta mempunyai ciri berskala.

    Daftar IronMQ
Apabila mendaftar IronMQ, anda perlu memilih jenis bahasa dan lokasi pusat data yang anda gunakan. Selepas mendaftar, anda akan dapat mendapatkan ID projek dan token, yang akan kami gunakan dalam kod Laravel untuk menyambung ke baris gilir IronMQ anda.

    Pasang IronMQ
Dalam projek Laravel, gunakan Composer untuk memasang IronMQ:

composer require iron-io/iron_mq

    Konfigurasikan IronMQ
Dalam projek, kami boleh mengkonfigurasi IronMQ dengan menambahkan parameter berikut pada fail .env:

IRON_PROJECT_ID=IronMQ_project_id
IRON_TOKEN=IronMQ_token
IRON_QUEUE_NAME=default

    Tekan tugas ke IronMQ
Dalam projek Laravel , tolak tugasan kepada IronMQ dengan cara berikut:

IronMQ::queue('queue_name')->post($payload);

di mana $payload ialah kandungan tugasan dan queue_name ialah nama baris gilir.

3. Gunakan Laravel Horizon dan IronMQ untuk mengurus baris gilir dan tugasan

Berikut ialah proses umum menggunakan Laravel Horizon dan IronMQ untuk mengurus baris gilir dan tugasan:

    Dalam projek Laravel , konfigurasikan Horizon dan IronMQ dan mulakannya.
  1. Dalam projek Laravel, tolak tugas ke IronMQ. Data tugas boleh disimpan dalam pangkalan data atau sebaliknya dijana.
  2. Laravel Horizon meninjau IronMQ dan menggunakan tugas daripada baris gilir. Anda boleh melihat status baris gilir dalam antara muka web Horizon, termasuk penyiapan tugas dan percubaan semula tugas.
  3. Semasa pelaksanaan tugas, Laravel Horizon menyediakan banyak cara berguna untuk membantu kami meningkatkan kualiti kod. Contohnya, dalam antara muka web Horizon, kami boleh melihat maklumat terperinci seperti bilangan baris kod dan masa yang dilaksanakan oleh tugasan, dengan itu mengenal pasti kesesakan prestasi yang berpotensi dan kecacatan kod dalam tugasan kami.
  4. Selepas pemprosesan tugas, jika perlu, hasilnya boleh ditolak ke sistem lain atau data tetap boleh dikembalikan ke penghujung panggilan.
Kesimpulan

Artikel ini memperkenalkan cara menggunakan IronMQ sebagai perkhidmatan baris gilir dalam aplikasi Laravel, dan menggabungkannya dengan Laravel Horizon untuk mengurus baris gilir dan tugasan dengan mudah. Dengan menggunakan Laravel Horizon dan IronMQ, kami boleh menyelesaikan tugas tak segerak dengan lebih cekap dan lebih mudah mengesan serta menyelesaikan masalah yang timbul semasa pelaksanaan tugas.

Atas ialah kandungan terperinci Pembangunan Laravel: Bagaimana untuk menguruskan baris gilir menggunakan Laravel Horizon dan IronMQ?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan:
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn