如何触发查询分离
这个问题是说应该在什么时候保存一份数据到查询数据库,即什么时候触发查询分离这个动作。
一般来说,查询分离的触发逻辑分为3种:
修改业务代码,在写入常规数据后同步更新查询数据。
修改业务代码,在写入常规数据后,异步更新查询数据。
监控数据库日志,如有数据变更,则更新查询数据。
三种触发逻辑的优缺点和适用场景
优点
缺点
适用场景
修改业务代码,同步更新
保证数据的实时性和一致性
业务逻辑灵活可控
侵入业务代码
减缓写操作速度
业务场景比较简单
对写操作的响应性要求不高
修改业务代码,异步更新
不影响主流程
数据一致性较弱
业务场景比较简单
能够接受一定的数据不一致
监控数据库日志
不影响主流程
业务代码零侵入
数据一致性较弱
业务代码比较复杂
能够接受一定的数据不一致