Salierai yra plačiausiai naudojama geriausios „Message Broker“ programinės įrangos atvirojo kodo programinė įranga

Celery Nemokama pranešimų eilės programinė įranga

„Python“ pagrindu sukurtas plačiausiai dislokuotas atvirojo kodo pranešimų brokeris

Salierai yra asinchroninė atvirojo kodo užduotis arba darbo eilutė, pagrįsta paskirstyta pranešimų eile. Tai siūlo eilės planavimą, kuriame pagrindinis dėmesys skiriamas realiojo laiko operacijoms.

Apžvalga

Salierai yra atvirojo kodo, lankstus ir patikimas paskirstytų pranešimų eilės sistema, skirta apdoroti daugybę pranešimų. Tai yra užduoties eilutė, daugiausia dėmesio skiriant realiojo laiko apdorojimui, tuo pačiu palaikantis užduoties planavimą. Salierai yra licencijuoti pagal BSD licenciją. Salierai turi paprastą asinchroninį proceso eilę arba darbo eilę, pagrįstą paskirstyto pranešimo perdavimu. Vykdymo vienetai ar proceso užduotys vykdomi vienu metu vienu ar daugiau darbuotojų mazgų, naudojant daugiaprocessą, įvykių lizdą ar „Gevent“. Salierų užduotys veikia asinchroniškai fone arba sinchroniškai. Salierų pranešimų brokerio programinė įranga parašyta naudojant „Python“, tačiau protokolą galima įgyvendinti bet kuria kalba. Salierų pranešimų eilės programinė įranga naudojama gamybos sistemose, tokiose kaip „Instagram“, norint kiekvieną dieną apdoroti milijonus užduočių. Tai taip pat gali veikti su kitomis programavimo kalbomis, naudodamas „Webhooks“. Yra PHP klientas, „Go“ klientas, „Node.js“ klientas ir „Ruby-Client“, vadinamas „Rcelery“. Salierai yra atvirojo kodo pranešimo eilė su 18,4K „Github“ žvaigždėmis ir 4,2K „Github“ šakutėmis.

Sistemos reikalavimai

Salierai yra „Python“ paketas, integruotas su „Redis“ arba „RabbitMQ“. Salierų versija 5.1.2 Vyks:

  • Python v3.6+
  • Django 2.2+
  • Redis
  • Git

Funkcijos

Kai kurios pagrindinės salierų geriausios pranešimų eilės funkcijos yra išvardytos žemiau:

  • Planavimas
  • Stebėjimas
  • Aukštas prieinamumas
  • Horizontalus mastelio keitimas
  • Autoreading
  • Šaltinių nuotėkio apsauga
  • Darbo eigos
  • Laikas ir greičio apribojimai
  • Automatinis gaminimas
  • Vartotojo komponentai
  • Atviro kodo

Diegimo instrukcijos

Įdiekite salierą ant ubuntu

„Salierų geriausias pranešimų brokeris“ yra paprastas ir lengvai pradedamas programinė įranga. Pirmiausia įsitikinkite, kad visi salierų nepakankamumo paketai yra įdiegti ir atnaujinti. Žemiau vadove apima salierų diegimą Debian ir Ubuntu, įskaitant paskirstymus, pagrįstus jais. Norėdami nustatyti salierą, vykdykite toliau pateiktas instrukcijas. Atnaujinkite savo sistemą su komanda:

    sudo apt update && sudo apt upgrade

Tada įdiekite salierą paleidę komandą:

    pip install -U celery

Jei įdiegiate „RabbitMQ“ „Ubuntu“ ar „Debian“, vykdykite šią komandą:

    sudo apt-get install rabbitmq-server

Jei naudojate „Redis“ kaip užpakalinę dalį, būtinai įdiekite „Redis“ per APT „Ubuntu“ pagal komandą:

    sudo apt-get install redis-server

Be to, salierai apibrėžia vieną ar grupę paketų, kurie gali būti naudojami salierams ir reikalingoms priklausomybėms diegti su komanda:

    pip install "celery[librabbitmq]"
    pip install "celery[librabbitmq,redis,auth,msgpack]"

Norėdami gauti visą komandinės eilutės parinkčių sąrašą, paleiskite:

    celery worker --help
    celery --help

„RabbitMQ“ galite naudoti amqp: // localhost arba norėdami redaguoti, galite naudoti redis: // localhost. Sveikiname! „Ubuntu“ sėkmingai įdiegėte salierų eilės paslaugas. Mėgautis!

FAQs

What is celery system?

Celery is a simple, flexible, and reliable distributed system to process vast amounts of messages, while providing operations with the tools required to maintain such a system. It’s a task queue with focus on real-time processing, while also supporting task scheduling.

Is celery open source?

Celery is an open source asynchronous task queue or job queue which is based on distributed message passing. While it supports scheduling, its focus is on operations in real time.

Who is using celery?

Who uses Celery? 433 companies reportedly use Celery open source message broker in their tech stacks, including Udemy, Robinhood, and Accenture.

What is the difference between celery and RabbitMQ?

Celery os distributed task queue. Celery is an asynchronous task queue or job queue based on distributed message passing. It is focused on real-time operation, but supports scheduling as well; RabbitMQ is a messaging broker - an intermediary for messaging. RabbitMQ gives your applications a common platform to send and receive messages, and your messages a safe place to live until received.

Does Instagram use celery?

Instagram uses celery technology as its primary task managing tool.

tyrinėti

Šiame straipsnyje aptarėme apie salierą. Norėdami sužinoti apie kitą pranešimų eilės (MQ) programinę įrangą, apsilankykite šiais puslapiais:

Sidekiq

„Apache Kafka“

Rabbitmq

Reskė

Nsq

5 populiariausių atvirojo kodo pranešimų eilės programinė įranga

 Latviski