Rumah >pembangunan bahagian belakang >tutorial php >Drupal 8 Outright API - Manual dan Cron Beratur yang kuat
API Gilir Drupal 8: Pemprosesan Tugas Asynchronous untuk Prestasi yang Dipertingkatkan
Artikel ini meneroka API barisan Drupal 8, alat yang berkuasa untuk mengendalikan tugas-tugas yang memakan masa secara asynchronously. Daripada meraih permintaan satu halaman, API barisan membolehkan tugas diproses kemudian, biasanya semasa berjalan cron, tetapi juga secara manual. Ini penting untuk operasi yang boleh memberi kesan negatif kepada pengalaman pengguna jika dilaksanakan dengan serta -merta.
Komponen Utama:
API barisan terdiri daripada beberapa komponen utama:
QueueInterface
Pelaksanaan: Komponen teras, bertanggungjawab untuk membuat, menuntut, dan memadam item giliran. Lalai, DatabaseQueue
, memastikan item diproses sekurang -kurangnya sekali dan teratur (FIFO). QueueWorker
plugin yang melaksanakan QueueWorkerInterface
. QueueWorkerManager
instantiates dan menguruskan pekerja -pekerja ini. Aplikasi praktikal adalah modul tersuai (seperti contoh "Node Publisher Queue" - NPQ) yang menambah nod yang baru dicipta, tidak diterbitkan ke barisan untuk penerbitan kemudian. Penerbitan ini boleh berlaku semasa run cron atau melalui tindakan admin manual.
pelaksanaan modul NPQ (dipermudahkan):
Modul NPQ menunjukkan penciptaan dan pemprosesan item giliran.
): Apabila nod yang tidak diterbitkan disimpan, cangkuk ini menambah item giliran yang mengandungi id nod ke barisan yang ditetapkan (mis., 'Cron_node_publisher' atau 'manual_node_publisher') . hook_entity_insert
): Pekerja ini memproses barisan 'cron_node_publisher' semasa run cron, menerbitkan nod. CronNodePublisher
Pekerja ini memproses barisan 'manual_node_publisher' apabila dicetuskan secara manual (mis., Melalui bentuk admin). Kedua -dua pekerja memanfaatkan kelas asas biasa () untuk fungsi bersama. ManualNodePublisher
NodePublishBase
Pertimbangan penting:
Prioriti:
API Drupal 8 Outrine tidak semestinya menyokong keutamaan item. Walau bagaimanapun, dengan menggunakan pelbagai barisan membolehkan pemprosesan berdasarkan tahap keutamaan.API barisan Drupal 8 menawarkan mekanisme yang mantap untuk pengendalian tugas tak segerak yang cekap. Dengan mengimbangi proses jangka panjang, ia melindungi pengalaman pengguna dan meningkatkan prestasi tapak keseluruhan. Contoh NPQ menyoroti aplikasi praktikal dan pelaksanaan ciri API yang kuat ini.
Soalan Lazim (Soalan Lazim):
Seksyen Soalan Lazim dari teks asal memberikan gambaran menyeluruh mengenai fungsi, penggunaan, pengendalian ralat, dan pemantauan API Drupal 8. Ia meliputi topik seperti penciptaan giliran, menambah dan memproses item, pengendalian ralat, keutamaan (atau kekurangannya), pemantauan, dan keserasian dengan Drupal 7. Maklumat ini tetap berharga dan relevan dan oleh itu dikekalkan secara keseluruhannya.
Atas ialah kandungan terperinci Drupal 8 Outright API - Manual dan Cron Beratur yang kuat. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!