|
|
Opslået på 30/05/2019 22.58.30
|
|
|
|

forord
Nogle steder bruges beskedkøer for at sikre nøjagtigheden af informationsbehandlingen. For eksempel udfører hjemmesider databehandling i situationer med høj samtidighed. I dag optager denne artikel en simpel demo af RabbitMQ. Før jeg går ind i denne artikel, skal RbMQ-miljøet installeres på forhånd (fordi jeg installerede det lokale RbMQ-miljø før, og jeg er bange for, at afinstallation vil forårsage problemer, da registret ikke er rent, så jeg vil ikke registrere installationen her).
Miljø & Værktøjer
>Windows 10-system
>RabbitMQ Miljøtjenester
>VS 2017
Tekst
1: Opret to nye konsolapplikationer, nemlig "RabbitMQClient" og "RabbitMQServer".
2: Se "RabbitMQ.Client" dll
3: I RabbitMQClient-projektet, Program.cs, indsæt følgende kode
4: I RabbitMQServer-projektet indsætter Program.cs følgende kode
5: F5 for at starte RabbitMQServer-projektet, indtaste informationen i konsollen, tryk enter.
6: Luk ikke RabbitMQServer-projektkonsollen, højreklik på RabbitMQClient-projektet - > "Debug" - > "Start en ny instans"
Du kan indtaste information i RabbitMQServer-konsollen til højre for at vise den til venstre. RabbitMQServer-projektet producerer beskeder. RabbitMQClient-projektet behandler (forbruger) beskeder. Dette er producenten og forbrugeren i beskedkøen. Koden involverer også routing og kanaler.
På meddelelsesproducentens side skal den information, der skal behandles, placeres i beskedkøen. Efter at have modtaget beskeden kan forbrugeren behandle disse data derefter.
Hvis miljøet er installeret, bør den lokale standardportadresse være http://localhost:15672/#/queues. Du kan direkte få adgang til gæstekontoen, eller du kan konfigurere kontoen og de tilhørende tilladelser ved at trykke på kommandolinjen.
De oplysninger, du lige har indtastet i RabbitMQServer-konsollen, findes faktisk først i beskedkøen; du kan lukke RabbitMQClient-vinduet først, og derefter indtaste nogle få oplysninger i vinduet, observere beskedkøen, og du kan se, at der er tre datastykker i køen.
Når vores RabbitMQClient-vindue starter, forsvinder beskeden automatisk fra beskedkøen efter at have modtaget den normalt. Dette er bekræftelsesmekanismen for beskedkøen; når de oplysninger, vi har brug for, er korrekt modtaget, vil forbrugeren returnere en tilstand til beskedkøen for at ødelægge beskeden. Hvis forbrugeren ikke modtager beskeden, eller hvis der er en undtagelse, som ikke returnerer denne statusværdi, vil beskeden forblive i køen, indtil beskeden er forbrugt normalt, hvilket sikrer beskedens nøjagtighed.
Epilog
Desværre er der meget få steder, hvor jeg bruger beskedkøer i mine projekter. Uden en dybdegående forståelse vil kun det grundlæggende blive brugt.
Der er et hul i ovenstående demo, og forbindelsen til RbMQ i RabbitMQClient har et lag af brug. Da det er en asynkron tråd, vil dette få programmet til at køre og genbruge RbMQ-forbindelsen, før det er færdigt med at modtage beskeden, og der vil blive rapporteret en fejl. Måden at håndtere det på er: fjern brugen og frigiv den manuelt.
|
Tidligere:"npm ERR! Fejl: EPERM: drift ikke tilladt"Næste:Introduktion til ni konventionelle synssoftware
|