binlog真的是银弹吗?有些时候也让人头疼

大家好,我是架构摆渡人。这是实践经验系列的第三篇文章,这个系列会给大家分享很多在实际工作中有用的经验,如果有收获,还请分享给更多的朋友。

binlog 用于记录用户对数据库操作的SQL语句信息,同时主从复制也是依靠binlog来实现的,由此可见binlog的重要性。

在业务中的使用场景

binlog除了数据库本身使用它实现一些功能,在业务中我们也会经常依靠binlog实现各种需求。

数据异构

基于binlog的数据异构是用的最多的一个场景,可以通过监听binlog将数据异构成其他维度,方便查询。

比如多表聚合成一张宽表,搜索相关的异构到ES中,订单可以异构成买家视角,卖家视角等等诸多场景。

缓存失效

对于高并发的互联网业务,数据库往往是最后的瓶颈,用缓存来提高性能是最常见的一种优化手段。也就是在访问数据库之后会将数据放入一份在缓存中,下次请求的时候直接从缓存取来提高响应速度和减少对数据库的压力。

一提到缓存,大家立马能想到的问题就是缓存和数据的一致性要怎么保障?这种还是得结合业务场景来讲,本身能用缓存的业务基本上还是能够接受短暂的不一致问题,也就是并非强一致性。

最常见的方式就是在操作数据后,立马对缓存进行操作。这样的方式意味着业务代码中都是这种缓存失效的代码,当然也有封装成注解的形式,让使用更加便捷。

binlog在这个场景中也能产生重大作用,可以基于binl

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值