Easy👤 0-2 years👤 3-5 years 1 min read

How do microservices communicate — synchronous vs asynchronous, and when each?

Asked inAmazonInfosysDeloitteCognizant
#synchronous#asynchronous#rest#messaging#kafka#grpc
Report issue

⚡ Short Answer

Synchronous (REST/gRPC) is simple and immediate but couples services and propagates failures/latency. Asynchronous (message broker / events) decouples, buffers load, and improves resilience, at the cost of eventual consistency and harder debugging. Use sync for queries needing an immediate answer, async for workflows/notifications.

Coffee Chat Question

Concept Made Simple

How do microservices communicate — synchronous vs asynchronous, and when each?

🧠Mind Map Answer

Remember It Faster

Sync (REST/gRPC)immediate, simple, tight coupling
Async (broker)decoupled, resilient, eventual
Sync forread/query needing an answer now
Async forevents, workflows, notifications

🔥What If?

Think Beyond the Expected

A chain of 5 synchronous service calls keeps timing out — what architectural smell is that?

Synchronous call chains couple availability multiplicatively (each hop must be up and fast) and amplify latency. It's a sign to flatten the chain, cache, or move parts to async/event-driven so a slow downstream doesn't cascade failures upstream.

😂Real World

Over-using synchronous calls creates fragile 'distributed monoliths'; mature systems push workflows onto events/queues and reserve sync calls for genuine request/response reads.

🎯Interviewer's Expectation

Keywords they're listening for:

sync vs async trade-offscoupling/latency amplificationeventual consistency cost of asyncchoose by use caseavoid long sync chains

⚠️Common Mistakes

  • Long synchronous call chains
  • Using async everywhere (debugging pain)
  • Ignoring partial-failure handling on sync calls

Best Practices

  • Async for workflows/events; sync for immediate reads
  • Add timeouts/circuit breakers to sync calls
  • Avoid deep synchronous chains

🔁Follow-up Questions

  • 1What is a 'distributed monolith'?
  • 2How does async messaging improve resilience?
  • 3When is gRPC preferred over REST internally?

🧩Related Technologies

KafkaRabbitMQgRPCREST

Continue Learning with AI

Take this question deeper with your favourite AI assistant. Pick a depth, copy the prompt, or open it directly — AI is your learning companion, not a shortcut.

Plain-language foundations

I'm preparing for a software engineering interview and want to understand this from scratch, as a beginner.

Topic: Communication (Microservices)
Interview question: "How do microservices communicate — synchronous vs asynchronous, and when each?"

Please:
1. Explain the core idea in simple, plain language, using an everyday analogy.
2. Define any technical terms you use.
3. Walk through one small, concrete example.
4. Finish with a single sentence I can easily remember.

Keep the tone friendly and assume I'm new to this topic.
Open inChatGPTGeminiClaude

Was this answer helpful?

Support our platform by exploring our recommended products.

As an Amazon affiliate, purchases through these links may earn us a small commission — at no extra cost to you. It helps keep Full Stack Interview Guru free.

Related Questions