Asynchronous
Asynchronous processing starts work without waiting for the entire task to finish.
What is it?
Asynchronous processing lets a system start a task and continue with other work before that task is complete.
The result arrives later through a callback, notification, status check, or event. The user does not have to keep the original request open.
Start now. Finish when ready.
Think of it like...
Think of a restaurant that gives you a number after you order. You can sit, browse, or leave; the kitchen keeps working and calls you when the meal is ready.
What does it do?
It separates accepting work from completing work. That makes slow or unpredictable tasks easier to run without freezing the user experience.
Trade-off: users get faster acknowledgement, but the product must explain progress, failure, retries, and eventual completion.
Where is it used?
Use it when work can take seconds or minutes, does not need to block the next user action, or benefits from smoothing traffic into a queue.
Example
A monthly report export
A PM clicks “Export report.” The product immediately confirms that the export has started, then generates the file in a worker. When it is ready, the user receives a notification and download link.
PM perspective: define the acknowledgement, progress state, timeout, retry policy, and what happens when the job fails.
How it connects
A queue absorbs bursts, a worker performs the task, and an event or status endpoint communicates the outcome. Observability is essential because the user cannot see the work directly.
Do Not Confuse
Asynchronous
The caller can continue before the work finishes. It is about coordination and waiting.
Synchronous
The caller waits for the operation to return before continuing.
Parallel
Multiple tasks run at the same time. Async work may still run one-at-a-time.
Async does not automatically mean faster, parallel, or successful. It means completion is decoupled from the initial request.
Topic Glossary
| ENGLISH TERM | 中文 | SIMPLE ENGLISH | 中文小白理解 |
|---|---|---|---|
| Asynchronous | 异步 | Work starts without waiting for completion. | 先开始任务,不必等它做完。 |
| Synchronous | 同步 | The caller waits for the result. | 必须等结果回来才能继续。 |
| Queue | 队列 | A waiting line for work. | 任务排队等待处理。 |
| Worker | 工作进程 | A process that performs background work. | 在后台真正执行任务的程序。 |
| Callback | 回调 | A function called when work finishes. | 完成后通知系统的函数。 |
What to Remember
- Asynchronous processing starts work without waiting for the entire task to finish.
- It improves responsiveness by separating acknowledgement from completion.
- Good async products make status, failure, retry, and completion visible.