Modelul arhitectural Fanout combină serviciul de publicare/abonare Amazon SNS cu cozile de consum Amazon SQS. Când un eveniment critic are loc (de ex: „Comandă Plătită”), evenimentul este publicat o singură dată într-un topic SNS, care îl distribuie instantaneu în mai multe cozi SQS paralele dedicate: una pentru facturare, una pentru livrare și una pentru notificări SMS.
Comenzi AWS CLI pentru publicarea și consumul mesajelor
# 1. Publicarea unui eveniment în topicul SNS:
aws sns publish \
--topic-arn "arn:aws:sns:eu-central-1:123456789012:comenzi-platite" \
--message '{"idComanda": "CMD-984", "suma": 450.0}' \
--subject "Plata Confirmata"
# 2. Preluarea mesajelor de către serviciul consumator din coada SQS dedicată:
aws sqs receive-message \
--queue-url "https://sqs.eu-central-1.amazonaws.com/123456789012/coada-facturare" \
--max-number-of-messages 10 \
--wait-time-seconds 20 # Long Polling pentru economie de costuri și latență scăzută