Yii2 Queue, Yii2 çerçevesi için geliştirilmiş bir kuyruk eklentisidir. DB, Redis, RabbitMQ, Beanstalk, SQS ve Gearman gibi farklı kuyruk altyapılarını destekler. Bu sayede uygulamanızın ihtiyacına uygun bir kuyruk sistemi seçebilirsiniz. Eklenti, asenkron görevleri (e-posta gönderme, görsel işleme, API çağrıları vb.) arka planda çalıştırarak ana uygulamanın performansını artırır. ZeplinGo olarak, Yii2 tabanlı projelerinizde bu eklentinin nasıl kullanılabileceğini birlikte değerlendirebiliriz.
Hangi ihtiyaçlarda değerlendirilebilir?
- Yii2 framework ile geliştirilmiş web uygulamaları
- Yoğun işlem gerektiren görevleri asenkron hale getirmek isteyen ekipler
- Farklı kuyruk altyapıları arasında seçim yapmak isteyen geliştiriciler
Yaygın kullanım alanları
E-posta gönderimlerini kuyruğa almak
Kullanıcı kaydı veya sipariş onayı gibi durumlarda e-posta gönderimlerini kuyruğa alarak ana uygulamanın yanıt süresini kısaltabilirsiniz.
Görsel veya video işleme görevleri
Yüklenen görsellerin yeniden boyutlandırılması veya video dönüştürme gibi zaman alan işlemleri arka planda çalıştırabilirsiniz.
Harici API çağrıları
Üçüncü parti servislere yapılan istekleri kuyruğa alarak uygulamanızın bu servislerin yanıt süresinden etkilenmesini önleyebilirsiniz.
İncelenmesi gereken noktalar
- Kuyruk altyapısı seçimi, projenizin ölçeğine ve mevcut altyapınıza bağlıdır; Redis ve RabbitMQ gibi sistemler için ek kurulum gerekebilir.
- Kuyruk işçilerinin (worker) sürekli çalışması için süreç yönetimi (supervisor gibi) yapılandırmanız gerekebilir.
- Eklentinin güncel sürümü ve Yii2 sürümünüzle uyumluluğunu kontrol etmeniz önemlidir.
WordPress.org
Kurulum ve geliştirme notları
Paket, Composer üzerinden kurulur. Kurulum sonrası kuyruk bileşeni yapılandırılmalıdır.
- 1Composer ile paketi projenize ekleyin: composer require yiisoft/yii2-queue
- 2Uygulama yapılandırmanızda 'queue' bileşenini tanımlayın ve kullanmak istediğiniz sürücüyü (DB, Redis vb.) ayarlayın.
- 3Kuyruğu dinleyen bir konsol komutu çalıştırarak işçileri başlatın.
Eklenti, görevleri sınıflar halinde tanımlamanıza ve kuyruğa göndermenize olanak tanır. İşçiler, bu görevleri sırayla işler.
- Görev sınıfları oluşturarak iş mantığınızı modüler hale getirebilirsiniz.
- Kuyruğa gönderilen işlerin durumunu izleyebilir ve hata durumlarında yeniden deneme yapılandırabilirsiniz.
- Farklı sürücüler arasında geçiş yapmak, yapılandırma değişikliğiyle mümkündür.
Hazır çözümün ötesinde
Özel geliştirme ne zaman değerlendirilebilir?
ZeplinGo olarak, Yii2 projelerinizde kuyruk yönetimini ihtiyaçlarınıza göre tasarlıyoruz. Hangi görevlerin asenkron çalışması gerektiğini, hangi kuyruk altyapısının size uygun olduğunu birlikte belirleyebiliriz. Ayrıca mevcut sisteminize entegrasyon ve performans optimizasyonu konularında da destek sağlıyoruz.
Ücretsiz ön çalışma isteyin →Değerlendirme soruları
Yii2 Queue hangi kuyruk sistemlerini destekler?
Yii2 Queue; DB, Redis, RabbitMQ, Beanstalk, SQS ve Gearman tabanlı kuyrukları destekler.
Kuyruk işçilerini nasıl çalıştırabilirim?
Kuyruk işçilerini çalıştırmak için konsol komutunu kullanabilirsiniz. Örneğin, 'php yii queue/listen' komutu ile kuyruğu dinleyebilirsiniz. Sürekli çalışması için supervisor gibi bir araç önerilir.
Bu eklenti Yii2'nin hangi sürümleriyle uyumludur?
Paketin güncel sürümü, Yii2'nin 2.0.13 ve üzeri sürümleriyle uyumludur. Ancak her zaman paketin resmi dokümantasyonundaki gereksinimleri kontrol etmeniz önerilir.