Kod sumber lengkap boleh didapati di GitHub. Sebagai alternatif, gunakan ke pelayan langsung untuk ujian.
Konsep Utama
beratur dan ironmq
Baris adalah saluran paip kerja. Pekerjaan diproses secara berurutan mengikut urutan yang ditambah. Beratur giliran, tidak seperti beratur tarik, secara proaktif memberitahu pelanggan apabila pekerjaan sudah siap, menghapuskan keperluan untuk mengundi yang berterusan. IronMQ adalah perkhidmatan yang memudahkan sistem beratur berasaskan push ini. Apabila membuat giliran push, anda menentukan URL pelanggan; IronMQ menghantar data pekerjaan ke URL ini apabila pekerjaan menjadi tersedia.untuk menyelam yang lebih mendalam ke dalam giliran kerja dan perbandingan pelbagai penyelesaian, rujuk [artikel ini] (link_to_article_here - gantikan dengan pautan sebenar jika tersedia).
Persediaan dan Pemasangan
Butiran bahagian ini memasang Laravel, kebergantungannya, membuat akaun besi.io, dan mengkonfigurasi ngrok.
Laravel
Navigasi ke direktori composer create-project laravel/laravel --prefer-dist
dan jalankan laravel
. Akses pemasangan Laravel anda di php artisan serve
. http://localhost:8000
dengan kelayakan pangkalan data anda. Jalankan app/config/database.php
. php artisan migrate:install
(atau setaraf) untuk memaparkan mesej yang mengesahkan persediaan anda. app/views/welcome.blade.php
anda: composer.json
"require": { "laravel/framework": "^9.0", // or your Laravel version "iron-io/iron_mq": "^1.4", "intervention/image": "^2.7" },
run composer update
dengan menambahkan penyedia perkhidmatan dan alias seperti yang didokumenkan dalam dokumentasi imej intervensi. config/app.php
ngrok
Untuk ujian tempatan dengan IronMQ, gunakan NGROK untuk mendedahkan pelayan tempatan anda ke Internet.
./ngrok 8000
http://your-ngrok-url.ngrok.io
config/queue.php
'iron' => [ 'driver' => 'iron', 'project' => env('IRON_PROJECT_ID'), 'token' => env('IRON_TOKEN'), 'queue' => 'laravel', ],
ke fail IRON_PROJECT_ID
anda. IRON_TOKEN
.env
Ganti
php artisan queue:subscribe laravel http://your-ngrok-url.ngrok.io/queue/receive
http://your-ngrok-url.ngrok.io
routes/web.php
Route::post('queue/receive', function () { return Queue::marshal(); });
Bahagian ini merangkumi persediaan dan pemasangan komponen yang diperlukan. Bahagian dua akan memberi tumpuan kepada membina aplikasi dan melaksanakan pekerjaan saiz semula imej.
Soalan Lazim (Soalan Lazim)
(Bahagian ini kekal tidak berubah, kerana maklumat masih relevan.)
(bahagian FAQ yang ada ditulis dengan baik dan tepat; tiada perubahan diperlukan.)
Atas ialah kandungan terperinci IronMQ dan Laravel: Persediaan. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!