工作中遇到的问题,如何解决的

  1. gorm update 一条记录的某个字段后,立刻(1ms)select这条记录,会有读取不到最新结果的情况:

transaction已经提交,数据最后也是更新的。

猜测原因:MySQL没能及时把那条很大的record"刷盘"到磁盘

TODO:了解MySQL更新record 字段的流程和原理。

解决方法:1. 每次update后手动延迟一定时间;2. 修改技术方案,避免单个field过大

DBA:使用了DAL中间件,update是master库,select是从库。-->强制读主库。

  1. 主协程退出,子协程全部退出的原理

  2. consumer处理业务逻辑超时,如何处理

使用超时context;ratelimiter+缓冲通道

相关推荐
J2K13 分钟前
JDK都25了,你还没用过ZGC?那真得补补课了
java·jvm·后端
EMQX14 分钟前
ESP32 + MCP over MQTT:通过大模型控制智能硬件设备
后端·mcp
郭京京15 分钟前
go框架gin(中)
后端·go
郭京京16 分钟前
go框架gin(下)
后端·go
林树的编程频道17 分钟前
单例模式的推导
后端
就是帅我不改18 分钟前
揭秘Netty高性能HTTP客户端:NIO编程的艺术与实践
后端·面试·github
Ray6622 分钟前
SugLucene索引构建
后端
舒一笑1 小时前
Saga分布式事务框架执行逻辑
后端·程序员·设计
Emma歌小白1 小时前
完整后台模块模板
后端
得物技术1 小时前
MySQL单表为何别超2000万行?揭秘B+树与16KB页的生死博弈|得物技术
数据库·后端·mysql