入队Enqueue
你可能会说
上传以后先别让页面一直等,把转码任务放进队列并返回任务 ID,之后能查到处理状态。
入队是把待处理任务交给队列保存,让请求先拿到任务 ID,再由后续处理者执行。例如用户上传视频后,接口把转码任务入队并立即返回任务 ID,页面随后按状态显示排队、处理中或完成;批量发送通知时,也可以先把每封通知任务放进队列。入队成功只说明任务被队列接受,不等于转码或通知已经完成;队列也不一定按先进先出排列,不能据此承诺恰好一次处理。
也常被叫作入列
延伸阅读 · 权威出处
上传以后先别让页面一直等,把转码任务放进队列并返回任务 ID,之后能查到处理状态。
用户不知道任务是否还在运行。
先解决请求卡住的问题:如果上传请求直接做转码,用户只能一直等待,转码失败还会表现成整次上传失败;入队让接口先接收任务并返回任务 ID。
让状态反馈回来:后续处理者取出任务并更新排队、处理中、完成或失败状态,页面用任务 ID 查询这些结果;失败时可以按系统规则重试或提示用户。
改善是可观察的:上传请求能较快结束,用户能看到任务状态变化,失败也能定位到任务;但入队本身不保证 FIFO 顺序,也不保证恰好一次处理。
把上传后的转码任务入队,接口先返回可追踪的任务 ID;页面显示已入队、处理中、完成和失败状态。请验证任务确实进入队列、失败能反馈到状态查询,并确认入队成功不会被误显示成转码完成。