Home

messagingprotocollen

Messagingprotocollen zijn verzamelingen regels en formaten voor het uitwisselen van berichten tussen softwarecomponenten, meestal ontworpen om asynchrone communicatie mogelijk te maken en zender en ontvanger los van elkaar te laten functioneren. Ze specificeren hoe berichten worden geadresseerd, afgeleverd, bewaard en eventueel herhaald bij fouten. Veel protocollen ondersteunen leveringssemantiek zoals at most once, at least once en exactly once, en bieden verschillende niveaus van kwaliteit van dienst (QoS). Ze onderscheiden zich door communicatiepatronen zoals point-to-point (queues) en publish/subscribe (topics). Berichten kunnen in tekst- of binair formaat zijn en via brokers of directe verbindingen worden gerouteerd.

Bekende voorbeelden van messagingprotocollen zijn onder andere MQTT, AMQP, STOMP en XMPP. MQTT is lichtgewicht en

Architecturen variëren van gecentraliseerde brokers zoals RabbitMQ of Apache ActiveMQ tot distributed streaming platforms zoals Apache

Standards en governance komen van organisaties zoals OASIS voor AMQP en MQTT, IETF voor XMPP, en ISO/IEC

veelgebruikt
in
IoT-scenario's;
AMQP
biedt
uitgebreide
brokerfunctionaliteit
en
routing
via
exchanges
en
queues;
STOMP
is
een
eenvoudig,
tekstgebaseerd
protocol;
XMPP
wordt
gebruikt
voor
berichten
en
presence
in
gedecentraliseerde
omgevingen.
JMS
verwijst
naar
de
Java
Messaging
Service
API
en
is
geen
protocol
op
zich,
maar
een
standaard
voor
Java-toepassingen
die
met
verschillende
brokers
kan
samenwerken.
DDS
is
gericht
op
real-time
distributie
en
deterministische
levering
in
embedded
systemen.
Kafka,
dat
werkt
op
een
log-gebaseerde
opslag
en
een
continu
publish/subscribe-model.
Beveiliging
omvat
doorgaans
TLS
voor
transport,
authenticatie
en
autorisatie.
Veel
protocollen
ondersteunen
mechanismen
zoals
SASL,
OAuth
of
pluggable
authenticatie-
en
autorisatiemechanismen.
voor
andere
domeinen.
De
juiste
keuze
hangt
af
van
vereisten
zoals
betrouwbaarheid,
latentie,
interoperabiliteit
en
ecosysteem.