[发明专利]一种主从服务器的日志复制方法、装置及日志存储系统在审
申请号: | 202010312788.5 | 申请日: | 2020-04-20 |
公开(公告)号: | CN111522789A | 公开(公告)日: | 2020-08-11 |
发明(设计)人: | 陈云;张超 | 申请(专利权)人: | 京东数字科技控股有限公司 |
主分类号: | G06F16/182 | 分类号: | G06F16/182;G06F16/18 |
代理公司: | 北京华夏泰和知识产权代理有限公司 11662 | 代理人: | 曾军;李雪 |
地址: | 100176 北京市大兴区北京经*** | 国省代码: | 北京;11 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 一种 主从 服务器 日志 复制 方法 装置 存储系统 | ||
本申请涉及一种主从服务器的日志复制方法、装置及日志存储系统,该方法包括:当接收到请求派发线程派发的日志存储请求时,将所述日志存储请求对应的待存储消息存储到本地;将满足预设条件的待存储消息组成数据块;将所述数据块复制到从服务器。该技术方案将多条待存储消息合并为数据块进行传输,可以有效减少主从服务器之间的交互次数,即降低了主从服务器之间的总RTT,从而避免主服务器响应客户端的时间随着待存储消息数量的增加而线性增加,提高了主从服务器之间的消息复制效率,提高整个日志存储系统的性能。
技术领域
本申请涉及计算机技术领域,尤其涉及一种主从服务器的日志复制方法、装置及日志存储系统。
背景技术
主从复制是指一台服务器充当主服务器,另一台或多台服务器充当从服务器,将主服务器中的数据自动复制到从服务器之中。
为保证日志复制的可靠性和一致性,日志的主从复制一般采取同步复制方法,即当主服务器写入日志后,所有的从服务器都复制完成该日志才返回给客户端响应。
如图1所示,对于每个请求,主服务器(master)都在收到从服务器(slave)响应后才发送下一个请求。主从服务器之间的往返时延(Round-Trip Time,以下简称RTT)由三个部分决定:即链路的传播时间t1、slave的处理时间t2以及路由器的缓存中的排队和处理时间t3。
实际场景中,t2和t3可以预估,t2大概在0.5~1毫秒左右,t3为微秒级。而t1随着master和slave物理距离的增加而增长。如果master和slave部署在同一个机房,t1在0.01毫秒左右,若master和slave部署在本地不同机房,则t1在0.1毫秒左右,若是master和slave部署在异地,则根据实际距离,t1将会达到1~100毫秒左右。
当master有一个请求待处理时,RTT为t1+t2+t3。但是当master同时处理10个请求时,第十个请求的RTT为10t1+10t2+10t3。可以看到,RTT随着并发量的增加而线性增加,尤其是当master和slave距离较远时,RTT随着并发量的增加而暴增。
发明内容
为了解决上述技术问题或者至少部分地解决上述技术问题,本申请实施例提供了一种主从服务器的日志复制方法、装置及日志存储系统。
第一方面,本申请实施例提供了一种主从服务器的日志复制方法,所述方法包括:
当接收到请求派发线程派发的日志存储请求时,将所述日志存储请求对应的待存储消息存储到本地;
将满足预设条件的待存储消息组成数据块;
将所述数据块复制到从服务器。
可选的,所述预设条件包括:
当前未复制到所述从服务器的待存储消息的数据长度之和达到预设数据长度,和/或,当前时间与上一次将数据块复制到所述从服务器的复制时间之间的时间间隔达到预设时间间隔。
可选的,所述将所述数据块复制到从服务器,包括:
当未收到所述从服务器返回的对上一个数据块的复制成功响应时,将当前数据块复制到所述从服务器。
可选的,所述方法还包括:
当所述待存储消息存储到本地后,释放所述请求派发线程;其中,所述待存储消息存储到本地包括:所述待存储消息被写入到本地内存缓冲队列、本地缓存或本地磁盘。
可选的,所述方法还包括:
当接收到所述从服务器反馈的成功复制的日志偏移量时,确定所述日志偏移量之前均已复制成功;
更新本地的复制完成位置为所述日志偏移量。
可选的,所述方法还包括:
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于京东数字科技控股有限公司,未经京东数字科技控股有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/202010312788.5/2.html,转载请声明来源钻瓜专利网。
- 上一篇:一种用于皮肤病智能诊断机器人
- 下一篇:一种用于检测视频类别的方法