一种基于SpringCloud的联盟链无感发布方法技术

技术编号:30648199 阅读:24 留言:0更新日期:2021-11-04 01:00
本发明专利技术涉及一种基于SpringCloud的联盟链无感发布方法,Eureka服务注册中心中至少2个Eureka服务器分属联盟链中不同主体;服务以固定信息注册到Eureka服务注册中心;对更新的服务,联盟链中Eureka服务器竞争,将服务基于固定信息注册到胜出的、暂时对外停止服务Eureka服务器上并对外暴露固定信息,联盟链中活动的Eureka服务器竞争,请求端基于固定信息在胜出的Eureka服务器请求服务、平稳过渡。本发明专利技术减少对应研发人员修复数据的工作量,对联盟链中的Eureka服务器提出更高要求,基于计分、给予服务使用者更好的用户体验,对于服务发布方来说,可以达到无感发布。可以达到无感发布。

【技术实现步骤摘要】
一种基于SpringCloud的联盟链无感发布方法


[0001]本专利技术涉及电数字数据处理的
,特别涉及一种基于SpringCloud的联盟链无感发布方法。

技术介绍

[0002]停机维护是指网络服务的提供商,如网络游戏、博客等为了维护服务器的数据或对硬件作出变更,而必须完全关闭服务器或停止服务器的数据变化进行操作的行为。
[0003]随着人们生活要求的提高,对使用软件的性能、平稳的要求也越来越高,虽然在停机维护之前服务商一般会发布公告、提示停机维护的时间段,以提醒用户做好相应准备,然而停机维护期间用户确实无法使用服务商所提供的服务,用户对于软件的停机维护更新现象也确实越来越反感。
[0004]事实上,对于软件的平滑切换升级,领域内已经有一些实现方式,如nginx切换流量、金丝雀灰度发布等,然而,这些对于SpringCloud的成熟框架,在服务在发布更新将旧服务下线、Eureka还未进行健康检测的时间间隙内,服务依然处于上线状态,可能有流量进入该服务,大概率会导致此部分流量的异常。

技术实现思路

