Skip to main content
1 of 3
Karl Bielefeldt
  • 148.9k
  • 38
  • 285
  • 485

I think you have a misconception about what asynchronous means. Almost all communication to web servers is already asynchronous, because JavaScript only has one thread. Yes, the request and response are correlated together, but any number of things can happen between the request and the response, and while the response is outstanding, it consumes no threads and no CPU time. Just a tiny amount of memory. Likewise on the server, while it is waiting for a response from other microservices, very few resources are consumed.

There is a more decoupled form of asynchronous architecture called event-driven programming that is gaining popularity in microservices applications. From the user client point of view, there is very little difference, though. Instead of a completeOrder function being called when the original request is acknowledged, a completeOrder function gets called when a CompleteOrder event is received later over another channel.

Karl Bielefeldt
  • 148.9k
  • 38
  • 285
  • 485