基于ETCD实现配置监听的方法和系统技术方案

技术编号:35573738 阅读:13 留言:0更新日期:2022-11-12 15:58
本发明专利技术提供了一种基于ETCD实现配置监听的方法和系统,应用于web服务端;包括:建立与目标客户端的长连接,将目标客户端的初始配置信息存储在web服务端的ETCD;在接收到目标客户端的配置监听请求后,建立长轮询策略;基于初始配置信息和长轮询策略,对目标客户端进行配置监听。本发明专利技术缓解了现有技术中存在的配置监听方法无法跨语言通用的技术问题。监听方法无法跨语言通用的技术问题。监听方法无法跨语言通用的技术问题。

【技术实现步骤摘要】
基于ETCD实现配置监听的方法和系统


[0001]本专利技术涉及配置监听
,尤其是涉及一种基于ETCD实现配置监听的方法和系统。

技术介绍

[0002]现有的配置监听方案比较多,通过zookeeper或者ETCD都提供原生的配置监控,例如:Zookeeper的watch机制或者ETCD的租约watch机制都可以实现配置的监听。然而,现有技术中利用原生的配置监听方法,都需要使用原生的客户端,每种语言都有自己的客户端方法,无法做到跨语言通用。

技术实现思路

[0003]有鉴于此,本专利技术的目的在于提供一种基于ETCD实现配置监听的方法和系统,以缓解现有技术中存在的配置监听方法无法跨语言通用的技术问题。
[0004]第一方面,本专利技术实施例提供了一种基于ETCD实现配置监听的方法,应用于web服务端;包括:建立与目标客户端的长连接,将所述目标客户端的初始配置信息存储在所述web服务端的ETCD;在接收到目标客户端的配置监听请求后,建立长轮询策略;基于所述初始配置信息和所述长轮询策略,对所述目标客户端进行配置监听。
[0005]进一步地,基于所述ETCD中的初始配置信息和所述长轮询策略,对所述目标客户端进行配置监听,包括:基于所述长轮询策略,监听所述目标客户端的配置请求;所述配置请求包括所述目标客户端的当前配置信息;响应于所述目标客户端的配置请求,判断所述当前配置信息与所述初始配置信息是否相同;如果不同,则将所述初始配置信息返回给所述目标客户端。
[0006]进一步地,判断所述当前配置信息与所述初始配置信息是否相同,包括:判断所述当前配置信息的MD5值与所述初始配置信息的MD5值是否相同。
[0007]进一步地,还包括:响应于所述目标客户端的配置请求,若判断所述当前配置信息与所述初始配置信息相同,则将所述配置请求保持预设时间段;判断所述预设时间段内所述初始配置信息是否发生变化;如果是,则将变化后的配置信息返回到所述目标客户端。
[0008]第二方面,本专利技术实施例还提供了一种基于ETCD实现配置监听的系统,应用于web服务端;包括:第一建立模块,第二建立模块和监听模块;其中,所述第一建立模块,用于建立与所述目标客户端的长连接,将所述目标客户端的初始配置信息存储在所述web服务端的ETCD;所述第二建立模块,用于在接收到目标客户端的配置监听请求后,建立长轮询策略;所述监听模块,用于基于所述初始配置信息和所述长轮询策略,对所述目标客户端进行配置监听。
[0009]进一步地,所述监听模块,包括:监听单元和判断单元;其中,所述监听单元,用于基于所述长轮询策略,监听所述目标客户端的配置请求;所述配置请求包括所述目标客户端的当前配置信息;所述判断单元,用于响应于所述目标客户端的配置请求,判断所述当前
配置信息与所述初始配置信息是否相同;如果不同,则将所述初始配置信息返回给所述目标客户端。
[0010]进一步地,所述判断单元,还用于:判断所述当前配置信息的MD5值与所述初始配置信息的MD5值是否相同。
[0011]进一步地,所述判断单元,还用于:响应于所述目标客户端的配置请求,若判断所述当前配置信息与所述初始配置信息相同,则将所述配置请求保持预设时间段;判断所述预设时间段内所述初始配置信息是否发生变化;如果是,则将变化后的配置信息返回到所述目标客户端。
[0012]第三方面,本专利技术实施例还提供了一种电子设备,包括存储器、处理器及存储在所述存储器上并可在所述处理器上运行的计算机程序,所述处理器执行所述计算机程序时实现上述第一方面所述的方法的步骤。
[0013]第四方面,本专利技术实施例还提供了一种具有处理器可执行的非易失的程序代码的计算机可读介质,所述程序代码使所述处理器执行上述第一方面所述方法。
[0014]本专利技术提供了一种基于ETCD实现配置监听的方法和系统,包括:建立与目标客户端的长连接,将目标客户端的初始配置信息存储在web服务端的ETCD;在接收到目标客户端的配置监听请求后,建立长轮询策略;基于初始配置信息和长轮询策略,对目标客户端进行配置监听。本专利技术提供方法可以通过http的方式实现跨语言通用,并且对客户端的改造较小,更便捷,缓解了现有技术中存在的配置监听方法无法跨语言通用的技术问题。
附图说明
[0015]为了更清楚地说明本专利技术具体实施方式或现有技术中的技术方案,下面将对具体实施方式或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图是本专利技术的一些实施方式,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
[0016]图1为本专利技术实施例提供的一种基于ETCD实现配置监听的方法的流程图;
[0017]图2为本专利技术实施例提供的一种配置变化时的请求返回示意图;
[0018]图3为本专利技术实施例提供的一种配置未发生变化时的请求返回示意图;
[0019]图4为本专利技术实施例提供的一种基于ETCD实现配置监听的系统的示意图;
[0020]图5为本专利技术实施例提供的一种监听模块的示意图。
具体实施方式
[0021]下面将结合附图对本专利技术的技术方案进行清楚、完整地描述,显然,所描述的实施例是本专利技术一部分实施例,而不是全部的实施例。基于本专利技术中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本专利技术保护的范围。
[0022]实施例一:
[0023]图1是根据本专利技术实施例提供的一种基于ETCD实现配置监听的方法的流程图,该方法应用于web服务端。如图1所示,该方法具体包括如下步骤:
[0024]步骤S102,建立与目标客户端的长连接,将目标客户端的初始配置信息存储在web服务端的ETCD。
[0025]分布式注册服务中心ETCD是用于共享配置和服务发现的分布式、一致性的key

