一种残膜回收机防缠绕挑膜装置的制 一种秧草收获机用电力驱动行走机构

一种基于SpringCloud的联盟链无感发布方法与流程

2021-11-03 21:30:00 来源:中国专利 TAG:
一种基于springcloud的联盟链无感发布方法
技术领域
1.本发明涉及电数字数据处理的技术领域,特别涉及一种基于springcloud的联盟链无感发布方法。


背景技术:

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


技术实现要素:

5.本发明解决了现有技术中存在的问题,提供了一种优化的基于springcloud的联盟链无感发布方法。
6.本发明所采用的技术方案是,一种基于springcloud的联盟链无感发布方法,所述springcloud的eureka服务注册中心包括至少2个eureka服务器;所有的eureka服务器分属于联盟链中不同的主体;任一服务以固定信息注册到eureka服务注册中心;对任一更新的服务,联盟链中所有的eureka服务器竞争,eureka服务器a胜出,将服务基于固定信息注册到eureka服务注册中心的eureka服务器a上并对外暴露所述固定信息,注册过程中,eureka服务器a对外停止服务;请求端基于固定信息遍历eureka服务注册中心,联盟链中活动的eureka服务器竞争,eureka服务器b胜出,请求端向eureka服务器b请求服务。
7.优选地,所述eureka服务注册中心中,联盟链的成员为其持有的eureka服务器进行注册,eureka服务注册中心分配任一eureka服务器初始的权重系数。
8.优选地,任一eureka服务器在每次被调用后,由联盟链的成员节点对其进行打分,基于打分对所述eureka服务器的权重系数进行调整。
9.优选地,所述打分为表决制;联盟链的成员节点对eureka服务器的调用表现进行举手表决,每预设次数的否决对eureka服务器的权重系数进行降低,每预设次数的赞同对eureka服务器初始的权重系数进行增加。
10.优选地,新服务注册在eureka服务器时,联盟链中所有的eureka服务器竞争,以权
重由高到低进行选择。
11.优选地,请求端请求服务时,联盟链中所有的eureka服务器竞争,以权重由高到低进行请求。
12.优选地,所述eureka服务器a在注册新服务时对外停止服务;注册完毕后开启;eureka服务器a以权重由高到低与eureka服务注册中心中的其他eureka服务器进行匹配,若eureka服务器b中相同的固定信息的服务与已注册的新服务不同,则eureka服务器b对外停止服务,eureka服务器a和eureka服务器b同步此固定信息对应的新服务。
13.优选地,所述固定信息为服务提供方的主机名。
14.优选地,所述固定信息还包括服务提供方的端口。
15.优选地,所述请求端请求服务时,由代理服务lvs进行代理转发。
16.本发明涉及一种优化的基于springcloud的联盟链无感发布方法,在springcloud的eureka服务注册中心包括至少2个eureka服务器且所有的eureka服务器分属于联盟链中不同的主体;所有的eureka服务器同步信息;服务以固定信息注册到eureka服务注册中心;基于此,对任一更新的服务,联盟链中所有的eureka服务器竞争,eureka服务器a胜出,将服务基于固定信息注册到eureka服务注册中心的eureka服务器a上并对外暴露所述固定信息,注册过程中,eureka服务器a对外停止服务,而请求端可以基于固定信息遍历eureka服务注册中心,联盟链中活动的eureka服务器竞争,eureka服务器b胜出,就可以请求服务、平稳过渡。
17.本发明一则解决了在服务更新发布时候请求异常的情况,避免了因此可能造成的异常数据,减少对应研发人员修复数据的工作量,二则对联盟链中的eureka服务器提出更高的要求,基于计分、给予服务的使用者更好的用户体验,对于服务发布方来说,也可以达到无感发布。
具体实施方式
18.下面结合实施例对本发明做进一步的详细描述,但本发明的保护范围并不限于此。
19.本发明涉及一种基于springcloud的联盟链无感发布方法,所述springcloud的eureka服务注册中心包括至少2个eureka服务器;所有的eureka服务器分属于联盟链中不同的主体;任一服务以固定信息注册到eureka服务注册中心;对任一更新的服务,联盟链中所有的eureka服务器竞争,eureka服务器a胜出,将服务基于固定信息注册到eureka服务注册中心的eureka服务器a上并对外暴露所述固定信息,注册过程中,eureka服务器a对外停止服务;请求端基于固定信息遍历eureka服务注册中心,联盟链中活动的eureka服务器竞争,eureka服务器b胜出,请求端向eureka服务器b请求服务。
20.所述eureka服务注册中心中,联盟链的成员为其持有的eureka服务器进行注册,eureka服务注册中心分配任一eureka服务器初始的权重系数。
21.任一eureka服务器在每次被调用后,由联盟链的成员节点对其进行打分,基于打分对所述eureka服务器的权重系数进行调整。
22.所述打分为表决制;联盟链的成员节点对eureka服务器的调用表现进行举手表决,每预设次数的否决对eureka服务器的权重系数进行降低,每预设次数的赞同对eureka服务器初始的权重系数进行增加。
23.本发明中,eureka服务注册中心面向联盟链的所有成员进行开放,联盟链的成员可以将其eureka服务器注册在eureka服务注册中心,进而一方面可以达到eureka服务器被充分应用的目的,另一方面在联盟链的所有成员中可以达成互相的制约、互相的竞争,最终使得联盟链中的eureka服务器达到更好的使用。
24.本发明中,当一个eureka服务器进行新注册后,首先将被分配到初始的权重系数,一般来说为了保证一个新的eureka服务器被充分调用,会将其权重系统分配在最高水平;每一次被调用后,成员节点对eureka服务器进行打分,以表决制的形式,赞同为1,否决为0,当赞同的次数到达某个预设值时,则表示这个eureka服务器可以受到所有成员的认可,此时对其权重系数进行上调,反之则下调;这里的预设值/预设次数基于联盟链的成员数量而定。
25.本发明中,经常被调用的eureka服务器显然可以获得更多的流量,对于其对应的联盟链成员来说可以获得更多的有效数据;同时基于联盟链的本质,这种表决是所有成员同步知晓的,避免了作弊的情况,进而对于每个eureka服务器的权重系数的调节真实有效。
26.新服务注册在eureka服务器时,联盟链中所有的eureka服务器竞争,以权重由高到低进行选择。
27.请求端请求服务时,联盟链中所有的eureka服务器竞争,以权重由高到低进行请求。
28.所述eureka服务器a在注册新服务时对外停止服务;注册完毕后开启;eureka服务器a以权重由高到低与eureka服务注册中心中的其他eureka服务器进行匹配,若eureka服务器b中相同的固定信息的服务与已注册的新服务不同,则eureka服务器b对外停止服务,eureka服务器a和eureka服务器b同步此固定信息对应的新服务。
29.所述固定信息为服务提供方的主机名。
30.所述固定信息还包括服务提供方的端口。
31.所述请求端请求服务时,由代理服务lvs进行代理转发。
32.本发明中,当需要进行服务注册时,通过固定信息,以hostname为例,将服务注册到eureka服务注册中心,即服务注册到eureka服务注册中心之后的暴露地址是hostname,而不是具体的ip,那么在需要远程调用该服务时,可以通过eureka服务注册中心找到该服务,获取该服务对外暴露的hostname,通过hostname进行请求。
33.本发明中,当需要进行节点调用且又处于发布阶段时,由于eureka服务注册中心内所有的eureka服务器同步,这表示了服务在进行升级切换时,即使在某个服务节点已经对外停止、eureka还未开始检测的短暂时间内,在进行请求时,请求会先到达中间搭建的代理服务lvs ,如nginx之类的代理服务处,由lvs进行代理转发,由于代理的作用会转发到依然目前存活的节点上,只要有一个是存活的,系统就可以正常运行,也就是说,通过其他eureka服务器上老的注册服务使系统正常运行。
34.本发明中,基于这种无感发布方法,在eureka服务注册中心应当包括至少2个eureka服务器,且所有的eureka服务器实时同步。
35.本发明中,在实际应用中,对不同的eureka服务器作为节点分配权重,对整个方法的实现更为有利,包括在新服务注册阶段、请求端请求服务阶段以及同步阶段,均应当优先处理高权重节点的eureka服务器;同时引入竞争机制,保证了有效的、高配置的eureka服务器可以被优先利用。
36.本发明中,在lvs代理服务配置中,当服务有多节点时,需要将每个节点的实际ip地址都设置到代理服务中。
再多了解一些

本文用于企业家、创业者技术爱好者查询,结果仅供参考。

发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表

相关文献