Introductie in Azure Queue Storage

Queue Storage is een belangrijk onderdeel van Azure Storage. In deze post zullen we eerst de basisprincipes van Azure Queue Storage leren en vervolgens ingaan op de methoden om gegevens op te slaan in Azure Queue Storage. Voor wie hier niet bekend mee is: Microsoft Azure Queues zijn kant-en-klare services die werken op de Azure-platforminfrastructuur om losjes verbonden componenten of applicaties met elkaar te verbinden.  

Azure Development
15 april 2022
Martijn van der Put

Wat is een Queue?

Een Queue is een gegevensstructuur die werkt volgens het First-in-First-out (FIFO) principe. Simpel gezegd worden elementen aan de achterkant van de rij toegevoegd en aan de voorkant verwijderd. De term 'enqueue' verwijst naar de operatie van het invoegen van gegevens in een wachtrij, terwijl 'dequeue' verwijst naar de activiteit van het verwijderen van gegevens uit een wachtrij. Azure Storage Queues en Azure Service Bus Queues zijn de twee typen wachtrijen die worden ondersteund door Azure. 


Wat is Azure Queue Storage?

Azure Queue Storage is een soort berichtenwachtdienst die wordt aangeboden door het Azure-platform. Het biedt een architectuur voor wachtrijopslag voor een REST gebaseerde interface binnen en tussen toepassingen en services. Met de Azure Queue-opslagservice kun je een groot aantal berichten opslaan die vanaf elke locatie toegankelijk is via HTTP- of HTTPS-geauthentiseerde oproepen. Kortom, Azure Queues zijn cloudplatform wachtrijen die kunnen worden gebruikt om berichten uit te wisselen tussen verschillende componenten, zowel in de cloud als lokaal.

Elk bericht is een taak die is gemaakt door iemand (de 'producent') en moet worden verwerkt door een ander persoon (de 'consument'). Evenzo bevat elk bericht een beknopte inhoud en verschillende parameters, zoals time-to-live, die je kunt gebruiken om de service aan te passen. Omdat elk dequeued bericht altijd ongezien is voor de andere consument of luisteraar, kun je een scenario voorstellen met meerdere producenten en consumenten, evenals een één-op-één interactie. Deze flexibele koppeling is het fundamentele voordeel van de Azure Queue Service.

Azure Queues, zoals eerder vermeld, is een RESTful-service die je kunt gebruiken om berichten enqueued en dequeued te maken, evenals om wachtrijen te bedienen (aanmaken en verwijderen). Microsoft Azure biedt verschillende op taal gebaseerde wrapper-API's (zoals .NET, Java, PHP, Python en anderen) waarmee je apps kunt bouwen die rechtstreeks REST-oproepen verzenden of ontvangen om Azure Queue-opslag te gebruiken.

Structuur van Azure Queue Storage


Opslagaccount

Dit wordt gebruikt om toegang te krijgen tot elk type Azure-opslag. Je moet eerst een opslagaccount maken. Een opslagaccount kan een willekeurig aantal wachtrijen hebben en wordt gebruikt om er toegang toe te krijgen als namespaces. Queues, tabellen en andere opslagtypen zijn allemaal mogelijk.  

Queue

Een Queue kan een groep berichten bevatten, en een opslagaccount kan talloze queues hebben. De naam van een queue moet beginnen met een letter of een cijfer, en het kan alleen kleine letters, cijfers en streepjes (-) bevatten. Als we verschillende berichtfuncties in onze toepassing hebben, is het een goede praktijk om berichten in verschillende queues te organiseren. 

Bericht

Een bericht kan een maximale grootte hebben van 64 KB. De vervaltijd van een bericht kan worden ingesteld op elk moment tussen 1 seconde en 7 dagen. Er is ook de optie om een bericht nooit te laten verlopen, wat de vervaltijd zal overschrijven. Berichten kunnen stringwaarden bevatten. Als we door de gebruiker gedefinieerde objecten moeten verstrekken, kunnen we geserialiseerde JSON-reeksen verzenden. 



De voordelen

  • In vergelijking met soortgelijke diensten is Azure Queue Storage niet duur. Dit komt doordat ze worden geprijsd volgens een pay-per-use-model. Je wordt in rekening gebracht op basis van de gewenste redunantie, benodigde opslagruimte en het aantal transacties (lezen, schrijven en verwijderen).
  • Gegevens in Queue Storage zijn aanzienlijk veiliger omdat ze toegankelijk moeten zijn via het HTTP- of HTTPS-protocol via apps.
  • Je hoeft alleen te betalen voor opslag en bewerkingen. Een Event Hub of een Serivce Bus heeft bijvoorbeeld geen lopende kosten.


De nadelen 

Ondanks de hierboven genoemde voordelen heeft Azure Queue-opslag ook nadelen, zoals: 

  • Er is geen voorziening of mogelijkheid om een specifieke volgorde van berichten op te geven: daarom kunnen berichten willekeurig door de wachtrij-service worden ontvangen van meerdere producenten. 
  • De Azure Queue-service heeft geen abonnementssysteem. Dus, om te bepalen of er nieuwe berichten zijn, moeten we een pull uitvoeren om de nieuwe berichten te verwijderen.
  • Elk bericht heeft slechts een maximale grootte van 64 KB.


Conclusie

Voor het verwerken van grote hoeveelheden berichten biedt Azure Queue Storage een eenvoudige, kosteneffectieve en duurzame oplossing voor berichtwachtrijen. Een van de meest nuttige functies van een Storage Queue is het starten van een achtergrondproces asynchroon. Je kunt ook gegevens opnemen in het bericht. 


Ben je op zoek naar meer informatie? 

Neem contact op voor meer informatie of laat een berichtje achter. We helpen graag!

Cookies
Deze site gebruikt geanonimiseerde cookies. Klik op "Akkoord" als je akkoord gaat met het gebruik van cookies, of klik op "Aanpassen" om je voorkeuren te bepalen.
Deze site gebruikt geanonimiseerde cookies.