[发明专利]一种多机房缓存同步的实现方法在审
申请号: | 202010075711.0 | 申请日: | 2020-01-22 |
公开(公告)号: | CN111324664A | 公开(公告)日: | 2020-06-23 |
发明(设计)人: | 蔡林;崔桂新;张宁;吴小龙;贾彩建;刘俊杰 | 申请(专利权)人: | 北京大生在线科技有限公司 |
主分类号: | G06F16/27 | 分类号: | G06F16/27;G06F16/2455;G06F16/28 |
代理公司: | 北京联创佳为专利事务所(普通合伙) 11362 | 代理人: | 刘美莲 |
地址: | 100085 北京*** | 国省代码: | 北京;11 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 一种 机房 缓存 同步 实现 方法 | ||
本发明公开了一种多机房缓存同步的实现方法,包括以下步骤:S1,在负责读写的机房部署拦截器和消息中间件,在其他负责只读的机房部署监听器,所述监听器订阅来自消息中间件发送的指令;所述的负责读写的机房和负责只读的机房位于不同的地理区域,并通过有限带宽的网络专线进行连接;S2,拦截器拦截负责读写机房的缓存key及缓存动作,并发送相应的指令至消息中间件进行广播,其他负责只读服务的机房的监听器接收所述消息中间件的指令;执行监听器收到的指令,对相应缓存中的key进行删除或更新操作。本发明可以保证在极小带宽的占用下实现多机房的缓存数据的快速、实时一致。
技术领域
本发明涉及一种多机房缓存同步的实现方法,属于缓存同步技术领域。
背景技术
很多公司随着业务的不断扩展,会在海外多个数据中心进行应用的部署,其中国国内数据中心作为主数据中心提供读写服务,其他的海外中心仅提供只读的服务,且海外数据中心在进行读服务时,若在缓存中没有相应的数据,则会将从本地数据库中读到的数据存储到缓存中。但主数据中心对数据进行更新时如何保证其他数据中心即时的读取到最新的数据是多数据中心数据一致性的一个挑战。尤其是海外数据中心与国内数据中心专线带宽有限的情况下,如何保证对带宽极少占用情况下实现多机房的数据一致性将变的更加复杂。
目前,行业内多数据中心的部署方式一般为一写多读的方式,即主中心提供读写服务,其他数据中心提供只读服务,对于所有的写回到主数据中心。行业中有很多技术方案来保障多机房的缓存数据的最终一致性,主要包括如下几种方式:
1)对主数据中心的缓存服务器设置从缓存服务器,多只读数据中心的缓存服务器为主数据中心缓存服务器的从服务器,当主数据中心的缓存服务器的数据发生变化时,近实时的同步到不同的数据中心的缓存服务器,实现数据的一致性,然而该方案的缺点是对带宽的占用非常大,例如:当主中心的缓存数据在高峰期时会有几百兆的数据变更,而几百兆的数据变更会导致多海外数据中心的带宽占用非常大。
2)在主数据中心发生写缓存服务时,异步将缓存同步写到其他的数据中心的缓存服务器中。但是该方案的缺点是:缓存key对应的value内容(全部同步到其他的数据中心的缓存中)对带宽的占用非常大,而且,如果缓存的value比较大,对带宽的占用比较大,那么在高峰期带宽满了,数据同步就会出现延时,数据更新不够实时;另外,对代码的修改成本较大。
发明内容
本发明的目的在于,提供一种多机房缓存同步的实现方法,它可以有效解决现有技术中存在的问题,尤其是进行缓存同步时,对带宽的占用非常大,数据更新不实时的问题。
为解决上述技术问题,本发明采用如下的技术方案:一种多机房缓存同步的实现方法,包括以下步骤:
S1,在负责读写的机房部署拦截器和消息中间件,在其他负责只读的机房部署监听器,所述监听器订阅来自消息中间件发送的指令;所述的负责读写的机房和负责只读的机房位于不同的地理区域,并通过有限带宽的网络专线进行连接;
S2,拦截器拦截负责读写机房的缓存操作的API方法名和参数名(所述方法名中包含有key的名字),解析出针对哪个key进行了什么动作,然后发送相应的指令至消息中间件进行广播,其他负责只读服务的机房的监听器接收所述消息中间件的指令;执行监听器收到的指令,对相应缓存中的key进行删除或更新操作;其中,缓存中的数据以Key,Value的形式存储在内存中。
优选的,步骤S1还包括:在拦截器底层对缓存key及缓存动作进行指令定义,生成配置表;步骤S2中,拦截器拦截负责读写机房的缓存key及缓存动作后,查询配置表,然后发送指令至消息中间件进行广播。
优选的,根据拦截到的key的信息在配置表中模糊查询该类型的key的策略,从而可以提高匹配的效率。。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于北京大生在线科技有限公司,未经北京大生在线科技有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/202010075711.0/2.html,转载请声明来源钻瓜专利网。