Haza - Cikk - Részletek

Hogyan lehet lombikot vagy palackot használni a RabbitMQ -val?

Ava Taylor
Ava Taylor
Ava a Zhejiang Nawas ügyfélszolgálati képviselője. Szakmai tanácsadást és segítséget nyújt az ügyfeleknek, segítve őket igényeik szerint a legmegfelelőbb Thermos Cup kiválasztásában.

Hé! Lombik és palacktermékek szállítója vagyok, és ma arról fogok beszélni, hogyan kell lombikot vagy palackot használni a RabbitMQ -val. Ha webfejlesztéssel foglalkozik, vagy csak az alkalmazások optimalizálásának módjait keresi, ez a bejegyzés az Ön számára készült.

Először röviden mutatjuk be, mi a lombik, a palack és a nyúl. A Flask egy könnyű webkeret Pythonban. Szuper könnyű elindulni, és kiválóan alkalmas kis és közepes méretű webes alkalmazások felépítésére. A palack egy egyszerű és gyors mikro -keret a Python számára. Minimalista kialakítású, ami szellővé teszi a munkát. Másrészt, a RabbitMQ üzenet -bróker. Segít az alkalmazás különböző részeinek kommunikációjában az üzenetek küldésével és fogadásával.

Stainless Steel Insulated Coffee Pot suppliersStainless Steel Insulated Coffee Pot

Miért kombinálja a lombikot/palackot a nyúlmq -rel?

Szóval, miért akarna használni lombikot vagy palackot a RabbitMQ -val? Nos, egy valós világ alkalmazásában előfordulhat, hogy olyan feladatok vannak, amelyek hosszú időt vesznek igénybe, például nagyszámú e -mail elküldése vagy nagy adatok feldolgozása. Ha ezeket a feladatokat közvetlenül a lombikban vagy a palack alkalmazásában kezeli, akkor a webes alkalmazás lassúvá vagy akár nem is reagálhat. Itt jön be a RabbitMQ. Ezeket az időt letöltheti - feladatokat fogyaszt egy üzenetsorba (RabbitMQ), és hagyja, hogy más munkavállalók kezeljék őket a háttérben. Ilyen módon a webes alkalmazás folytathatja más kéréseket anélkül, hogy megvárná a hosszú futó feladatok befejezését.

A környezet beállítása

Mielőtt elkezdenénk a kódolást, be kell állítanunk a környezetünket. Először győződjön meg arról, hogy a Python telepítve van -e a gépére. Ezután telepítheti a lombikot vagy a palackot, és ahosszúkönyvtár (amelyet a RabbitMQ -val való kölcsönhatáshoz használnak a Python -ban) használvacsipog-

Pip Install Flash # vagy PIP telepítés palack PIP Install Pika

Ha a lombikot használja, íme egy egyszerű példa arra, hogyan lehet integrálni a RabbitMQ -val. Tegyük fel, hogy van egy lombikalkalmazásunk, amelynek üzenetet kell küldenie egy RabbitMQ sorba, amikor a felhasználó kérést tesz.

