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

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

相关推荐
yumgpkpm4 分钟前
hadoop集群搭建 (超详细) 接入Impala、Hive,AI 大模型的数据底座
hive·hadoop·mysql·zookeeper·flink·kafka·hbase
武子康6 分钟前
大数据-185 Logstash 7 入门实战:stdin/file 采集、sincedb/start_position 机制与排障
大数据·后端·logstash
nbsaas-boot7 分钟前
Java 还是 Go?——从工程规模到长期演进的技术选型思考
java·开发语言·golang
想搞艺术的程序员13 分钟前
Go语言环形队列:原理剖析、编程技巧与核心优势
后端·缓存·golang
资深web全栈开发16 分钟前
Golang 最常用的库介绍
开发语言·后端·golang
都是蠢货17 分钟前
mysql中null是什么意思?
android·数据库·mysql
源码获取_wx:Fegn089520 分钟前
基于springboot + vue考勤管理系统
java·开发语言·vue.js·spring boot·后端·spring·课程设计
Haooog23 分钟前
RabbitMQ面试题(不定时更新)
分布式·后端·面试·rabbitmq·消息中间件
爱技术的阿呆23 分钟前
MySQL子查询及其案例
数据库·mysql
ULTRA??42 分钟前
排序算法之快排与TIMSORT的比较测试,python
c++·python·算法·golang