Junior
Kas ir ziņu starpnieki?
sobes.tech AI
Atbilde no AI
Ziņojumu starpnieki ir starpprogrammēšanas (middleware) programmatūra, kas ļauj lietojumprogrammām asenhroni veidā apmainīties ar informāciju. Tie darbojas kā starpnieki, saņemot ziņojumus no sūtītājiem (publishers) un piegādājot tos saņēmējiem (subscribers) vai patērētājiem (consumers).
Galvenās koncepcijas:
- Rindas (Queues): Ziņojumi tiek nosūtīti rindā, no kuras tos ņem viens vai vairāki patērētāji. Parasti tiek piemērots princips "pirmo ienākošo — pirmo iznākšo" (FIFO).
- Temati (Topics): Ziņojumi tiek publicēti temā, un visi šī temata abonenti saņem ziņojuma kopiju ("publicēšana/abonēšana" modelis - pub/sub).
Priekšrocības:
- Asinhronitāte: Sūtītājs negaida, kamēr saņēmējs apstrādās ziņojumu, kas palielina veiktspēju.
- Atdalīšana: Sūtītāji un saņēmēji nav tieši pazīstami, tas vienkāršo izstrādi un mērogošanu.
- Uzticamība: Brokeri parasti nodrošina garantētu ziņojumu piegādi, pat ja saņēmējs ir pagaidu nepieejams.
- Mērogojamība: Sistēmas viegli mērogojas, pievienojot jaunas sūtītāju vai saņēmēju instances.
- Maršrutēšana: Elastīga ziņojumu maršrutēšanas iespēja, balstoties uz dažādiem kritērijiem.
Piemēri:
- RabbitMQ
- Apache Kafka
- ActiveMQ
- Redis Pub/Sub
# Savienojuma konfigurācijas piemērs lietojumprogrammā
message_broker:
type: rabbitmq
host: localhost
port: 5672
queue_name: order_processing