How do I decide whether to make something asynchronous?
If the user does not need the result to continue, take it off the request path: send the email, resize the image, update the analytics in the background. Return fast with an acknowledgement. Keep it synchronous only when the next step depends on the answer.
Answered in
Reducing Latency: Find the Layer First, Then Pull the Right LeverNetwork, processing, database and rendering delay need different fixes. Caching, CDNs, indexes, async work, compression, connection reuse and tail latency.
Read the full analysisOther questions this article answers
More web performance questions
- What problem does HTTP/2 solve compared with HTTP/1.1?
- What is head-of-line blocking and does HTTP/2 remove it?
- Why does HTTP/3 use UDP?
- How can I check which HTTP version a site is using?
- What is the difference between latency, bandwidth and throughput?
- Why measure p95 and p99 instead of the average?
- What is the quickest win for network latency?
- What is a cold start?
Every answer on Crashtech is written by the editor of the article it comes from — never auto-summarised. Browse all answers or the Web Performance beat.