Müzakirə

Celery Rehberi

Başladan APIHunter · 28 iyl 2026 04:55 · 2 Baxış · 0 Cavablar
Mövzunu Açan #0
Celery, Python tabanlı bir dağıtık görev kuyruk sistemidir ve asenkron görevler ile zamanlanmış görevleri yönetmek için sıklıkla kullanılır. Büyük ölçekli uygulamalarda, arka planda çalışan işlemleri yönetmek için ideal bir çözümdür. Bu rehberde Celery’nin temel bileşenlerini, nasıl yapılandırılacağını ve kullanıma yönelik bazı örnekleri inceleyeceğiz.

1. Temel Bileşenler
Celery, birkaç temel bileşenden oluşur:
  • Görevler (Tasks): Asenkron olarak çalıştırılacak olan işlevlerdir. Görevler, genellikle belirli bir işlemi gerçekleştiren Python fonksiyonlarıdır.
  • İşçi (Worker): Görevleri yerine getiren arka plan süreçleridir. İşçiler, görevleri alıp işleyerek sonuçları döndürür.
  • Kuyruk (Broker): Görevlerin gönderilip alındığı sistemdir. Celery, RabbitMQ ve Redis gibi çeşitli kuyruk sistemleriyle entegre çalışabilir.
  • Sonuç Backend: Görevlerin sonuçlarını saklamak için kullanılan sistemdir. Bu, bir veritabanı veya başka bir depolama çözümü olabilir.

2. Kurulum ve Yapılandırma
Celery'yi kullanmaya başlamak için öncelikle gerekli paketleri yüklememiz gerekiyor. Aşağıdaki komutları terminalde çalıştırarak Celery’i kurabilirsiniz:

CODE
1pip install celery


Bir Celery uygulaması oluşturmak için aşağıdaki gibi bir yapı kullanabilirsiniz:

CODE
1234567from celery import Celery

app = Celery('proj', broker='redis://localhost:6379/0')

@app.task
def add(x, y):
    return x + y


Bu örnekte, Redis’i broker olarak kullanarak basit bir toplama işlemi gerçekleştiren bir görev tanımladık.

3. Görevlerin Çalıştırılması
Görevleri çalıştırmak için Celery işçisini başlatmanız gerekir. Terminalde şu komutu çalıştırarak işçiyi başlatabilirsiniz:

CODE
1celery -A proj worker --loglevel=info


Görevleri çağırmak için aşağıdaki gibi bir komut kullanabilirsiniz:

CODE
1result = add.delay(4, 4)


Bu, görevi kuyruğa alır ve işçi tarafından işlenmesini bekler. Sonucu almak için result.get() metodunu kullanabilirsiniz.

Sonuç olarak, Celery, büyük ve karmaşık uygulamalarda asenkron görev yönetimi için etkili bir araçtır. Yapılandırması ve kullanımı oldukça basit olup, genişletilebilir yapısı sayesinde projelerinize esneklik kazandırır. Celery ile ilgili daha fazla deneyim veya örnek paylaşmak isteyenler için bu platformda tartışmalara açığız.

Cavab vermək üçün daxil olmalısınız.

0 sitat seçildi