|
|
Publicerad på 2019-05-30 22:58:30
|
|
|
|

förord
På vissa platser används meddelandeköer för att säkerställa korrekt informationsbearbetning. Till exempel, i situationer med hög samtidighet utför webbplatser databehandling. Idag spelar denna artikel in en enkel demo av RabbitMQ. Innan vi går in i denna artikel måste RbMQ-miljön installeras i förväg (eftersom jag installerade den lokala RbMQ-miljön tidigare, och jag är rädd att avinstallationen kommer att orsaka problem eftersom registret inte är rent, så jag kommer inte att dokumentera installationen av miljön här).
Miljö och verktyg
>Windows 10-system
>RabbitMQ Miljötjänster
>VS 2017
SMS
1: Skapa två nya konsolapplikationer, nämligen "RabbitMQClient" och "RabbitMQServer".
2: Hänvisa till "RabbitMQ.Client" dll
3: I RabbitMQClient-projektet, Program.cs, klistra in följande kod
4: I RabbitMQServer-projektet, Program.cs, klistra in följande kod
5: F5 för att starta RabbitMQServer-projektet, i konsolen, mata in informationen, tryck enter.
6: Stäng inte RabbitMQServer-projektkonsolen, högerklicka på RabbitMQClient-projektet – > "Debug" – > "Starta en ny instans"
Du kan mata in information i RabbitMQServer-konsolen till höger för att visa den till vänster. RabbitMQServer-projektet producerar meddelanden. RabbitMQClient-projektet bearbetar (konsumerar) meddelanden. Detta är producenten och konsumenten i meddelandekön. Koden involverar också routing och kanaler.
På meddelandeproducentens sida, lägg in informationen som ska bearbetas i meddelandekön. Efter att ha mottagit meddelandet kan konsumenten bearbeta dessa data därefter.
Om miljön är installerad ska den lokala standardportadressen vara http://localhost:15672/#/queues. Du kan komma direkt åt gästkontot, eller så kan du konfigurera kontot och motsvarande behörigheter genom att trycka på kommandoraden.
Informationen du just matade in i RabbitMQServer-konsolen finns faktiskt först i meddelandekön, du kan stänga RabbitMQClient-fönstret först, sedan mata in några informationsbitar i fönstret, observera meddelandekön och du kan se att det finns tre databitar i kön.
När vårt RabbitMQClient-fönster startar försvinner meddelandet automatiskt från meddelandekön efter att ha mottagit det normalt. Detta är bekräftelsemekanismen för meddelandekön; när informationen vi behöver har mottagits korrekt, kommer konsumenten att returnera ett tillstånd till meddelandekön för att förstöra meddelandet. Om konsumenten inte tar emot meddelandet, eller om det finns ett undantag och inte returnerar detta statusvärde, kommer meddelandet att stanna kvar i kön tills meddelandet konsumeras normalt, vilket säkerställer meddelandets korrekthet.
Epilog
Tyvärr finns det väldigt få ställen där jag använder meddelandeköer i mina projekt. Utan djupgående förståelse kommer endast grunderna att användas.
Det finns ett hål i ovanstående demo, och anslutningen till RbMQ i RabbitMQClient har ett lager av användning. Eftersom det är en asynkron tråd kommer detta att göra att programmet körs och återanvänder RbMQ-anslutningen innan det är klart med att ta emot meddelandet, och ett fel rapporteras. Sättet att hantera det är: ta bort användningen och släpp den manuellt.
|
Föregående:"npm ERR! Fel: EPERM: drift ej tillåten"Nästa:Introduktion till nio konventionella synprogram
|