同步与异步 · Sync vs Async
英文:synchronous and asynchronous(asynchronous 重音在 no)
后端与数据库难度:进阶 ★★
🗣️一句话大白话
同步:交完任务站在原地等结果,不做别的;异步:交完任务拿个凭证先走,干完了通知你。AI 生成内容慢、发邮件慢、处理视频慢——这些任务几乎都该异步。
🎬真实场景
用户上传视频要转码 10 分钟。同步做法:页面转圈 10 分钟,用户早跑了。异步做法:立刻返回「已提交,转码完成会通知你」,后台慢慢处理,好了发通知。
📮你可以这样说
「「视频转码改成异步:接口立刻返回任务 ID,后台队列处理,处理完写状态。前端轮询或等通知查结果。」」
⚠️边界与常见误解
- ▸异步带来新问题:怎么知道做完了?(轮询或通知)失败了怎么办?(重试与状态标记)
- ▸用户眼前的操作要同步快返回,耗时操作一律丢后台
- ▸异步任务的状态必须可查询:它现在在排队、在跑、还是失败了