需求描述
将现在一些耗时接口,转化为异步。
模型
实现AsyncTask接口,动态代理
@MQAsync
{
"uid": 1,
"status": "enqueued",
"type": "documentAdditionOrUpdate",
"canceledBy": null,
"details": { },
"error": null,
"duration": null,
"enqueuedAt": "2021-08-10T14:29:17.000000Z",
"startedAt": null,
"finishedAt": null
}
Task status
- enqueued: the task has been received and will be processed soon
- processing: the task is being processed
- succeeded: the task has been successfully processed
- failed: a failure occurred when processing the task. No changes were made to the database
- canceled: the task was canceled
流程
当调用异步任务时,会返回一个summarized task object,status初始状态为enqueued,当开始处理时,status变成processing,当结束时,变为succeeded。