CN116708538A - 一种以对等网络为基础的微服务系统 - Google Patents
一种以对等网络为基础的微服务系统 Download PDFInfo
- Publication number
- CN116708538A CN116708538A CN202310602976.5A CN202310602976A CN116708538A CN 116708538 A CN116708538 A CN 116708538A CN 202310602976 A CN202310602976 A CN 202310602976A CN 116708538 A CN116708538 A CN 116708538A
- Authority
- CN
- China
- Prior art keywords
- service
- peer
- micro
- node
- peer network
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Pending
Links
- 238000007726 management method Methods 0.000 claims abstract description 220
- 238000003860 storage Methods 0.000 claims abstract description 31
- 238000004891 communication Methods 0.000 claims abstract description 16
- 238000000034 method Methods 0.000 claims description 8
- 238000009826 distribution Methods 0.000 claims description 6
- 230000008520 organization Effects 0.000 claims description 5
- 230000008569 process Effects 0.000 claims description 5
- 238000012423 maintenance Methods 0.000 claims description 4
- 230000008447 perception Effects 0.000 claims description 4
- 230000004083 survival effect Effects 0.000 claims description 4
- 230000006870 function Effects 0.000 description 6
- 238000012545 processing Methods 0.000 description 4
- 230000006855 networking Effects 0.000 description 3
- 238000004519 manufacturing process Methods 0.000 description 2
- 238000013507 mapping Methods 0.000 description 2
- 230000007246 mechanism Effects 0.000 description 2
- 238000013459 approach Methods 0.000 description 1
- 230000008901 benefit Effects 0.000 description 1
- 238000004364 calculation method Methods 0.000 description 1
- 230000008859 change Effects 0.000 description 1
- 238000011161 development Methods 0.000 description 1
- 238000010586 diagram Methods 0.000 description 1
- 238000005304 joining Methods 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 238000004321 preservation Methods 0.000 description 1
- 238000005067 remediation Methods 0.000 description 1
- 230000004044 response Effects 0.000 description 1
- 238000006467 substitution reaction Methods 0.000 description 1
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/50—Network services
- H04L67/51—Discovery or management thereof, e.g. service location protocol [SLP] or web services
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/01—Protocols
- H04L67/10—Protocols in which an application is distributed across nodes in the network
- H04L67/1001—Protocols in which an application is distributed across nodes in the network for accessing one among a plurality of replicated servers
- H04L67/1004—Server selection for load balancing
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/01—Protocols
- H04L67/10—Protocols in which an application is distributed across nodes in the network
- H04L67/104—Peer-to-peer [P2P] networks
-
- Y—GENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y02—TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
- Y02D—CLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
- Y02D10/00—Energy efficient computing, e.g. low power processors, power management or thermal management
Landscapes
- Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Computer And Data Communications (AREA)
Abstract
本发明公开了一种以对等网络为基础的微服务系统,包含微服务模块、服务治理模块和系统综合管理模块。该系统使用对等网络来组织各个节点之间的通讯和感知,并使用对等网络,对微服务的组织管理、通讯、存储进行组织。服务治理节点和微服务都加入对等网络,使用对等网络接口,调用对等网络的功能;服务治理节点通过一致性hash在对等网络上构建若干虚拟节点,微服务器上线后通过绑定的服务治理节点做登记注册,客户端访问微服务时,通过对等网络向服务治理节点发送服务查询请求,服务治理节点根据当前情况,为客户端选择合适的微服务器。本发明的系统以对等网络为基础,服务治理在对等网络中可以通过一致性hash来分布,轻松实现负载均衡。
Description
技术领域
本发明涉及一种IT和互联网领域的使用对等网络来组织各个节点之间的通讯和感知的微服务系统,具体地,涉及一种以对等网络为基础的微服务系统。
背景技术
对等网络,即对等计算机网络,是一种在对等者(Peer)之间分配任务和工作负载的分布式应用架构,是对等计算模型在应用层形成的一种组网或网络形式。“Peer”在英语里有“对等者、伙伴、对端”的意义。因此,从字面上,P2P(Peer-to-peer)可以理解为对等计算或对等网络。国内一些媒体将P2P翻译成“点对点”或者“端对端”,学术界则统一称为对等网络(Peer-to-peer networking)或对等计算(Peer-to-peer computing),其可以定义为:网络的参与者共享他们所拥有的一部分硬件资源(处理能力、存储能力、网络连接能力、打印机等),这些共享资源通过网络提供服务和内容,能被其它对等节点(Peer)直接访问而无需经过中间实体。在此网络中的参与者既是资源、服务和内容的提供者(Server),又是资源、服务和内容的获取者(Client)。在P2P网络环境中,彼此连接的多台计算机之间都处于对等的地位,各台计算机有相同的功能,无主从之分,一台计算机既可作为服务器,设定共享资源供网络中其他计算机所使用,又可以作为工作站,整个网络一般来说不依赖专用的集中服务器,也没有专用的工作站。网络中的每一台计算机既能充当网络服务的请求者,又对其它计算机的请求做出响应,提供资源、服务和内容。通常这些资源和服务包括:信息的共享和交换、计算资源(如CPU计算能力共享)、存储共享(如缓存和磁盘空间的使用)、网络共享、打印机共享等。对等网络是一种网络结构的思想。它与目前网络中占据主导地位的客户端/服务器(Client/Server)结构(也就是WWW所采用的结构方式)的一个本质区别是,整个网络结构中不存在中心节点(或中心服务器)。在P2P结构中,每一个节点(peer)大都同时具有信息消费者、信息提供者和信息通讯等三方面的功能。从计算模式上来说,P2P打破了传统的Client/Server(C/S)模式,在网络中的每个节点的地位都是对等的。每个节点既充当服务器,为其他节点提供服务,同时也享用其他节点提供的服务。
微服务(或微服务架构)是一种云原生架构方法,其中单个应用程序由许多松散耦合且可独立部署的较小组件或服务组成。微服务是一种软件开发技术-面向服务的体系结构(SOA)架构样式的一种变体,它提倡将单一应用程序划分成一组小的服务,服务之间互相协调、互相配合,为用户提供最终价值。每个服务运行在其独立的进程中,服务与服务间采用轻量级的通信机制互相沟通(通常是基于HTTP的RESTful API)。每个服务都围绕着具体业务进行构建,并且能够独立地部署到生产环境、类生产环境等。另外,应尽量避免统一的、集中式的服务管理机制,对具体的一个服务而言,应根据上下文,选择合适的语言、工具对其进行构建。
现有微服务系统使用集中式的服务治理模块对微服务进行组织管理,多个服务治理模块构成管理集群,用于互备以及支持大业务量处理。不过,这种模式下的服务治理服务器配置很麻烦,微服务也需要预先知道服务治理服务器的地址,服务治理服务器很难做到即插即用,服务治理服务器本身的负载均衡也需要单独考虑。
发明内容
本发明的目的是提供一种基于对等网络的微服务系统,针对现有的微服务系统进行改进,使用对等网络来组织各个节点之间的通讯和感知,实现负载均衡。
为了达到上述目的,本发明提供了一种以对等网络为基础的微服务系统,其中,该系统包含微服务模块、服务治理模块和系统综合管理模块;所述的微服务模块支持部署运行微服务,微服务调用者通过服务治理模块的业务实现对微服务提供者的寻找;微服务模块包含若干运行微服务的微服务器节点;所述的服务治理模块负责微服务的注册、发现,同时对维护进行调度,实现微服务的负载均衡、就近接入、流量控制的特性;服务治理模块包含若干服务治理节点;所述的系统综合管理模块对整个服务系统的运行情况进行监控,并在系统中的节点中启/停相关业务;系统综合管理模块包含若干系统综合管理节点;所述的系统使用对等网络来组织各个节点之间的通讯和感知,并使用对等网络,对微服务的组织管理、通讯、存储进行组织。
上述的以对等网络为基础的微服务系统,其中,所述的服务治理节点和微服务都加入对等网络,使用对等网络接口,调用对等网络的功能;服务治理节点通过一致性hash在对等网络上构建若干虚拟节点,微服务器上线后通过绑定的服务治理节点做登记注册,客户端访问微服务时,通过对等网络向服务治理节点发送服务查询请求,服务治理节点根据当前情况,为客户端选择合适的微服务器。
上述的以对等网络为基础的微服务系统,其中,所述的微服务在一个特定的pub/sub组中发布自己的启动状态通知,便于服务治理节点、系统综合管理节点感知;服务治理节点在一个特定的pub/sub组中发布自己的启动状态通知,便于服务治理节点、微服务器、系统综合管理节点感知;系统综合管理模块根据服务治理节点和微服务器节点的描述信息,利用对等网络直接下发配置、管理请求。
上述的以对等网络为基础的微服务系统,其中,所述的对等网络,提供的服务包含:向指定Id发送消息的服务、在对等网络中存储数据的服务,以及在对等网络上实现数据结构的服务;数据结构包括实现(key,map),通过key在对等网络上定位一个map,并操作这个map。
上述的以对等网络为基础的微服务系统,其中,所述的系统中,使用一致性hash发布;系统中的服务治理模块提供微服务注册、查找和调度,也提供服务状态信息,供上层的系统综合管理模块运用;服务治理模块的组织方式为:服务治理节点以一致性hash方式将自己发布到对等网络上,构建若干虚拟节点;一致性hash使用的关键词是节点的Id;每个服务治理节点构建的虚拟节点的数量大于10,并小于1000。
上述的以对等网络为基础的微服务系统,其中,所述的系统中,使用对等网络的pub/sub服务分发消息;所有的服务治理节点包括虚拟节点的信息,保存在对等网络的一个k/v存储里,key根据需要设置,value是服务治理节点的全部虚拟节点值;建立一个服务治理节点信息pub/sub组,用于通知服务治理节点的进入退出通知,所有服务治理节点和微服务都加入这个组并订阅消息,一旦有服务治理节点加入或者退出系统,则在这个组里面发送一个通知,微服务获知后,更新服务治理节点信息,便于后续寻找服务治理节点结合,以及更新存活通知。
上述的以对等网络为基础的微服务系统,其中,所述的系统中,微服务和服务治理节点具有绑定关系,每个微服务都唯一定向到管理自己的服务治理节点,定向方式为:微服务利用微服务Id和服务类型建立hash的值,hash(微服务Id,服务类型)的值与虚拟服务治理节点ID值中最接近的,这个服务治理节点就成为这个微服务绑定的服务治理节点。
上述的以对等网络为基础的微服务系统,其中,所述的系统中,微服务使用对等网络的注册、发现模式;服务注册是在微服务启动时,从对等网络中取得当前的服务治理节点信息,然后通过对等网络的消息发送接口,向绑定的服务治理节点发送注册请求;服务治理节点处理微服务注册请求,并将注册信息发布到其他服务治理节点,同时将注册信息保存到统一的存储里;系统使用对等网络作为统一存储;服务发现是在微服务客户端请求微服务时,首先由微服务的微服务器,向hash(微服务Id,服务类型)最接近的服务治理节点发送服务查找请求,服务治理节点根据请求者的位置信息、该服务现有微服务器的工作情况,向请求者发送可以使用的微服务的微服务器信息。
上述的以对等网络为基础的微服务系统,其中,所述的系统中,微服务退出时,如果是正常退出,则向hash(微服务Id,服务类型)最接近的服务治理节点发送退出通知,服务治理节点清理本地和统一存储中的该服务信息;微服务启动后,向绑定的服务治理节点发送心跳,如果自己异常退出,绑定的服务治理节点获知,并清理掉该微服务的节点信息。
上述的以对等网络为基础的微服务系统,其中,所述的系统综合管理模块,对服务治理节点、微服务器节点进行启停控制,以及下达配置信息的操作;对于服务治理节点,其描述信息统一保存在一个k/v存储里,系统综合管理模块的综合管理服务访问这个数据,获知系统中的服务治理节点描述信息,进而和这些节点通讯;系统综合管理模块也加入服务治理节点的消息分发组,订阅其上线、下线消息,及时更新服务治理节点的状态;对于微服务器节点,其描述信息保存在对等网络的(key,map)里,系统综合管理节点以管理服务治理节点的模式,感知其描述信息和上线、下线状态。
本发明提供的以对等网络为基础的微服务系统具有以下优点:
1.利用对等网络设施的基础上,可以简化服务治理节点的配置。利用一致性hash,轻松实现了负载均衡和节点加入、退出管理。
2.利用对等网络的存储能高效、简单地保存信息。可以替代传统方式中的数据库,简化开发。
3.利用了对等网络的pub/sub服务组织信息分发。包括服务治理节点描述信息的分发,微服务器节点描述信息的分发等。简化了传统的节点感知模式。
附图说明
图1为本发明的以对等网络为基础的微服务系统的功能架构示意图。
其中,1、微服务模块;2、服务治理模块;3、系统综合管理模块;
具体实施方式
以下结合附图对本发明的具体实施方式作进一步地说明。
本发明提供了一种以对等网络为基础的微服务系统,包含微服务模块1、服务治理模块2和系统综合管理模块3;微服务模块1支持部署运行微服务,微服务调用者通过服务治理模块的业务实现对微服务提供者的寻找;微服务模块1包含若干运行微服务的微服务器节点;服务治理模块2负责微服务的注册、发现,同时对维护进行调度,实现微服务的负载均衡、就近接入、流量控制的特性;服务治理模块2包含若干服务治理节点;系统综合管理模块3对整个服务系统的运行情况进行监控,并在系统中的节点中启/停相关业务;系统综合管理模块3包含若干系统综合管理节点;系统使用对等网络来组织各个节点之间的通讯和感知,并使用对等网络,对微服务的组织管理、通讯、存储进行组织。
该系统中的服务治理节点和微服务都加入对等网络,使用对等网络接口,调用对等网络的功能;服务治理节点通过一致性hash在对等网络上构建若干虚拟节点,微服务器上线后通过绑定的服务治理节点做登记注册,客户端访问微服务时,通过对等网络向服务治理节点发送服务查询请求,服务治理节点根据当前情况,为客户端选择合适的微服务器。
该系统中的微服务在一个特定的pub/sub组中发布自己的启动状态通知,便于服务治理节点、系统综合管理节点感知;服务治理节点在一个特定的pub/sub组中发布自己的启动状态通知,便于服务治理节点、微服务器、系统综合管理节点感知;系统综合管理模块根据服务治理节点和微服务器节点的描信息,利用对等网络直接下发配置、管理请求。
对等网络提供的服务包含:向指定Id发送消息的服务、在对等网络中存储数据的服务,以及在对等网络上实现数据结构的服务;数据结构包括实现(key,map),通过key在对等网络上定位一个map,并操作这个map。
该系统中使用一致性hash发布;系统中的服务治理模块提供微服务注册、查找和调度,也提供服务状态信息,供上层的系统综合管理模块运用;服务治理模块的组织方式为:服务治理节点以一致性hash方式将自己发布到对等网络上,构建若干虚拟节点;一致性hash使用的关键词是节点的Id;每个服务治理节点构建的虚拟节点的数量大于10,并小于1000。
该系统中使用对等网络的pub/sub服务分发消息;所有的服务治理节点包括虚拟节点的信息,保存在对等网络的一个k/v存储里,key根据需要设置,value是服务治理节点的全部虚拟节点值;建立一个服务治理节点信息pub/sub组,用于通知服务治理节点的进入退出通知,所有服务治理节点和微服务都加入这个组并订阅消息,一旦有服务治理节点加入或者退出系统,则在这个组里面发送一个通知,微服务获知后,更新服务治理节点信息,便于后续寻找服务治理节点结合,以及更新存活通知。
该系统中的微服务和服务治理节点具有绑定关系,每个微服务都唯一定向到管理自己的服务治理节点,定向方式为:微服务利用微服务Id和服务类型建立hash的值,hash(微服务Id,服务类型)的值与虚拟服务治理节点ID值中最接近的,这个服务治理节点就成为这个微服务绑定的服务治理节点。
该系统中的微服务使用对等网络的注册、发现模式;服务注册是在微服务启动时,从对等网络中取得当前的服务治理节点信息,然后通过对等网络的消息发送接口,向绑定的服务治理节点发送注册请求;服务治理节点处理微服务注册请求,并将注册信息发布到其他服务治理节点,同时将注册信息保存到统一的存储里;系统使用对等网络作为统一存储;服务发现是在微服务客户端请求微服务时,首先由微服务的微服务器,向hash(微服务Id,服务类型)最接近的服务治理节点发送服务查找请求,服务治理节点根据请求者的位置信息、该服务现有微服务器的工作情况,向请求者发送可以使用的微服务的微服务器信息。
该系统中,在微服务退出时,如果是正常退出,则向hash(微服务Id,服务类型)最接近的服务治理节点发送退出通知,服务治理节点清理本地和统一存储中的该服务信息;微服务启动后,向绑定的服务治理节点发送心跳,如果自己异常退出,绑定的服务治理节点获知,并清理掉该微服务的节点信息。
该系统综合管理模块,对服务治理节点、微服务器节点进行启停控制,以及下达配置信息的操作;对于服务治理节点,其描信息统一保存在一个k/v存储里,系统综合管理模块的综合管理服务访问这个数据,获知系统中的服务治理节点描信息,进而和这些节点通讯;系统综合管理模块也加入服务治理节点的消息分发组,订阅其上线、下线消息,及时更新服务治理节点的状态;对于微服务器节点,其描信息保存在对等网络的(key,map)里,系统综合管理节点以管理服务治理节点的模式,感知其描述信息和上线、下线状态。
下面结合实施例对本发明提供的以对等网络为基础的微服务系统做更进一步描述。
实施例1
一种以对等网络为基础的微服务系统,包含微服务模块1、服务治理模块2和系统综合管理模块3。参见图1所示。
微服务模块1支持部署运行微服务,微服务调用者通过服务治理模块的业务实现对微服务提供者的寻找;微服务的基础调用可以通过rpc(远程过程调用)实现,其内部通讯协议可以多种多样。微服务模块1包含若干运行微服务的微服务器节点;即,服务节点。
服务治理模块2负责微服务的注册、发现,同时对维护进行调度,实现微服务的负载均衡、就近接入、流量控制等特性;在大型系统中服务治理模块至关重要。服务治理模块2包含若干服务治理节点。
系统综合管理模块3对整个服务系统的运行情况可以进行随时监控,并在系统中的节点中启/停相关业务。系统综合管理模块3包含若干系统综合管理节点。
该系统使用对等网络来组织各个节点之间的通讯和感知,并整体上使用对等网络,对微服务的组织管理、通讯、存储进行组织。
该微服务系统整体上分为三个部分:1.微服务;2.服务治理;3.系统综合管理。
在微服务系统的实施流程中,首先需要建立基本的对等网络,例如:类似ipfs这样的对等网络设施。这个对等网络服务需要提供如下服务:
1.向指定Id发送消息的服务;
2.在对等网络中存储数据的服务;
3.在对等网络上实现一些数据结构。对等网络通常会提供基本的k/v存储,可以在其上实现更多的一些数据结构,方便高效存储。
例如实现:(key,map)键映射,也即通过key可以在对等网络上定位一个map,并操作这个map。
k/v存储,也叫键值对存储,其数据按照键值对的形式进行组织、索引和存储,kv是键值key-value的缩写。简单来说,它是利用key做索引来实现数据的存储、修改、查询和删除功能。
该系统中使用一致性hash发布。
一致性hash,即一致性哈希算法,是一种特殊的哈希算法,目的是解决分布式缓存的问题,在分布式系统中应用非常广泛。在移除或者添加一个服务器时,此算法能够尽可能小地改变已存在的服务请求与处理请求服务器之间的映射关系,尽可能满足单调性的要求。
服务治理主要提供微服务注册、查找和调度,也提供服务状态信息,供上层的综合管理模块运用。
服务治理组织方式为:服务治理节点以一致性hash方式将自己发布到对等网络上,构建若干虚拟节点;一致性hash使用的关键词是节点的Id,例如64位的uuid(通用唯一识别码)。
虚拟节点数以机器的性能为基准,机器的性能主要考虑机器的cpu数量和主频,出口带宽和内存情况,计算出基础单位数量、cpu(中央处理器)、带宽和内存有一个加权计算,其中cpu的权重更大。
每个服务治理节点构建的虚拟节点的数量大于10,并小于1000。即,每个节点的虚拟节点一般是从几十到几百。
该系统中使用对等网络的pub/sub(订阅与发布)服务分发消息。
所有的服务治理节点信息(包括虚拟节点),保存在对等网络的一个k/v存储里,key可以是“service_manager”(服务管理器),具体key可以根据需要设置,value是服务治理节点的全部虚拟节点值;建立一个服务治理节点信息pub/sub组,用于通知服务治理节点的进入退出通知,所有服务治理节点和微服务都加入这个组并订阅消息,一旦有服务治理节点加入或者退出系统,则在这个组里面发送一个通知,微服务知道后,更新服务治理节点信息,方便后续寻找服务治理结合和更新存活通知。
该系统中的微服务和服务治理节点具有绑定关系,每个微服务都唯一定向到管理自己的服务治理节点,定向方式为:微服务利用微服务Id和服务类型建立hash的值,hash(微服务Id,服务类型)的值与虚拟服务治理节点ID值中最接近的,后面这个治理节点即成为绑定治理节点。
该系统中的微服务使用对等网络的注册、发现模式。
服务注册:
在微服务启动时,从对等网络中取得当前的服务治理节点信息,然后通过对等网络的消息发送接口,向绑定的服务治理节点发送注册请求。
一般来说,服务治理节点处理微服务注册请求,并将注册信息发布到其他服务治理节点,同时将注册信息保存到统一的存储里。这个统一的存储可以是类似mysql这样的数据库,也可是类似redis这样的内存数据库,这里可以优选地保存到对等网络存储里面。
即,该系统使用对等网络作为统一存储,由于这个对等网络里面的节点大部分都是服务器节点,稳定可靠,所以对应的对等网络存储也非常稳定高速。
服务发现:
在微服务客户端请求微服务时,首先由微服务的微服务器,向hash(微服务Id,服务类型)最接近的服务治理节点发送服务查找请求。服务治理节点根据请求者的位置信息、该服务现有服务器的工作情况,向请求者发送可以使用的微服务服务器信息。
微服务退出:
如果是正常退出,需要向hash(微服务Id,服务类型)最接近的服务治理节点发送退出通知,服务治理节点清理本地和统一存储中的该服务信息。
微服务启动后,会向绑定的服务治理节点发送心跳,如果自己异常退出,绑定的服务治理节点可以获知,并清理掉该微服务的节点信息。
系统综合管理:
该系统中,通过系统综合管理模块,对服务治理节点、微服务器节点进行启停控制,以及下达配置信息等操作。
对于服务治理节点,其描信息统一保存在一个k/v存储里,其中key是“service_manager”,可以参考上文描述。综合管理服务访问这个数据,可以知道系统中的服务治理节点描述信息,进而和这些节点通讯。综合管理模块也加入服务治理消息分发组,订阅其上线、下线消息,及时更新治理节点的状态。
对于微服务器节点(微服务节点),其描信息保存在对等网络的(key,map)里,系统综合管理节点以类似管理服务治理节点的模式,感知其描述信息和上线、下线状态。
综上所述,该系统中的服务治理节点和微服务都加入对等网络,使用对等网络接口,可以调用对等网络的功能;服务治理节点通过一致性hash在对等网络上构建了多个虚拟节点;微服务器上线后通过绑定的服务治理节点做登记注册;客户端访问微服务时,通过对等网络向服务治理节点发送服务查询请求,服务治理节点根据当前情况为客户端选择合适的微服务器。
微服务在一个特定的pub/sub组中发布自己的启动状态通知,方便服务治理节点、系统综合管理节点感知;服务治理节点在一个特定的pub/sub组中发布自己的启动状态通知,方便服务治理节点、微服务器、系统综合管理节点感知;综合管理模块可以根据服务治理节点和微服务器节点描述信息,利用对等网络(直接以节点Id为参数定位)直接下发配置、管理请求。
本发明提供的以对等网络为基础的微服务系统,是一种使用对等网络来组织各个节点之间的通讯和感知的微服务系统。以对等网络为基础,服务治理服务可以随时加入对等网络,和现有服务治理服务器构成一个集群。服务治理服务器在对等网络中可以通过一致性hash来分布,轻松实现负载均衡。
尽管本发明的内容已经通过上述优选实施例作了详细介绍,但应当认识到上述的描述不应被认为是对本发明的限制。在本领域技术人员阅读了上述内容后,对于本发明的多种修改和替代都将是显而易见的。因此,本发明的保护范围应由所附的权利要求来限定。
Claims (10)
1.一种以对等网络为基础的微服务系统,其特征在于,该系统包含微服务模块、服务治理模块和系统综合管理模块;
所述的微服务模块支持部署运行微服务,微服务调用者通过服务治理模块的业务实现对微服务提供者的寻找;微服务模块包含若干运行微服务的微服务器节点;
所述的服务治理模块负责微服务的注册、发现,同时对维护进行调度,实现微服务的负载均衡、就近接入、流量控制的特性;服务治理模块包含若干服务治理节点;
所述的系统综合管理模块对整个服务系统的运行情况进行监控,并在系统中的节点中启/停相关业务;系统综合管理模块包含若干系统综合管理节点;
所述的系统使用对等网络来组织各个节点之间的通讯和感知,并使用对等网络,对微服务的组织管理、通讯、存储进行组织。
2.如权利要求1所述的以对等网络为基础的微服务系统,其特征在于,所述的服务治理节点和微服务都加入对等网络,使用对等网络接口,调用对等网络的功能;服务治理节点通过一致性hash在对等网络上构建若干虚拟节点,微服务器上线后通过绑定的服务治理节点做登记注册,客户端访问微服务时,通过对等网络向服务治理节点发送服务查询请求,服务治理节点根据当前情况,为客户端选择合适的微服务器。
3.如权利要求2所述的以对等网络为基础的微服务系统,其特征在于,所述的微服务在一个特定的pub/sub组中发布自己的启动状态通知,便于服务治理节点、系统综合管理节点感知;服务治理节点在一个特定的pub/sub组中发布自己的启动状态通知,便于服务治理节点、微服务器、系统综合管理节点感知;系统综合管理模块根据服务治理节点和微服务器节点的描述信息,利用对等网络直接下发配置、管理请求。
4.如权利要求3所述的以对等网络为基础的微服务系统,其特征在于,所述的对等网络,提供的服务包含:向指定Id发送消息的服务、在对等网络中存储数据的服务,以及在对等网络上实现数据结构的服务;数据结构包括实现(key,map),通过key在对等网络上定位一个map,并操作这个map。
5.如权利要求1所述的以对等网络为基础的微服务系统,其特征在于,所述的系统中,使用一致性hash发布;系统中的服务治理模块提供微服务注册、查找和调度,也提供服务状态信息,供上层的系统综合管理模块运用;服务治理模块的组织方式为:服务治理节点以一致性hash方式将自己发布到对等网络上,构建若干虚拟节点;一致性hash使用的关键词是节点的Id;每个服务治理节点构建的虚拟节点的数量大于10,并小于1000。
6.如权利要求5所述的以对等网络为基础的微服务系统,其特征在于,所述的系统中,使用对等网络的pub/sub服务分发消息;所有的服务治理节点包括虚拟节点的信息,保存在对等网络的一个k/v存储里,key根据需要设置,value是服务治理节点的全部虚拟节点值;建立一个服务治理节点信息pub/sub组,用于通知服务治理节点的进入退出通知,所有服务治理节点和微服务都加入这个组并订阅消息,一旦有服务治理节点加入或者退出系统,则在这个组里面发送一个通知,微服务获知后,更新服务治理节点信息,便于后续寻找服务治理节点结合,以及更新存活通知。
7.如权利要求6所述的以对等网络为基础的微服务系统,其特征在于,所述的系统中,微服务和服务治理节点具有绑定关系,每个微服务都唯一定向到管理自己的服务治理节点,定向方式为:微服务利用微服务Id和服务类型建立hash的值,hash(微服务Id,服务类型)的值与虚拟服务治理节点ID值中最接近的,这个服务治理节点就成为这个微服务绑定的服务治理节点。
8.如权利要求7所述的以对等网络为基础的微服务系统,其特征在于,所述的系统中,微服务使用对等网络的注册、发现模式;服务注册是在微服务启动时,从对等网络中取得当前的服务治理节点信息,然后通过对等网络的消息发送接口,向绑定的服务治理节点发送注册请求;服务治理节点处理微服务注册请求,并将注册信息发布到其他服务治理节点,同时将注册信息保存到统一的存储里;系统使用对等网络作为统一存储;服务发现是在微服务客户端请求微服务时,首先由微服务的微服务器,向hash(微服务Id,服务类型)最接近的服务治理节点发送服务查找请求,服务治理节点根据请求者的位置信息、该服务现有微服务器的工作情况,向请求者发送可以使用的微服务的微服务器信息。
9.如权利要求8所述的以对等网络为基础的微服务系统,其特征在于,所述的系统中,微服务退出时,如果是正常退出,则向hash(微服务Id,服务类型)最接近的服务治理节点发送退出通知,服务治理节点清理本地和统一存储中的该服务信息;微服务启动后,向绑定的服务治理节点发送心跳,如果自己异常退出,绑定的服务治理节点获知,并清理掉该微服务的节点信息。
10.如权利要求1所述的以对等网络为基础的微服务系统,其特征在于,所述的系统综合管理模块,对服务治理节点、微服务器节点进行启停控制,以及下达配置信息的操作;对于服务治理节点,其描述信息统一保存在一个k/v存储里,系统综合管理模块的综合管理服务访问这个数据,获知系统中的服务治理节点描述信息,进而和这些节点通讯;系统综合管理模块也加入服务治理节点的消息分发组,订阅其上线、下线消息,及时更新服务治理节点的状态;对于微服务器节点,其描述信息保存在对等网络的(key,map)里,系统综合管理节点以管理服务治理节点的模式,感知其描述信息和上线、下线状态。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202310602976.5A CN116708538A (zh) | 2023-05-25 | 2023-05-25 | 一种以对等网络为基础的微服务系统 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202310602976.5A CN116708538A (zh) | 2023-05-25 | 2023-05-25 | 一种以对等网络为基础的微服务系统 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN116708538A true CN116708538A (zh) | 2023-09-05 |
Family
ID=87824894
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202310602976.5A Pending CN116708538A (zh) | 2023-05-25 | 2023-05-25 | 一种以对等网络为基础的微服务系统 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN116708538A (zh) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN117041329A (zh) * | 2023-10-08 | 2023-11-10 | 南京翼辉信息技术有限公司 | 一种基于异构总线结构的微服务配置系统及其控制方法 |
-
2023
- 2023-05-25 CN CN202310602976.5A patent/CN116708538A/zh active Pending
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN117041329A (zh) * | 2023-10-08 | 2023-11-10 | 南京翼辉信息技术有限公司 | 一种基于异构总线结构的微服务配置系统及其控制方法 |
CN117041329B (zh) * | 2023-10-08 | 2023-12-15 | 南京翼辉信息技术有限公司 | 一种基于异构总线结构的微服务配置系统及其控制方法 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP5582344B2 (ja) | 接続管理システム、及びシンクライアントシステムにおける接続管理サーバの連携方法 | |
US6266694B1 (en) | Architecture for network manager | |
EP2127295B1 (en) | Peer to peer network | |
US8195742B2 (en) | Distributed client services based on execution of service attributes and data attributes by multiple nodes in resource groups | |
US20050120073A1 (en) | Method and apparatus for sharing applications using P2P protocol | |
US7970856B2 (en) | System and method for managing and distributing assets over a network | |
US8219614B2 (en) | Edge peer device, pan gateway device, super peer device, and P2P network-based interconnection method | |
CN107528891B (zh) | 一种基于WebSocket的自动集群方法及其系统 | |
WO2008085782A1 (en) | Synchronization protocol for loosely coupled devices | |
WO2007085592A1 (en) | A type of method and system for providing network services using p2p entities | |
WO2008068662A2 (en) | Automatic registry composition when networks compose | |
EP1719325B1 (en) | Method for optimally utilizing a peer to peer network | |
Fox et al. | A scaleable event infrastructure for peer to peer grids | |
CN116708538A (zh) | 一种以对等网络为基础的微服务系统 | |
JP4022521B2 (ja) | コンピュータ・システムのネットワークにおける作業負荷バランシングのための方法およびシステム | |
CN112910796B (zh) | 流量管理方法、装置、设备、存储介质以及程序产品 | |
CN111800516B (zh) | 一种基于p2p的物联网设备管理方法及装置 | |
Pahl et al. | Information-centric iot middleware overlay: Vsl | |
Kim et al. | A scalable pub/sub system for ndn | |
Braubach et al. | A novel distributed registry approach for efficient and resilient service discovery in megascale distributed systems? | |
CN114095508A (zh) | 一种同交换机下p2p传输的方法 | |
US20130111068A1 (en) | Creating an optimized distribution network for the efficient transfer of data between endpoints using crossover connections | |
Montresor et al. | Absolute slicing in peer-to-peer systems | |
US20130110999A1 (en) | Creating an optimized distribution network for the efficient transfer of data between endpoints | |
CN114422518A (zh) | 请求服务的方法及装置 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination |