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

  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+缓冲通道

相关推荐
五岳41 分钟前
DTS按业务场景批量迁移阿里云MySQL库实战(上):技术选型和API对接
mysql·阿里云·dts
仍然.2 小时前
MYSQL--约束
数据库·mysql
老姚---老姚5 小时前
在windows下编译go语言编写的dll库
开发语言·windows·golang
野犬寒鸦6 小时前
从零起步学习并发编程 || 第一章:初步认识进程与线程
java·服务器·后端·学习
定偶6 小时前
MySQL安装
数据库·mysql
Zzzzmo_6 小时前
【MySQL】数据库约束 及 表的设计
数据库·mysql
我爱娃哈哈6 小时前
SpringBoot + Flowable + 自定义节点:可视化工作流引擎,支持请假、报销、审批全场景
java·spring boot·后端
我真的是大笨蛋7 小时前
Redo Log详解
java·数据库·sql·mysql·性能优化
Jess077 小时前
MySQL内置函数
数据库·mysql
凉年技术8 小时前
MySQL 5.6 2000 万行高频读写表新增字段实战:从慢执行到无锁落地全解析
mysql