value存储系统,提供了数据TTL失效、数据改变监视、多值、目录监听、分布式锁原子操作等功能。
[0026]步骤S104,在接收到目标客户端的配置监听请求后,建立长轮询策略。
[0027]步骤S106,基于初始配置信息和长轮询策略,对目标客户端进行配置监听。
[0028]具体地,基于长轮询策略,监听目标客户端的配置请求;配置请求包括目标客户端的当前配置信息;
[0029]响应于目标客户端的配置请求,判断当前配置信息与初始配置信息是否相同;如果不同,则将初始配置信息返回给目标客户端。
[0030]具体地,判断当前配置信息的MD5值与初始配置信息的MD5值是否相同。
[0031]响应于目标客户端的配置请求,若判断当前配置信息与初始配置信息相同,则将配置请求保持预设时间段;
[0032]判断预设时间段内初始配置信息是否发生变化;如果是,则将变化后的配置信息返回到目标客户端。
[0033]本专利技术提供了一种基于ETCD实现配置监听的方法本文档来自技高网
...

【技术保护点】

【技术特征摘要】
1.一种基于ETCD实现配置监听的方法,其特征在于,应用于web服务端;包括:建立与目标客户端的长连接,将所述目标客户端的初始配置信息存储在所述web服务端的ETCD;在接收到目标客户端的配置监听请求后,建立长轮询策略;基于所述初始配置信息和所述长轮询策略,对所述目标客户端进行配置监听。2.根据权利要求1所述的方法,其特征在于,基于所述ETCD中的初始配置信息和所述长轮询策略,对所述目标客户端进行配置监听,包括:基于所述长轮询策略,监听所述目标客户端的配置请求;所述配置请求包括所述目标客户端的当前配置信息;响应于所述目标客户端的配置请求,判断所述当前配置信息与所述初始配置信息是否相同;如果不同,则将所述初始配置信息返回给所述目标客户端。3.根据权利要求2所述的方法,其特征在于,判断所述当前配置信息与所述初始配置信息是否相同,包括:判断所述当前配置信息的MD5值与所述初始配置信息的MD5值是否相同。4.根据权利要求2所述的方法,其特征在于,还包括:响应于所述目标客户端的配置请求,若判断所述当前配置信息与所述初始配置信息相同,则将所述配置请求保持预设时间段;判断所述预设时间段内所述初始配置信息是否发生变化;如果是,则将变化后的配置信息返回到所述目标客户端。5.一种基于ETCD实现配置监听的系统,其特征在于,应用于web服务端;包括:第一建立模块,第二建立模块和监听模块;其中,所述第一建立模块,用于建立与目标客户端的长连接,将所述目标客户端的初始配置信息存储在所述web服务端的ET...

【专利技术属性】
技术研发人员:石志远李凡平王堃
申请(专利权)人:以萨技术股份有限公司
类型:发明
国别省市:

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1