binlog有效期

来源:1-1 课程导学

loserwang

2022-05-28

目前的索引流程为:

  • 在投放系统中进行将数据保存到文件(并且记录最后一个 binlog 文件和 position, 这个是看您其他回答说的
  • 检索系统启动j时加载全量文件,完成全量索引的加载
  • 检索系统启动后从最后一个 binlog 文件和 position开始监听binlog, 增加增量索引,

这样确实可以保证全量。但是前提是不重启,或者重启的间隔很短。 毕竟binlog显然不可能是永久的(所占空间太大了),如果在最后一个 binlog 文件和 position失效前,并没有重新更新备份和位置,那检索系统重启监听时不就缺失消息了吗?

我个人的改进想法:
1.备份时肯定是记录bin最后一个 binlog 文件和 position ,更新机制我有两种想法:

 - 法一:定时任务,每隔一段时间备份一次(类似转储点)
 - 法二:懒加载。每次读取全量索引前会先严重binlog位置信息是否过期,如果过期,就清除。
  1. 同时,监听增量索引的时候就不断地更新地更新 binlog 文件和 position,这样每次重启的时候就不需要重试这么多了

我的思路是否可靠?是否有更好的改进?目前工业界是如何进行处理的呢?希望能得到您的解答。

写回答

1回答

张勤一

2022-05-29

在服务运行的过程中,定时更新全量数据和 binlog 的 position 即可,不需要考虑的太复杂。

1
0

Spring Cloud微服务架构 设计实现广告系统

广告营销系统,未来大中型企业的标配

2136 学习 · 927 问题

查看课程