Pika importálása a lombikból Import Flask APP = Flask (__ Name__) @App.Route ('/Send_Message') def send_message (): connection = pika.blockingConnection (pika.connectionParameters ('localhost') channel = connection.channel () channel.que_declare (Queue = 'my_queue') üzenet = channel. channel.basic_publish (Exchange = '', routing_key = 'my_queue', body = üzenet) print ("[x] küldött % r" % üzenet) connection () return 'üzenet elküldve a nyúlmq -hez!' Ha __name__ == '__main__': app.run (hibakeresés = true)

Ebben a kódban, amikor a felhasználó meglátogatja a/send_messageÚtvonal, a lombik alkalmazásunk csatlakozik a helyi RabbitMQ szerverhez, kijelenti, hogy a nevű sormy_queue, és üzenetet küld neki.

Most nézzük meg, hogyan lehet beállítani egy munkavállalót, hogy üzeneteket fogyasztson a sorból.

Import Pika Def visszahívás (CH, módszer, tulajdonságok, test): Nyomtatás ("[x] vett % r" % test) connection = pika.blockingConnection (pika.connectionParameters ('localhost')) channel = connection.channel () channel.queue_declare (queue = 'my_queue') Channel.Basic_consume (queue = 'my_que " auto_ack = true, on_message_callback = visszahívás) print ('[*] üzenetek várják az üzeneteket.

Ez a munkavállalói szkript csatlakozik ugyanahhoz a RabbitMQ szerverhez, deklarálja amy_queueIsmét, és elkezdi üzeneteket fogyasztani belőle. Amikor új üzenet érkezik, avisszahívásA funkciót hívják, és az üzenetet a konzolra nyomtatják.

Ha palackot használ, a folyamat meglehetősen hasonló. Itt van egy egyszerű palack példa:

Pika importálása a palack importálásáról, futtassa a @Route ('/send_message') def send_message (): connection = pika.blockingConnection (pika.connectionParameters ('LocalHost')) Channel = Connection.Channel () Channel.queue_declare (queue = 'my_queue') channel.basic_publish (Exchange = '', routing_key = 'my_queue', body = üzenet) print ("[x] küldött % r" % üzenet) connection () return 'üzenet elküldve a nyúlmq -hez!' futás (host = 'localhost', port = 8080, hibakeresés = true)

Lombik és palacktermékeink előnyei

Szállóként elmondhatom neked, hogy a lombik és a palack termékeink, mint például aRozsdamentes acél szigetelt kávéfőző, vannak a legfelső - bevágás. Nagyon minőségi anyagokkal készülnek, biztosítva a tartósságot és a hosszú távú felhasználást. Függetlenül attól, hogy fejlesztő vagy, akinek megbízható tartályra van szüksége az italokhoz kódolás közben, akár promóciós cikkeket kereső vállalkozás, termékeink nagyszerű választás.

Hibakezelés és a bevált gyakorlatok

A lombikkal vagy palackkal és a nyúlmq -szel való munka során a hibakezelés döntő jelentőségű. Például, ha a RabbitMQ szerver nem működik, akkor az alkalmazás kivételt vethet fel, amikor megpróbálja csatlakozni. Használhatja a próbálkozást - kivéve a blokkokat, hogy kecsesen kezelje ezeket a hibákat.

Pika importálása a lombikból Import Flask APP = Flask (__ Name__) @App.Route ('/Send_Message') def send_message (): próbálkozás: connection = pika.blockingConnection (pika.connectionParameters ('localhost') channel = csatlakozás. Channel () channel.que_declare (Queue = 'my_queue ") Rabbitmq! channel.basic_publish (Exchange = '', routing_key = 'my_queue', body = üzenet) print ("[x] küldött % r" % üzenet) connection () return 'üzenet elküldve a nyúlmq -hez!' kivéve a pika.exceptions.amqpConnectionError: return 'Nem sikerült csatlakozni a nyúlmq -hez!' Ha __name__ == '__main__': app.run (hibakeresés = true)

Egy másik legjobb gyakorlat a kapcsolat és a csatorna megfelelő kezelése. Ügyeljen arra, hogy bezárja a kapcsolatot, miután elkészítette az erőforrás -szivárgások elkerülése érdekében.

Méretezés és teljesítmény

Ha az alkalmazás növekszik, akkor lehet, hogy méreteznie kell a RabbitMQ beállítást. Több munkavállalót használhat a sorból egyidejűleg üzenetek fogyasztására, amelyek javíthatják az általános teljesítményt. Beállíthat egy RabbitMQ szerverek klaszterét is a magas rendelkezésre állás érdekében.

Következtetés

A lombik vagy palack használata a RabbitMQ -val egy hatékony kombináció, amely segíthet a hatékonyabb és reagálóbb webes alkalmazások felépítésében. Függetlenül attól, hogy hosszú távú - futtasokat végez -, akár csak az alkalmazás különböző részeinek kommunikációjára van szüksége, a RabbitMQ nagyszerű kiegészítés lehet.

Ha érdekli a lombik és a palacktermékek, szeretnénk beszélgetni veled. Keresse meg velünk a további információkat, és kezdje el egy nagyszerű üzleti kapcsolatot. Azért vagyunk itt, hogy a legjobb termékeket és szolgáltatásokat nyújtsuk Önnek.

Referenciák

  • Miguel Grinberg "Flask Web Development"
  • "RabbitMQ akcióban", Alvaro Videla és Jason JW Williams

A szálláslekérdezés elküldése

Népszerű blogbejegyzések