1 异步使用规则
1.1 为何使用异步
实时交易,由于调用链路太多活着某个链路耗时太多导致返回前端超时,所以用异步处理。
但是如果返回的结果要在前端展示,并作处理,要具体分析,通常是实时查询。
发起交易马上变更状态,异步处理后台调用逻辑
1.2 异步使用:注解异步任务
注意要点:
a 启动类Application:添加注解@EnableAsync注解
b 调用异步方法使用@Async注解
c 调用的异步类和被调用者不是同一个类
1.3 使用异步注意事项
- 有异常抛出打印日志,记得回更表里,不然容易异常被吃掉,前端也没有感知。
- 如果使用类似DDD,这种全查全更字段的模式,异步前更新状态的sql启用新的事务。(老事务在异步处理中如果超时,异步前的更新不起作用)
- 如果使用类似DDD,这种全查全更字段的模式,异步处理的方法体查询回更sql放到最后。防止异步处理查询太快而回更慢于异步前的sql,把状态回更回去。或者有条件的更新。
诸葛
浙公网安备 33010602011771号