CN115242863B - 一种微服务应用方法及微服务架构系统 - Google Patents
一种微服务应用方法及微服务架构系统 Download PDFInfo
- Publication number
- CN115242863B CN115242863B CN202210418590.4A CN202210418590A CN115242863B CN 115242863 B CN115242863 B CN 115242863B CN 202210418590 A CN202210418590 A CN 202210418590A CN 115242863 B CN115242863 B CN 115242863B
- Authority
- CN
- China
- Prior art keywords
- service
- micro
- control center
- starting
- instruction
- 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.)
- Active
Links
- 238000000034 method Methods 0.000 title claims abstract description 118
- 230000008569 process Effects 0.000 claims abstract description 74
- 238000004590 computer program Methods 0.000 claims description 12
- 238000004891 communication Methods 0.000 claims description 11
- 238000012546 transfer Methods 0.000 claims description 9
- 238000004806 packaging method and process Methods 0.000 claims description 7
- 238000012544 monitoring process Methods 0.000 abstract description 9
- 238000007726 management method Methods 0.000 description 10
- 238000010586 diagram Methods 0.000 description 6
- 230000004044 response Effects 0.000 description 4
- 102100025328 GON-4-like protein Human genes 0.000 description 3
- 101000857895 Homo sapiens GON-4-like protein Proteins 0.000 description 3
- 238000001514 detection method Methods 0.000 description 3
- RLLPVAHGXHCWKJ-IEBWSBKVSA-N (3-phenoxyphenyl)methyl (1s,3s)-3-(2,2-dichloroethenyl)-2,2-dimethylcyclopropane-1-carboxylate Chemical compound CC1(C)[C@H](C=C(Cl)Cl)[C@@H]1C(=O)OCC1=CC=CC(OC=2C=CC=CC=2)=C1 RLLPVAHGXHCWKJ-IEBWSBKVSA-N 0.000 description 2
- 241001444201 Falco tinnunculus Species 0.000 description 2
- 239000008186 active pharmaceutical agent Substances 0.000 description 2
- 230000005540 biological transmission Effects 0.000 description 2
- 230000001360 synchronised effect Effects 0.000 description 2
- 241000412611 Consul Species 0.000 description 1
- 238000013475 authorization Methods 0.000 description 1
- 230000008901 benefit Effects 0.000 description 1
- 238000013144 data compression Methods 0.000 description 1
- 230000001419 dependent effect Effects 0.000 description 1
- 238000013461 design Methods 0.000 description 1
- 238000011161 development Methods 0.000 description 1
- 230000000694 effects Effects 0.000 description 1
- 238000009434 installation Methods 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 230000008520 organization Effects 0.000 description 1
- 230000003068 static effect Effects 0.000 description 1
- 230000000007 visual effect Effects 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/34—Network arrangements or protocols for supporting network services or applications involving the movement of software or configuration parameters
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L41/00—Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
- H04L41/08—Configuration management of networks or network elements
- H04L41/0803—Configuration setting
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L65/00—Network arrangements, protocols or services for supporting real-time applications in data packet communication
- H04L65/1066—Session management
- H04L65/1073—Registration or de-registration
Landscapes
- Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Business, Economics & Management (AREA)
- General Business, Economics & Management (AREA)
- Multimedia (AREA)
- Stored Programmes (AREA)
Abstract
本发明属于微服务架构技术领域,尤其涉及一种微服务应用方法及微服务架构系统,所述方法包括:获取微服务进程启动指令,并根据所述微服务进程启动指令连接并启动微服务控制中心;接收对微服务控制中心作出的当前控制指令;根据所述当前控制指令进行配置装载,并在配置装载完成后向所述微服务控制中心注册服务;在注册服务完成后,启动gRPC服务端,通过gRPC服务进行内部调用。本发明实现控制微服务状态、权限、流量及性能监控和异常处理,进而实现方便快捷地微服务。
Description
技术领域
本发明属于微服务架构技术领域,尤其涉及一种微服务应用方法及微服务架构系统。
背景技术
微服务,是一种开发软件的架构和组织方法,其中软件由通过明确定义的API进行通信的小型独立服务组成。与微服务架构不同的还有整体式架构,通过整体式架构,使所有进程紧密耦合,并可作为单项服务运行,这意味着,如果应用程序的一个进程遇到需求峰值,则必须扩展整个架构,但随着代码库的增长,添加或改进整体式应用程序的功能变得更加复杂,这种复杂性限制了试验的可行性,并使实施新概念变得困难。因此,整体式架构增加了应用程序可用性的风险,因为许多依赖且紧密耦合的进程会扩大单个进程故障的影响
较之整体式架构,微服务架构将应用程序构建为独立的组件,并将每个应用程序进程作为一项服务运行,这些服务使用轻量级API通过明确定义的接口进行通信。由于它们是独立运行的,因此可以针对各项服务进行更新、部署和扩展,以满足对应用程序特定功能的需求。但是,目前市面上的微服务架构的部署及运维复杂,大多微服务需部署多类第三方组件,进而导致用户使用不便的问题。
发明内容
本发明的目的在于提供一种微服务应用方法及微服务架构系统,旨在解决现有技术中微服务架构的部署及运维复杂,导致用户使用不便的技术问题。
为实现上述目的,本发明实施例提供一种微服务应用方法,所述方法包括:
获取微服务进程启动指令,并根据所述微服务进程启动指令连接并启动微服务控制中心;
接收对微服务控制中心作出的当前控制指令;
根据所述当前控制指令进行配置装载,并在配置装载完成后向所述微服务控制中心注册服务;
在注册服务完成后,启动gRPC服务端,通过gRPC服务进行内部调用。
可选地,根据所述当前控制指令进行配置装载,并在配置装载完成后向所述微服务控制中心注册服务,具体包括:
根据所述当前控制指令读取当前配置信息;
根据所述当前配置信息读取组件插件模块,注入当前服务进程;
根据所述当前配置信息读取服务插件模块,注入当前服务进程;
进行动态编译封装为GRPC服务元信息,并将GRPC服务元信息加入GRPC服务路由;
在将GRPC服务元信息加入GRPC服务路由后,向所述微服务控制中心注册服务。
可选地,获取微服务进程启动指令,并根据所述微服务进程启动指令连接并启动微服务控制中心,具体包括:
获取微服务进程启动指令,并根据所述微服务进程启动指令发现微服务控制中心;
发现微服务控制中心后,通过mdns服务获取微服务控制中心的连接基础信息;
根据所述连接基础信息连接所述微服务控制中心;
在连接所述微服务控制中心后,加入SignaIR微服务通讯组,以启动微服务控制中心。
可选地,所述方法还包括:
获取启动微服务解析服务的解析服务启动指令;
根据所述解析服务启动指令启动微服务解析服务;
在微服务解析服务启动后,启动微服务指令中转服务;
在启动微服务指令中转服务后,启动微服务进程守护;
启动微服务控制中心。
可选地,所述方法还包括:
在所述微服务控制中心启动后,获取所述微服务控制中心承载的当前承载服务;
通过SignaIR微服务通讯组,将所述当前承载服务按照预设编排规则实时注册至缓存。
可选地,所述方法还包括:
当启动外部调用服务或内部调用服务时,获取当前调用服务接口;
根据所述当前调用服务接口从内存副本中查找并获取最优入口信息。
可选地,一种微服务架构系统,所述系统包括:
进程启动模块,用于获取微服务进程启动指令,并根据所述微服务进程启动指令连接并启动微服务控制中心;
指令接收模块,用于接收对微服务控制中心作出的当前控制指令;
配置装载模块,用于根据所述当前控制指令进行配置装载,并在配置装载完成后向所述微服务控制中心注册服务;
服务调用模块,用于在注册服务完成后,启动gRPC服务端,通过gRPC服务进行内部调用。
可选地,所述配置装载模块还包括:
信息读取模块,用于根据所述当前控制指令读取当前配置信息;
组件读取模块,用于根据所述当前配置信息读取组件插件模块,注入当前服务进程;
服务读取模块,用于根据所述当前配置信息读取服务插件模块,注入当前服务进程;
路由加入模块,用于进行动态编译封装为GRPC服务元信息,并将GRPC服务元信息加入GRPC服务路由;
服务注册模块,用于在将GRPC服务元信息加入GRPC服务路由后,向所述微服务控制中心注册服务。
可选地,一种计算机设备,包括存储器和处理器,所述存储器存储有计算机程序,其特征在于,所述处理器执行所述计算机程序时实现上述方法的步骤。
一种计算机可读存储介质,其上存储有计算机程序,其特征在于,所述计算机程序被处理器执行时实现上述方法中的步骤。
本发明实施例提供的微服务应用方法及微服务架构系统中的上述一个或多个技术方案至少具有如下技术效果之一:
本发明依次通过获取微服务进程启动指令,并根据所述微服务进程启动指令连接并启动微服务控制中心;接收对微服务控制中心作出的当前控制指令;根据所述当前控制指令进行配置装载,并在配置装载完成后向所述微服务控制中心注册服务;在注册服务完成后,启动gRPC服务端,通过gRPC服务进行内部调用,实现通过微服务控制中心统一管理所有微服务,并能实现控制微服务状态、权限、流量及性能监控和异常处理,进而实现方便快捷地微服务。
附图说明
为了更清楚地说明本发明实施例中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动性的前提下,还可以根据这些附图获得其他的附图。
图1为本发明实施例提供的微服务应用方法的整体流程示意图;
图2为本发明实施例提供的向所述微服务控制中心注册服务的流程示意图;
图3为本发明实施例提供的启动微服务控制中心的流程示意图;
图4为本发明另一实施例提供的启动微服务控制中心的具体流程示意图;
图5为本发明实施例提供的实时注册至缓存的流程示意图;
图6为本发明实施例提供的获取最优入口信息的流程示意图;
图7为本发明实施例提供的微服务架构系统的结构框图;
图8为本发明实施例提供的配置装载模块的结构框图;
图9为本发明另一实施例提供的微服务架构系统的结构框图;
图10为本发明其他实施例提供的微服务架构系统的结构框图;
图11为本发明第三实施例提供的微服务架构系统的结构框图;
图12为本发明实施例提供的计算机设备的内部结构图。
具体实施方式
以下描述中,为了说明而不是为了限定,提出了诸如特定系统结构、技术之类的具体细节,以便透彻理解本申请实施例。然而,本领域的技术人员应当清楚,在没有这些具体细节的其它实施例中也可以实现本申请。在其它情况中,省略对众所周知的系统、装置、电路以及方法的详细说明,以免不必要的细节妨碍本申请的描述。
应当理解,当在本申请说明书和所附权利要求书中使用时,术语“包括”指示所描述特征、整体、步骤、操作、元素和/或组件的存在,但并不排除一个或多个其它特征、整体、步骤、操作、元素、组件和/或其集合的存在或添加。
还应当理解,在本申请说明书和所附权利要求书中使用的术语“和/或”是指相关联列出的项中的一个或多个的任何组合以及所有可能组合,并且包括这些组合。
如在本申请说明书和所附权利要求书中所使用的那样,术语“如果”可以依据上下文被解释为“当...时”或“一旦”或“响应于确定”或“响应于检测到”。类似地,短语“如果确定”或“如果检测到[所描述条件或事件]”可以依据上下文被解释为意指“一旦确定”或“响应于确定”或“一旦检测到[所描述条件或事件]”或“响应于检测到[所描述条件或事件]”。
另外,在本申请说明书和所附权利要求书的描述中,术语“第一”、“第二”、“第三”等仅用于区分描述,而不能理解为指示或暗示相对重要性。
在本申请说明书中描述的参考“一个实施例”或“一些实施例”等意味着在本申请的一个或多个实施例中包括结合该实施例描述的特定特征、结构或特点。由此,在本说明书中的不同之处出现的语句“在一个实施例中”、“在一些实施例中”、“在其他一些实施例中”、“在另外一些实施例中”等不是必然都参考相同的实施例,而是意味着“一个或多个但不是所有的实施例”,除非是以其他方式另外特别强调。术语“包括”、“包含”、“具有”及它们的变形都意味着“包括但不限于”,除非是以其他方式另外特别强调。
在本发明的一个实施例中,提供一种微服务应用方法的应用场景,该场景包括一终端,用户触发所述终端,使所述终端获取微服务进程启动指令,并根据所述微服务进程启动指令连接并启动微服务控制中心;然后,所述终端接收对微服务控制中心作出的当前控制指令;接着,所述终端根据所述当前控制指令进行配置装载,并在配置装载完成后向所述微服务控制中心注册服务;最后,所述终端在注册服务完成后,启动gRPC服务端,通过gRPC服务进行内部调用。
其中,终端可以但不限于是各种个人计算机、笔记本电脑、智能手机、平板电脑和便携式可穿戴设备,服务器可以用独立的服务器或者是多个服务器组成的服务器集群来实现。
在本发明的一个实施例中,如图1所示,提供一种微服务应用方法,所述方法包括:
步骤S100:获取微服务进程启动指令,并根据所述微服务进程启动指令连接并启动微服务控制中心;
具体地,用户需要微服务时,通过触发使终端获取微服务进程启动指令,接着,为了保证后续微服务的正常进行,进而通过连接并启动微服务控制中心。
其中,所述微服务控制中心用于统一管理所有微服务,是控制微服务状态、权限、流量及进行性能监控和异常处理的控制中心。
步骤S200:接收对微服务控制中心作出的当前控制指令;
步骤S300:根据所述当前控制指令进行配置装载,并在配置装载完成后向所述微服务控制中心注册服务;
具体地,在进行实际微服务之前,需要获取当前能够进行的配置,进而实现配置装载,在配置装载完成后向所述微服务控制中心注册服务。
步骤S400:在注册服务完成后,启动gRPC服务端,通过gRPC服务进行内部调用。
具体地,本实施例中,根据申请的未使用的微服务端口,通过Kestrel轻量级服务器承载gRPC服务,并能够进行启动日志服务以及性能监控等工作。
本发明依次通过获取微服务进程启动指令,并根据所述微服务进程启动指令连接并启动微服务控制中心;接收对微服务控制中心作出的当前控制指令;根据所述当前控制指令进行配置装载,并在配置装载完成后向所述微服务控制中心注册服务;在注册服务完成后,启动gRPC服务端,通过gRPC服务进行内部调用,实现通过微服务控制中心统一管理所有微服务,并能实现控制微服务状态、权限、流量及性能监控和异常处理,进而实现方便快捷地微服务。
在本发明的另一个实施例中,如图2所示,步骤S300:根据所述当前控制指令进行配置装载,并在配置装载完成后向所述微服务控制中心注册服务,具体包括:
步骤S310:根据所述当前控制指令读取当前配置信息;
具体地,通过读取所述当前配置信息,并根据当前微服务代号来获取当前微服务配置的组件及服务信息。
步骤S320:根据所述当前配置信息读取组件插件模块,注入当前服务进程;
步骤S330:根据所述当前配置信息读取服务插件模块,注入当前服务进程;
具体地,分别根据相应目录来读取组件插件模块和服务插件模块,并分别注入当前服务进程。
步骤S340:进行动态编译封装为GRPC服务元信息,并将GRPC服务元信息加入GRPC服务路由;
步骤S350:在将GRPC服务元信息加入GRPC服务路由后,向所述微服务控制中心注册服务。
具体地,本步骤中,在注入当前服务进程后,通过进行动态编译封装为GRPC服务元信息,并将GRPC服务元信息加入GRPC服务路由,然后向所述微服务控制中心注册服务,以为后续实现微服务提供基础支撑。
在本发明的另一个实施例中,如图3所示,步骤S100:获取微服务进程启动指令,并根据所述微服务进程启动指令连接并启动微服务控制中心,具体包括:
步骤S110:获取微服务进程启动指令,并根据所述微服务进程启动指令发现微服务控制中心;
步骤S120:发现微服务控制中心后,通过mdns服务获取微服务控制中心的连接基础信息;
步骤S130:根据所述连接基础信息连接所述微服务控制中心;
具体地,所述连接基础信息包括但不限于所述微服务控制中心的实际地址,在获取微服务控制中心的实际地址后,即可连接所述微服务控制中心。
步骤S140:在连接所述微服务控制中心后,加入SignaIR微服务通讯组,以启动微服务控制中心。
具体地,启动微服务控制中心后,即可实现接收控制命令、调用控制中心接口和上报日志等。
在本发明的另一个实施例中,如图4所示,所述方法还包括:
步骤S510:获取启动微服务解析服务的解析服务启动指令;
步骤S520:根据所述解析服务启动指令启动微服务解析服务;
具体地,本实施例中,采用Multicast DNS,符合RFC6762标准,这样使得在内网没有DNS服务的时候,可以使用它来进行组播实现DNS。
此外,还配置使用UDP协议的5353端口。基于ServiceDiscovery发布一个服务,并将额外的信息发布在数据包内,然后监听各种mDNS请求,客户端通过服务名发送查询请求,并定位服务的地址信息,然后发送SRV,A和TXT查询请求获得服务全名、IP地址和额外配置信息,这样实现局域网内的服务信息的获取。
步骤S530:在微服务解析服务启动后,启动微服务指令中转服务;
具体地,启动微服务指令中转服务时,可以用于实现实时控制微服务进程、下达操作命令、上传/下载监控日志及更新包等。
具体地,通过采用SignalR开源实现实时通信库。
步骤S540:在启动微服务指令中转服务后,启动微服务进程守护;
具体地,通过启动微服务进程守护,进而读取微服务控制中心的微服务配置,以用来启动对应配置的微服务进程,并通过微服务的在线情况,将异常崩溃的微服务进程启动,进而提高整体微服务架构的稳定性和使用过程中的可靠性。
步骤S550:启动微服务控制中心。
具体地,微服务控制中心包括网关管理、服务器管理、更新部署管理及日志监控,其中网关管理主要针对已注册服务的管理及负载均衡配置等,服务器管理主要针对登记服务器的性能监控及微服务进程管理和其使用情况等,更新部署管理主要是针对微服务的更新升级的灰度发布等。
在本发明的另一个实施例中,如图5所示,所述方法还包括:
步骤S610:在所述微服务控制中心启动后,获取所述微服务控制中心承载的当前承载服务;
步骤S620:通过SignaIR微服务通讯组,将所述当前承载服务按照预设编排规则实时注册至缓存。
具体地,预设编排规则为按照服务器代号、微服务代号、服务接口编码或者方法&参数为基础进行排序和编排,进而实现分类型强的优点。
在本发明的另一个实施例中,如图6所示,所述方法还包括:
步骤710:当启动外部调用服务或内部调用服务时,获取当前调用服务接口;
步骤720:根据所述当前调用服务接口从内存副本中查找并获取最优入口信息。
具体地,当启动外部调用服务或内部调用服务时,从内存副本中查找并获取最优入口信息,实现高效率入口获取。
进一步地,最优入口信息的获取,为在能够获取的入口信息中,选取效率最高的,如路径最短或者相应时间越短的入口信息。
在本发明的另一个实施例中,所述方法还包括启动代理网关服务,具体为:基于.net 5的Kestrel轻量级服务器承载Http服务及Grpc服务,这样支持Json/ProtoBuf/MessagePack,此外,同时还集成YARP支持各类负载均衡和反向代理。其中,YARP是一个基于.net(core)和asp.net(core)的用来代理服务器的反向代理组件,YARP的主要区别在于它的设计易于定制和调整,以适应每种部署方案的特定需求,进而满足使用需求。
进一步地,当进行外部调用时,采用Token授权方式调用,具体支持两种方式,其一为WebApi采用Http协议调用支持Json数据格式,采用GZIP进行数据压缩。其二为RPC调用采用GRPC客户端使用ProtoBuf数据格式。
在本发明的另一个实施例中,如图7所示,还提供一种微服务架构系统,所述系统包括以下模块:
进程启动模块101,用于获取微服务进程启动指令,并根据所述微服务进程启动指令连接并启动微服务控制中心;
指令接收模块102,用于接收对微服务控制中心作出的当前控制指令;
配置装载模块103,用于根据所述当前控制指令进行配置装载,并在配置装载完成后向所述微服务控制中心注册服务;
服务调用模块104,用于在注册服务完成后,启动gRPC服务端,通过gRPC服务进行内部调用。
在本发明的另一个实施例中,本发明中的所述微服务架构系统采用去中心化部署,可多服务器部署通过mDNS和SingalR组成网格服务,当部署多个服务器时,若有一个服务失效,则自动启动最先发生的服务器为mDNS服务和SingalR服务。
在本发明的另一个实施例中,所述微服务架构系统中,微服务间调用采用面向对象接口调用,较之现有技术中通常微服务间使用Url地址请求,配置复杂容易出错的文本,本发明通过基于面向对象接口调用的方式,以及高性能gRPC传输方式,极大提升使用效率和使用感受。
此外,简化微服务部署,无需部署各类如Spring Cloud需部署的Consul/Zookeeper,Nginx,Zuul等第三方中间件,本发明实现了一键安装,可视化配置,方便按需配置。
微服务采用面向接口的插件化开发,实现可热插拔,且具备HTTP、gRPC等多种传输协议。
在本发明的另一个实施例中,如图8所示,所述配置装载模块还包括以下模块:
信息读取模块201,用于根据所述当前控制指令读取当前配置信息;
组件读取模块202,用于根据所述当前配置信息读取组件插件模块,注入当前服务进程;
服务读取模块203,用于根据所述当前配置信息读取服务插件模块,注入当前服务进程;
路由加入模块204,用于进行动态编译封装为GRPC服务元信息,并将GRPC服务元信息加入GRPC服务路由;
服务注册模块205,用于在将GRPC服务元信息加入GRPC服务路由后,向所述微服务控制中心注册服务。
在本发明的另一个实施例中,所述进程启动模块101还用于:获取微服务进程启动指令,并根据所述微服务进程启动指令发现微服务控制中心;发现微服务控制中心后,通过mdns服务获取微服务控制中心的连接基础信息;根据所述连接基础信息连接所述微服务控制中心;在连接所述微服务控制中心后,加入SignaIR微服务通讯组,以启动微服务控制中心。
在本发明的另一个实施例中,如图9所示,所述系统还包括以下模块:
服务解析模块301,用于获取启动微服务解析服务的解析服务启动指令;
解析启动模块302,用于根据所述解析服务启动指令启动微服务解析服务;
服务中转模块303,用于在微服务解析服务启动后,启动微服务指令中转服务;
进程守护模块304,用于在启动微服务指令中转服务后,启动微服务进程守护;
中心启动模块305,用于启动微服务控制中心。
在本发明的另一个实施例中,如图11所示,所述系统还包括以下模块:
承载服务模块401,用于在所述微服务控制中心启动后,获取所述微服务控制中心承载的当前承载服务;
实时注册模块402,用于通过SignaIR微服务通讯组,将所述当前承载服务按照预设编排规则实时注册至缓存。
在本发明的另一个实施例中,如图12所示,所述系统还包括以下模块:
接口获取模块501,用于当启动外部调用服务或内部调用服务时,获取当前调用服务接口;
入口获取模块502,用于根据所述当前调用服务接口从内存副本中查找并获取最优入口信息。
在本发明的另一个实施例中,如图12所示,还提供一种计算机设备,参照图12,包括存储器和处理器,所述存储器存储有计算机程序,所述处理器执行所述计算机程序时实现上述微服务应用方法中所述的步骤。
在本发明的另一个实施例中,还提供一种计算机可读存储介质,其上存储有计算机程序,所述计算机程序被处理器执行时实现上述微服务应用方法中所述的步骤。
本领域普通技术人员可以理解实现上述实施例方法中的全部或部分流程,是可以通过计算机程序来指令相关的硬件来完成,所述的计算机程序可存储于一非易失性计算机可读取存储介质中,该计算机程序在执行时,可包括如上述各方法的实施例的流程。其中,本申请所提供的各实施例中所使用的对存储器、存储、数据库或其它介质的任何引用,均可包括非易失性和/或易失性存储器。非易失性存储器可包括只读存储器(ROM)、可编程ROM(PROM)、电可编程ROM(EPROM)、电可擦除可编程ROM(EEPROM)或闪存。易失性存储器可包括随机存取存储器(RAM)或者外部高速缓冲存储器。作为说明而非局限,RAM以多种形式可得,诸如静态RAM(SRAM)、动态RAM(DRAM)、同步DRAM(SDRAM)、双数据率SDRAM(DDRSDRAM)、增强型SDRAM(ESDRAM)、同步链路(Synchlink)DRAM(SLDRAM)、存储器总线(Rambus)直接RAM(RDRAM)、直接存储器总线动态RAM(DRDRAM)、以及存储器总线动态RAM(RDRAM)等。
以上所述仅为本发明的较佳实施例而已,并不用以限制本发明,凡在本发明的精神和原则之内所作的任何修改、等同替换和改进等,均应包含在本发明的保护范围之内。
Claims (5)
1.一种微服务应用方法,其特征在于,所述方法包括:
获取微服务进程启动指令,并根据所述微服务进程启动指令连接并启动微服务控制中心;
接收对微服务控制中心作出的当前控制指令;
根据所述当前控制指令进行配置装载,并在配置装载完成后向所述微服务控制中心注册服务;
在注册服务完成后,启动gRPC服务端,通过gRPC服务进行内部调用;
根据所述当前控制指令进行配置装载,并在配置装载完成后向所述微服务控制中心注册服务,具体包括:
根据所述当前控制指令读取当前配置信息;
根据所述当前配置信息读取组件插件模块,注入当前服务进程;
根据所述当前配置信息读取服务插件模块,注入当前服务进程;
进行动态编译封装为GRPC服务元信息,并将GRPC服务元信息加入GRPC服务路由;
在将GRPC服务元信息加入GRPC服务路由后,向所述微服务控制中心注册服务;
获取微服务进程启动指令,并根据所述微服务进程启动指令连接并启动微服务控制中心,具体包括:
获取微服务进程启动指令,并根据所述微服务进程启动指令发现微服务控制中心;
发现微服务控制中心后,通过mdns服务获取微服务控制中心的连接基础信息;
根据所述连接基础信息连接所述微服务控制中心;
在连接所述微服务控制中心后,加入SignaIR微服务通讯组,以启动微服务控制中心;
所述方法还包括:
获取启动微服务解析服务的解析服务启动指令;
根据所述解析服务启动指令启动微服务解析服务;
在微服务解析服务启动后,启动微服务指令中转服务;
在启动微服务指令中转服务后,启动微服务进程守护;
启动微服务控制中心;
所述方法还包括:
在所述微服务控制中心启动后,获取所述微服务控制中心承载的当前承载服务;
通过SignaIR微服务通讯组,将所述当前承载服务按照预设编排规则实时注册至缓存。
2.根据权利要求1所述的微服务应用方法,其特征在于,所述方法还包括:
当启动外部调用服务或内部调用服务时,获取当前调用服务接口;
根据所述当前调用服务接口从内存副本中查找并获取最优入口信息。
3.一种微服务架构系统,其特征在于,所述系统包括:
进程启动模块,用于获取微服务进程启动指令,并根据所述微服务进程启动指令连接并启动微服务控制中心;
指令接收模块,用于接收对微服务控制中心作出的当前控制指令;
配置装载模块,用于根据所述当前控制指令进行配置装载,并在配置装载完成后向所述微服务控制中心注册服务;
服务调用模块,用于在注册服务完成后,启动gRPC服务端,通过gRPC服务进行内部调用;
所述配置装载模块还包括以下模块:
信息读取模块,用于根据所述当前控制指令读取当前配置信息;
组件读取模块,用于根据所述当前配置信息读取组件插件模块,注入当前服务进程;
服务读取模块,用于根据所述当前配置信息读取服务插件模块,注入当前服务进程;
路由加入模块,用于进行动态编译封装为GRPC服务元信息,并将GRPC服务元信息加入GRPC服务路由;
服务注册模块,用于在将GRPC服务元信息加入GRPC服务路由后,向所述微服务控制中心注册服务;
所述进程启动模块还用于:获取微服务进程启动指令,并根据所述微服务进程启动指令发现微服务控制中心;发现微服务控制中心后,通过mdns服务获取微服务控制中心的连接基础信息;根据所述连接基础信息连接所述微服务控制中心;在连接所述微服务控制中心后,加入SignaIR微服务通讯组,以启动微服务控制中心;
所述系统还包括以下模块:
服务解析模块,用于获取启动微服务解析服务的解析服务启动指令;
解析启动模块,用于根据所述解析服务启动指令启动微服务解析服务;
服务中转模块,用于在微服务解析服务启动后,启动微服务指令中转服务;
进程守护模块,用于在启动微服务指令中转服务后,启动微服务进程守护;
中心启动模块,用于启动微服务控制中心;
所述系统还包括以下模块:
承载服务模块,用于在所述微服务控制中心启动后,获取所述微服务控制中心承载的当前承载服务;
实时注册模块,用于通过SignaIR微服务通讯组,将所述当前承载服务按照预设编排规则实时注册至缓存。
4.一种计算机设备,包括存储器和处理器,所述存储器存储有计算机程序,其特征在于,所述处理器执行所述计算机程序时实现权利要求1至2中任一项所述方法的步骤。
5.一种计算机可读存储介质,其上存储有计算机程序,其特征在于,所述计算机程序被处理器执行时实现权利要求1至2中任一项所述的方法的步骤。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202210418590.4A CN115242863B (zh) | 2022-04-20 | 2022-04-20 | 一种微服务应用方法及微服务架构系统 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202210418590.4A CN115242863B (zh) | 2022-04-20 | 2022-04-20 | 一种微服务应用方法及微服务架构系统 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN115242863A CN115242863A (zh) | 2022-10-25 |
CN115242863B true CN115242863B (zh) | 2024-03-26 |
Family
ID=83668238
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202210418590.4A Active CN115242863B (zh) | 2022-04-20 | 2022-04-20 | 一种微服务应用方法及微服务架构系统 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN115242863B (zh) |
Citations (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN106610836A (zh) * | 2016-12-23 | 2017-05-03 | 国网信息通信产业集团有限公司 | 一种微服务运行管理工具 |
CN108040091A (zh) * | 2017-11-27 | 2018-05-15 | 腾讯数码(天津)有限公司 | 数据处理方法、装置及存储介质 |
CN109412853A (zh) * | 2018-10-31 | 2019-03-01 | 中国建设银行股份有限公司 | 分布式服务注册存储方法、系统、装置和存储介质 |
CN109683988A (zh) * | 2018-12-25 | 2019-04-26 | 鼎信信息科技有限责任公司 | 微服务启动方法、装置、计算机设备和存储介质 |
CN111277422A (zh) * | 2018-12-04 | 2020-06-12 | 中国电信股份有限公司 | 微服务的处理方法、装置、系统和计算机可读存储介质 |
CN112181439A (zh) * | 2020-09-24 | 2021-01-05 | 中国建设银行股份有限公司 | 一种微服务部署方法、装置、电子设备及可读存储介质 |
CN112311869A (zh) * | 2020-10-28 | 2021-02-02 | 苏州万店掌网络科技有限公司 | 多类型微服务注册中心管理系统及方法 |
CN113946491A (zh) * | 2021-10-19 | 2022-01-18 | 深圳壹账通智能科技有限公司 | 微服务数据处理方法、装置、计算机设备及存储介质 |
-
2022
- 2022-04-20 CN CN202210418590.4A patent/CN115242863B/zh active Active
Patent Citations (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN106610836A (zh) * | 2016-12-23 | 2017-05-03 | 国网信息通信产业集团有限公司 | 一种微服务运行管理工具 |
CN108040091A (zh) * | 2017-11-27 | 2018-05-15 | 腾讯数码(天津)有限公司 | 数据处理方法、装置及存储介质 |
CN109412853A (zh) * | 2018-10-31 | 2019-03-01 | 中国建设银行股份有限公司 | 分布式服务注册存储方法、系统、装置和存储介质 |
CN111277422A (zh) * | 2018-12-04 | 2020-06-12 | 中国电信股份有限公司 | 微服务的处理方法、装置、系统和计算机可读存储介质 |
CN109683988A (zh) * | 2018-12-25 | 2019-04-26 | 鼎信信息科技有限责任公司 | 微服务启动方法、装置、计算机设备和存储介质 |
CN112181439A (zh) * | 2020-09-24 | 2021-01-05 | 中国建设银行股份有限公司 | 一种微服务部署方法、装置、电子设备及可读存储介质 |
CN112311869A (zh) * | 2020-10-28 | 2021-02-02 | 苏州万店掌网络科技有限公司 | 多类型微服务注册中心管理系统及方法 |
CN113946491A (zh) * | 2021-10-19 | 2022-01-18 | 深圳壹账通智能科技有限公司 | 微服务数据处理方法、装置、计算机设备及存储介质 |
Also Published As
Publication number | Publication date |
---|---|
CN115242863A (zh) | 2022-10-25 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN106533944B (zh) | 一种分布式api网关、管理方法及管理系统 | |
CN101958914B (zh) | 一种文件共享方法、共享服务器和移动通信终端 | |
US20160277496A1 (en) | Method, server and system for application synchronization | |
US20080132198A1 (en) | Method and system for providing location information for mobile internet calling devices | |
CN102624881B (zh) | 一种面向移动设备的服务缓存系统架构及开发方法 | |
US9554276B2 (en) | System and method for on the fly protocol conversion in obtaining policy enforcement information | |
CN108055157B (zh) | 一种服务节点的获取方法及装置 | |
US7752322B2 (en) | System for ubiquitous network presence and access without cookies | |
US20140214963A1 (en) | Method, server and system for data sharing in social networking service | |
CN101183946B (zh) | 一种获取下载文件资源列表的方法及系统 | |
CN102413436A (zh) | 信息传送方法和系统、以及移动终端上的浏览器 | |
CN112422497B (zh) | 消息传递方法、装置及计算机设备 | |
CN104980448B (zh) | 一种远程监控方法、装置及系统 | |
CN111901157B (zh) | 一种基于k8s的服务部署方法、装置、设备、介质 | |
CN114338063B (zh) | 消息队列系统、业务处理方法及计算机可读存储介质 | |
CN102185917A (zh) | 一种服务器适配移动终端的方法及系统、服务器适配装置 | |
US20100293139A1 (en) | Method, widget terminal and server for synchronizing data | |
CN115242863B (zh) | 一种微服务应用方法及微服务架构系统 | |
CN112751917A (zh) | 资源文件加载方法、网络设备、电子设备及存储介质 | |
JP2005534099A (ja) | データベースの同期 | |
EP1641201B1 (en) | Electronic mail charging system and method | |
CN114595115A (zh) | 模型数据提取方法、系统、电子设备及计算机存储介质 | |
WO2012167473A1 (zh) | 消息状态设置方法和cpm业务服务器 | |
CN111200512B (zh) | 网络连接容灾方法、终端设备、存储介质及电子设备 | |
CN107528797B (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 | ||
GR01 | Patent grant | ||
GR01 | Patent grant |