[0005]本专利技术解决了现有技术中存在的问题,提供了一种优化的基于SpringCloud的联盟链无感发布方法。
[0006]本专利技术所采用的技术方案是,一种基于SpringCloud的联盟链无感发布方法,所述SpringCloud的Eureka服务注册中心包括至少2个Eureka服务器;所有的Eureka服务器分属于联盟链中不同的主体;任一服务以固定信息注册到Eureka服务注册中心;对任一更新的服务,联盟链中所有的Eureka服务器竞争,Eureka服务器A胜出,将服务基于固定信息注册到Eureka服务注册中心的Eureka服务器A上并对外暴露所述固定信息,注册过程中,Eureka服务器A对外停止服务;请求端基于固定信息遍历Eureka服务注册中心,联盟链中活动的Eureka服务器竞争,Eureka服务器B胜出,请求端向Eureka服务器B请求服务。
[0007]优选地,所述Eureka服务注册中心中,联盟链的成员为其持有的Eureka服务器进行注册,Eureka服务注册中心分配任一Eureka服务器初始的权重系数。
[0008]优选地,任一Eureka服务器在每次被调用后,由联盟链的成员节点对其进行打分,基于打分对所述Eureka服务器的权重系数进行调整。
[0009]优选地,所述打分为表决制;联盟链的成员节点对Eureka服务器的调用表现进行举手表决,每预设次数的否决对Eureka服务器的权重系数进行降低,每预设次数的赞同对Eureka服务器初始的权重系数进行增加。
[0010]优选地,新服务注册在Eureka服务器时,联盟链中所有的Eureka服务器竞争,以权
重由高到低进行选择。
[0011]优选地,请求端请求服务时,联盟链中所有的Eureka服务器竞争,以权重由高到低进行请求。
[0012]优选地,所述Eureka服务器A在注册新服务时对外停止服务;注册完毕后开启;Eureka服务器A以权重由高到低与Eureka服务注册中心中的其他Eureka服务器进行匹配,若Eureka服务器B中相同的固定信息的服务与已注册的新服务不同,则Eureka服务器B对外停止服务,Eureka服务器A和Eureka服务器B同步此固定信息对应的新服务。
[0013]优选地,所述固定信息为服务提供方的主机名。
[0014]优选地,所述固定信息还包括服务提供方的端口。
[0015]优选地,所述请求端请求服务时,由代理服务LVS进行代理转发。
[0016]本专利技术涉及一种优化的基于SpringCloud的联盟链无感发布方法,在SpringCloud的Eureka服务注册中心包括至少2个Eureka服务器且所有的Eureka服务器分属于联盟链中不同的主体;所有的Eureka服务器同步信息;服务以固定信息注册到Eureka服务注册中心;基于此,对任一更新的服务,联盟链中所有的Eureka服务器竞争,Eureka服务器A胜出,将服务基于固定信息注册到Eureka服务注册中心的Eureka服务器A上并对外暴露所述固定信息,注册过程中,Eureka服务器A对外停止服务,而请求端可以基于固定信息遍历Eureka服务注册中心,联盟链中活动的Eureka服务器竞争,Eureka服务器B胜出,就可以请求服务、平稳过渡。
[0017]本专利技术一则解决了在服务更新发布时候请求异常的情况,避免了因此可能造成的异常数据,减少对应研发人员修复数据的工作量,二则对联盟链中的Eureka服务器提出更高的要求,基于计分、给予服务的使用者更好的用户体验,对于服务发布方来说,也可以达到无感发布。
具体实施方式
[0018]下面结合实施例对本专利技术做进一步的详细描述,但本专利技术的保护范围并不限于此。
[0019]本专利技术涉及一种基于SpringCloud的联盟链无感发布方法,所述SpringCloud的Eureka服务注册中心包括至少2个Eureka服务器;所有的Eureka服务器分属于联盟链中不同的主体;任一服务以固定信息注册到Eureka服务注册中心;对任一更新的服务,联盟链中所有的Eureka服务器竞争,Eureka服务器A胜出,将服务基于固定信息注册到Eureka服务注册中心的Eureka服务器A上并对外暴露所述固定信息,注册过程中,Eureka服务器A对外停止服务;请求端基于固定信息遍历Eureka服务注册中心,联盟链中活动的Eureka服务器竞争,Eureka服务器B胜出,请求端向Eureka服务器B请求服务。
[0020]所述Eureka服务注册中心中,联盟链的成员为其持有的Eureka服务器进行注册,Eureka服务注册中心分配任一Eureka服务器初始的权重系数。
[0021]任一Eureka服务器在每次被调用后,由联盟链的成员节点对其进行打分,基于打分对所述Eureka服务器的权重系数进行调整。
[0022]所述打分为表决制;联盟链的成员节点对Eureka服务器的调用表现进行举手表决,每预设次数的否决对Eureka服务器的权重系数进行降低,每预设次数的赞同对Eureka服务器初始的权重系数进行增加。
[0023]本专利技术中,Eureka服务注册中心面向联盟链的所有成员进行开放,联盟链的成员可以将其Eureka服务器注册在Eureka服务注册中心,进而一方面可以达到Eureka服务器被充分应用的目的,另一方面在联盟链的所有成员中可以达成互相的制约、互相的竞争,最终使得联盟链中的Eureka服务器达到更好的使用。
[0024]本专利技术中,当一个Eureka服务器进行新注册后,首先将被分配到初始的权重系数,一般来说为了保证一个新的Eureka服务器被充分调用,会将其权重系统分配在最高水平;每一次被调用后,成员节点对Eureka服务器进行打分,以表决制的形式,赞同为1,否决为0,当赞同的次数到达某个预设值时,则表示这本文档来自技高网
...

【技术保护点】

【技术特征摘要】
1.一种基于SpringCloud的联盟链无感发布方法,其特征在于:所述SpringCloud的Eureka服务注册中心包括至少2个Eureka服务器;所有的Eureka服务器分属于联盟链中不同的主体;任一服务以固定信息注册到Eureka服务注册中心;对任一更新的服务,联盟链中所有的Eureka服务器竞争,Eureka服务器A胜出,将服务基于固定信息注册到Eureka服务注册中心的Eureka服务器A上并对外暴露所述固定信息,注册过程中,Eureka服务器A对外停止服务;请求端基于固定信息遍历Eureka服务注册中心,联盟链中活动的Eureka服务器竞争,Eureka服务器B胜出,请求端向Eureka服务器B请求服务。2.根据权利要求1所述的一种基于SpringCloud的联盟链无感发布方法,其特征在于:所述Eureka服务注册中心中,联盟链的成员为其持有的Eureka服务器进行注册,Eureka服务注册中心分配任一Eureka服务器初始的权重系数。3.根据权利要求2所述的一种基于SpringCloud的联盟链无感发布方法,其特征在于:任一Eureka服务器在每次被调用后,由联盟链的成员节点对其进行打分,基于打分对所述Eureka服务器的权重系数进行调整。4.根据权利要求3所述的一种基于SpringCloud的联盟链无感发布方法,其特征在于:所述打分为表决制;联盟链的成员节点对Eureka服务器的调用表现进行举手表决,每预设次数的否决对Eureka...

【专利技术属性】
技术研发人员:吴志华陆昕鲍碧波
申请(专利权)人:绿漫科技有限公司
类型:发明
国别省市:

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

1