最近有个线上项目数据库的 IO被打满,由于涉及业务是高频读写操作,没有加缓存,导致数据库 IO压力很大,阿里云 RDS频繁出现告警。最开始的方案是在业务逻辑中控制,当向mysql写入数据时, 更新数据到redis当中。 考虑到埋点比较多,容易出错,而且业务改动量大。因此考察通过监控binlog来充当消息中介功能,将 binlog写入 redis,系统直接读 redis缓存即可。通过测试表明,这种方案还是靠谱的。 优点有如下:不需要埋点,原有的业务没有任何影响。减少了服务之间的藕合。声明:本文仅代表作者观点,不代表本站立场。如果侵犯到您的合法权益,请联系我们删除侵权资源!如果遇到资源链接失效,请您通过评论或工单的方式通知管理员。未经允许,不得转载,本站所有资源文章禁止商业使用运营!

下载安装【程序员客栈】APP
实时对接需求、及时收发消息、丰富的开放项目需求、随时随地查看项目状态
评论