Seler (oprogramowanie)

Seler
Wersja stabilna
5.2.3 / 29 grudnia 2021 r . ; 13 miesięcy temu ( 2021-12-29 )
Magazyn
Napisane w Pyton
Platforma Międzyplatformowe
Dostępne w Pyton
Typ Oprogramowanie pośredniczące zorientowane na wiadomości
Licencja Licencja BSD
Strona internetowa dokumenty .celeryq .dev

Seler to asynchroniczna kolejka zadań lub kolejka zadań typu open source , która jest oparta na rozproszonym przekazywaniu komunikatów. Chociaż obsługuje planowanie, koncentruje się na operacjach w czasie rzeczywistym.

Przegląd

Jednostki wykonawcze, zwane zadaniami , są wykonywane współbieżnie na jednym lub większej liczbie węzłów roboczych przy użyciu przetwarzania wieloprocesowego , zdarzeń lub gevent. Zadania mogą być wykonywane asynchronicznie (w tle) lub synchronicznie (poczekaj, aż będą gotowe). Seler jest używany w systemach produkcyjnych, do usług takich jak Instagram , do przetwarzania milionów zadań każdego dnia.

Technologia

Seler jest napisany w Pythonie , ale protokół można zaimplementować w dowolnym języku. Może również działać z innymi językami za pomocą webhooków . Istnieje również Ruby o nazwie RCelery, klient PHP , klient Go , klient Rust i klient Node.js.

Zalecanymi brokerami komunikatów RabbitMQ lub Redis . W porównaniu z RabbitMQ, Redis stanowi dobry początek. Jeśli jednak istnieje ważny powód, a Redis nie spełnia już wymagań projektu, łatwo jest przejść na RabbitMQ. Dodatkowo MongoDB , Amazon SQS , CouchDB , IronMQ i bazy danych (wykorzystujące SQLAlchemy lub Django ORM) są obsługiwane w stanie eksperymentalnym .

Zobacz też

Linki zewnętrzne