定制spring-cloud-gateway限流器来解决线上问题问题排查生产环境高峰期出现用户请求"死循环"问题,通过分析日志制定限流策略,基于Spring Cloud Gateway的RequestRateLimiter实现同用户、同接口、同入参的限流,并优化了RedisRateLimiter脚本,解决了时间回拨等问题,同时支持开关控制和异常处理。2023-11-30 spring-cloud-gateway 限流
spring-cloud-gateway内存泄漏?问题排查Spring Cloud Gateway处理大文件上传时出现内存溢出问题,排查发现是RetryGatewayFilter导致AdaptCachedBodyGlobalFilter缓存整个请求体。解决方案包括使用unpooled内存分配、增加请求大小限制Filter,并避免在网关直接处理文件上传。2023-11-14 spring-cloud-gateway
mysql流式查询下的性能隐患问题排查MySQL流式查询利用TCP滑动窗口实现数据实时传输,避免大数据量查询OOM,但会独占连接。同时长查询可能因MDL锁阻塞DDL操作,导致系统崩溃,需设置超时或采用无锁变更方案解决。2023-10-8
shardingsphere-proxy和流式查询问题排查Canal全量ETL在ShardingSphere-Proxy分库分表场景下出现流式查询异常,原因是连接缓存池设计缺陷导致连接串用,SET命令未正确执行,最终因net_write_timeout超时断开连接。深入分析发现Proxy的流式查询机制与连接模式相关,提供了修复连接串用问题和调整数据源配置两种解决方案。2023-9-20 shardingsphere 流式查询
线上问题分析——maven循环依赖导致传递依赖失效问题问题排查文章分析了一个诡异的ClassNotFound异常问题,发现是由于Maven依赖冲突机制导致json-path包未被正确引入。通过构造最小化场景,深入解析了Maven处理循环依赖的机制,最终提出三种解决方案,并强调遵守开发规范的重要性。2023-7-14 maven
线上问题分析——shardingsphere表结构缓存导致的字段错位问题排查文章分析了ShardingSphere JDBC在表结构变更后出现的字段映射异常问题,发现是由于内存缓存未及时更新导致字段错位。深入探讨了MyBatis映射机制、ShardingSphere内部实现原理,并提出了避免使用select *、通过Proxy更新表结构等解决方案。2023-6-14 shardingsphere
mysql流式查询中的一个坑问题排查摘要:文章分析了流式查询导出数据时出现的数据库连接复用问题,发现事务中map操作与流式查询共用连接导致冲突,提出通过创建新事务并设置NOT_SUPPORTED传播级别来隔离操作,同时解释了不同环境表现差异的原因。2023-10-8
RocketMQ 4.6.0 Message Trace 功能异常排查问题排查文章详细分析了RocketMQ 4.6.0中Message Trace功能的三个典型问题:测试环境因语言切换报错、生产环境缺少RMQ_SYS_TRACE_TOPIC导致路由失败、开发环境仅显示生产者信息。通过源码分析发现4.6.0版本存在TraceDispatcher启动bug,在4.6.1版本中修复。2024-1-9