Asynchronous Communication
Asynchronous, communication, mein, SENDER, RESPONSE, ka, WAIT, NAHI, karta — Message, Queues, (RabbitMQ, AWS SQS) YA, Pub-Sub, systems, (Kafka) messages, ko, DELIVER, karte, hain, DECOUPLED, tareeke, se.
Ye, PATTERN, "LOOSE, COUPLING" create, karta hai — sender, ko, PATA, NAHI, hota, KAUN, message, CONSUME, karega, aur, receiver, DOWN, hone, PAR, bhi, message, QUEUE, mein, WAIT, karta rehta hai.
// Publisher (order-service):
messageQueue.publish("order-created", { orderId: 123, amount: 500 });
// Subscriber (notification-service) — DECOUPLED, aur, INDEPENDENT:
messageQueue.subscribe("order-created", (event) => {
sendConfirmationEmail(event.orderId);
});- Asynchronous = sender, response, ka, wait, nahi, karta (queues, pub-sub)
- Loose coupling — receiver, down, hone, PAR, bhi, message, wait, karta, rehta, hai
- Resilience, improve, karta, hai — LEKIN, eventual, consistency, ka, TRADE-OFF
Message, queue, (jaise, RabbitMQ), EK, message, ko, SIRF, EK, CONSUMER, ko, deliver, karti, hai. Pub-Sub, (jaise, Kafka), EK, EVENT, ko, MULTIPLE, subscribers, ko, deliver, kar, sakta hai — DIFFERENT, use-cases, ke, liye, alag, choices.
// Pub-Sub — MULTIPLE, subscribers, SAME, event, ko, RECEIVE, karte, hain:
kafka.subscribe("order-events", handleAnalytics);
kafka.subscribe("order-events", handleNotifications);Kafka, jaise, systems, mein, EK, "PARTITION" ke, ANDAR, message, order, GUARANTEED, hoti, hai — LEKIN, DIFFERENT, partitions, ke, BEECH, order, GUARANTEED, NAHI, hoti, — order-sensitive, events, (jaise, EK, SAME, order, ke, updates) ko, SAME, partition, key, USE, karni, CHAHIYE.