- gorm update 一条记录的某个字段后,立刻(1ms)select这条记录,会有读取不到最新结果的情况:
transaction已经提交,数据最后也是更新的。
猜测原因:MySQL没能及时把那条很大的record"刷盘"到磁盘
TODO:了解MySQL更新record 字段的流程和原理。
解决方法:1. 每次update后手动延迟一定时间;2. 修改技术方案,避免单个field过大
DBA:使用了DAL中间件,update是master库,select是从库。-->强制读主库。
-
主协程退出,子协程全部退出的原理
-
consumer处理业务逻辑超时,如何处理
使用超时context;ratelimiter+缓冲通道