CN111475372A - 微服务的服务实例监控方法、装置、设备及存储介质 - Google Patents

微服务的服务实例监控方法、装置、设备及存储介质 Download PDF

Info

Publication number
CN111475372A
CN111475372A CN202010163907.5A CN202010163907A CN111475372A CN 111475372 A CN111475372 A CN 111475372A CN 202010163907 A CN202010163907 A CN 202010163907A CN 111475372 A CN111475372 A CN 111475372A
Authority
CN
China
Prior art keywords
service instance
monitoring
abnormal
information
service
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
Application number
CN202010163907.5A
Other languages
English (en)
Inventor
张文军
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Ping An Life Insurance Company of China Ltd
Original Assignee
Ping An Life Insurance Company of China Ltd
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Ping An Life Insurance Company of China Ltd filed Critical Ping An Life Insurance Company of China Ltd
Priority to CN202010163907.5A priority Critical patent/CN111475372A/zh
Publication of CN111475372A publication Critical patent/CN111475372A/zh
Pending legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/30Monitoring
    • G06F11/3003Monitoring arrangements specially adapted to the computing system or computing system component being monitored
    • G06F11/302Monitoring arrangements specially adapted to the computing system or computing system component being monitored where the computing system component is a software system
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/30Monitoring
    • G06F11/3051Monitoring arrangements for monitoring the configuration of the computing system or of the computing system component, e.g. monitoring the presence of processing resources, peripherals, I/O links, software programs
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/30Monitoring
    • G06F11/32Monitoring with visual or acoustical indication of the functioning of the machine
    • G06F11/324Display of status information
    • G06F11/327Alarm or error message display

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • Computing Systems (AREA)
  • Quality & Reliability (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Mathematical Physics (AREA)
  • Debugging And Monitoring (AREA)

Abstract

本申请公开了一种微服务的服务实例监控方法、装置、设备及存储介质,属于计算机技术领域,所述方法包括:获取注册中心的运行状态信息,根据运行状态信息判断是否存在服务实例请求上线操作;若存在服务实例请求上线操作,则获取服务实例的注册记录信息,并将请求上线操作的服务实例在前端监控面板进行显示;对服务实例的运行状况进行监控,得到监控记录信息;根据注册记录信息和监控记录信息,判断服务实例在运行过程中是否存在异常情况;若服务实例在运行过程中存在异常情况,则获取异常服务实例的异常状况信息;根据异常状况信息,对异常服务实例进行下线操作,并将异常服务实例从前端监控面板移除。本申请能够实现微服务服务实例的自动监控。

Description

微服务的服务实例监控方法、装置、设备及存储介质
技术领域
本申请涉及计算机技术领域,尤其涉及一种微服务的服务实例监控方法、装置、设备及存储介质。
背景技术
随着近年来互联网行业的快速发展,微服务架构的应用越来越广泛。微服务架构是拆分出多个可以独立开发、设计、运行和运维的微服务,每个微服务可以独立部署,而每个微服务之间又相互隔离,微服务之间通过应用程序编程接口(Application ProgrammingInterface,API)进行调用,依靠微服务之间的相互调用来服务用户,以满足用户的需求。
微服务架构中的微服务会被部署在不同的服务设备中,例如终端或服务器。一个服务设备可以部署一个微服务,也可以部署多个微服务。微服务本质上是分布式应用,带有若干个服务实例,并且新的服务实例通过注册中心注册,再通过配置中心的配置后可以添加到微服务中。
目前,在微服务运行过程中,通常需要运维人员根据用户需求和系统运行情况对微服务的服务实例进行异常判断和异常处理:将新的服务实例添加到微服务架构中,即服务实例上线;将异常的或不再使用的服务实例从微服务架构中删除,即服务实例下线。发明人意识到,由于微服务运行在不同的服务设备上,并且部署的方式多种多样,通过人工的方式对微服务的服务实例进行监控缺乏准确性和即时性,容易造成微服务架构中服务中心的负载过大的问题,严重时更会导致整个架构出现宕机现象,而现有技术中还未出现能对微服务的服务实例进行自动监控的方法和系统。
申请内容
本申请实施例的目的在于提供一种能够对微服务服务实例的上线操作、异常判断、异常处理和下线操作进行自动监控的监控方法、装置、设备及存储介质,以降低运维人员的工作压力,提高微服务的服务实例监控效率、监控准确性和监控即时性。
为了解决上述技术问题,本申请实施例提供一种微服务的服务实例监控方法,采用了如下所述的技术方案:
获取注册中心的运行状态信息,根据运行状态信息判断是否存在服务实例请求上线操作;
若存在服务实例请求上线操作,则获取服务实例的注册记录信息,并将请求上线操作的服务实例在前端监控面板进行显示;
对服务实例的运行状况进行监控,得到监控记录信息;
根据注册记录信息和监控记录信息,判断服务实例在运行过程中是否存在异常情况;
若服务实例在运行过程中存在异常情况,则获取异常服务实例的异常状况信息;
根据异常状况信息,对异常服务实例进行下线操作,并将异常服务实例从前端监控面板移除。
进一步地,在若存在服务实例请求上线操作,则获取服务实例的注册记录信息之后,还包括:
采用WEBSOCKET双向通信的方式与请求上线操作服务实例建立通信连接。
进一步地,在若存在服务实例请求上线操作,则获取服务实例的注册记录信息之后,还包括:
对服务实例的监控时间间隔进行设定;
将设定的监控时间间隔记录在注册记录信息中。
进一步的,根据注册记录信息和监控记录信息,判断服务实例在运行过程中是否存在异常情况具体为:
获取当前监控时间信息和历史监控时间信息,其中,历史监控时间信息为上一次接收服务实例的运行状况时的时间信息;
计算当前监控时间信息和历史监控时间信息的时间差值;
将时间差值与监控时间间隔进行比对,得到比对结果;
根据比对结果,判断服务实例在运行过程中是否存在异常情况具体。
进一步的,根据比对结果,判断服务实例在运行过程中是否存在异常情况具体包括:
若时间差值小于或等于监控时间间隔,则判定服务实例运行正常;
若时间差值大于监控时间间隔,则判定服务实例运行异常。
进一步的,在若服务实例在运行过程中存在异常情况,则获取异常服务实例的异常状况信息之后,还包括:
对异常状况信息进行解析,得到异常服务实例的连接信息,其中,连接信息用于记录异常服务实例的被调用情况;
根据连接信息对异常服务实例的异常类别进行判断;
若连接信息显示异常服务实例无法被调用,则判定异常服务实例为已下线型异常服务实例;
若连接信息显示异常服务实例可以被调用,则判定异常服务实例为可调用型异常服务实例。
进一步的,根据异常状况信息,对异常服务实例进行下线操作,并将异常服务实例从前端监控面板移除具体包括:
根据异常状况信息,将已下线型异常服务实例从前端控制面板移除;
根据异常状况信息,对已下线型异常服务实例进行反注册处理,得到反注册后的异常服务实例,将反注册后的异常服务实例进行下线操作,并将反注册后的异常服务实例从前端控制面板移除。
为了解决上述技术问题,本申请实施例还提供一种微服务的服务实例监控装置,采用了如下所述的技术方案:
上线判定模块,用于获取注册中心的运行状态信息,根据运行状态信息判断是否存在服务实例请求上线操作;
上线操作模块,用于若存在服务实例请求上线操作,则获取服务实例的注册记录信息,并将请求上线操作的服务实例在前端监控面板进行显示;
服务监控模块,用于对服务实例的运行状况进行监控,得到监控记录信息;
异常判断模块,用于根据注册记录信息和监控记录信息,判断服务实例在运行过程中是否存在异常情况;
异常信息获取模块,用于若服务实例在运行过程中存在异常情况,则获取异常服务实例的异常状况信息;
下线操作模块,用于根据异常状况信息,对异常服务实例进行下线操作,并将异常服务实例从前端监控面板移除。
为了解决上述技术问题,本申请实施例还提供一种计算机设备,包括存储器和处理器,存储器中存储有计算机可读指令,处理器执行计算机可读指令时实现上述微服务的服务实例监控方法的步骤。
为了解决上述技术问题,本申请实施例还提供一种计算机可读存储介质,计算机可读存储介质上存储有计算机可读指令,计算机可读指令被处理器执行时实现上述微服务的服务实例监控方法的步骤。
与现有技术相比,本申请实施例主要有以下有益效果:
本申请公开了一种微服务的服务实例监控方法、装置、设备及存储介质,所述监控方法通过获取注册中心的运行状态信息,根据运行状态信息来判断是否存在服务实例请求上线操作;如果存在服务实例请求上线操作,则获取该服务实例的注册记录信息,并将请求上线操作的服务实例在前端监控面板进行显示,以实现服务实例的上线监控;在服务实例的上线之后,对服务实例的运行状况进行监控,得到监控记录信息;并根据注册记录信息和监控记录信息,判断服务实例在运行过程中是否存在异常情况,判断服务实例运行情况,以实现服务实例的运行过程中的异常监控;若服务实例在运行过程中存在异常情况,则获取异常服务实例的异常状况信息;根据异常状况信息,对异常服务实例进行下线操作,并将异常服务实例从前端监控面板移除,以实现服务实例的下线监控。本申请通过上述技术方案,可以对微服务的服务实例上线操作、异常判断、异常处理和下线操作的自动监控,与现有技术相比,大大降低了运维人员的工作压力,提高了微服务的服务实例监控效率,并且提高了监控准确性和即时性。
附图说明
为了更清楚地说明本申请中的方案,下面将对本申请实施例描述中所需要使用的附图作一个简单介绍,显而易见地,下面描述中的附图是本申请的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1是本申请可以应用于其中的示例性系统架构图;
图2是本申请中微服务的服务实例监控方法的实现流程图之一;
图3是本申请中微服务的服务实例监控方法的实现流程图之二;
图4是图2中步骤S204的一种具体实施方式的流程图;
图5是本申请中微服务的服务实例监控方法的实现流程图之三;
图6是本申请中微服务的服务实例监控装置的一个实施例的结构示意图;
图7是根据本申请的计算机设备的一个实施例的结构示意图。
具体实施方式
除非另有定义,本文所使用的所有的技术和科学术语与属于本申请的技术领域的技术人员通常理解的含义相同;本文中在申请的说明书中所使用的术语只是为了描述具体的实施例的目的,不是旨在于限制本申请;本申请的说明书和权利要求书及上述附图说明中的术语“包括”和“具有”以及它们的任何变形,意图在于覆盖不排他的包含。本申请的说明书和权利要求书或上述附图中的术语“第一”、“第二”等是用于区别不同对象,而不是用于描述特定顺序。
在本文中提及“实施例”意味着,结合实施例描述的特定特征、结构或特性可以包含在本申请的至少一个实施例中。在说明书中的各个位置出现该短语并不一定均是指相同的实施例,也不是与其它实施例互斥的独立的或备选的实施例。本领域技术人员显式地和隐式地理解的是,本文所描述的实施例可以与其它实施例相结合。
为了使本技术领域的人员更好地理解本申请方案,下面将结合附图,对本申请实施例中的技术方案进行清楚、完整地描述。
如图1所示,系统架构100可以包括终端设备101、102、103,网络104和服务器105。网络104用以在终端设备101、102、103和服务器105之间提供通信链路的介质。网络104可以包括各种连接类型,例如有线、无线通信链路或者光纤电缆等等。
用户可以使用终端设备101、102、103通过网络104与服务器105交互,以接收或发送消息等。终端设备101、102、103上可以安装有各种通讯客户端应用,例如网页浏览器应用、购物类应用、搜索类应用、即时通信工具、邮箱客户端、社交平台软件等。
终端设备101、102、103可以是具有显示屏并且支持网页浏览的各种电子设备,包括但不限于智能手机、平板电脑、电子书阅读器、MP3播放器(Moving Picture ExpertsGroup Audio Layer III,动态影像专家压缩标准音频层面3)、MP4(Moving PictureExperts Group Audio Layer IV,动态影像专家压缩标准音频层面4)播放器、膝上型便携计算机和台式计算机等等。
服务器105可以是提供各种服务的服务器,例如对终端设备101、102、103上显示的页面提供支持的后台服务器。
需要说明的是,本申请实施例所提供的微服务的服务实例监控方法一般由服务器/终端设备执行,相应地,微服务的服务实例监控装置一般设置于服务器/终端设备中。
应该理解,图1中的终端设备、网络和服务器的数目仅仅是示意性的。根据实现需要,可以具有任意数目的终端设备、网络和服务器。
在本申请提供的实施例中,各个步骤的执行主体可以是监控中心,监控中心可以部署在微服务架构中,监控中心用于监控服务实例的上线操作、下线操作以及运行情况,并将监控结果反馈到前端监控界面,供运维人员观测。可选地,各步骤的执行主体可以是监控设备中运行的监控系统,上述监控设备可以是终端或服务器。
在本申请提供的实施例中,监控中心监控的服务实例部署在各自的微服务中,上述服务实例微服务中某一具体服务实例,也可以是接入微服务的其它服务实例,例如具有开放API的服务实例等等。此外,调用服务实例实际上是通过访问微服务的接口或方法实现的。
继续参考图2,示出了本申请的微服务的服务实例监控方法的实现流程图之一。所述的微服务的服务实例监控方法,包括以下步骤:
S201,获取注册中心的运行状态信息,根据运行状态信息判断是否存在服务实例请求上线操作。
具体地,由监控中心获取注册中心的运行状态信息,并根据当前时间点有无服务实例请求注册中心进行注册来判断是否存在服务实例请求上线操作,若当前时间点有服务实例请求注册中心进行注册,则判定存在服务实例请求上线操作。
在本申请实施例中,注册中心也称为服务注册中心,服务注册中心主要用于在服务或服务实例进行上线操作时(即启动时),将服务或服务实例的信息进行注册,只有通过注册后的服务或者服务实例才可被服务调用者进行调用。
在本申请实施例中,监控中心本身也可以作为一个微服务,并提前通过向注册中心发送其服务信息进行登记注册。
S202,若存在服务实例请求上线操作,则获取服务实例的注册记录信息,并将请求上线操作的服务实例在前端监控面板进行显示。
具体地,如果监控系统判断出当前时间点存在服务实例请求上线操作,则获取请求上线操作服务实例的注册记录信息,将该注册记录信息发送到前端监控界面,并将请求上线操作的服务实例在前端监控面板进行显示。可选地,在整个监控过程中,前端监控界面用于实时显示服务实例的监控结果。如果监控系统根据注册中心的运行状态信息判断出不存在服务实例请求上线操作,则继续对注册中心的运行状况进行监控,直到存在服务实例请求上线操作为止。其中,注册记录信息为请求上线操作的服务实例在注册中心进行注册时产生的注册信息,注册记录信息可以包括服务实例的名称、网络地址、端口等信息。
在本申请实施例中,在服务实例请求上线操作时(即启动时),服务实例的提供者主动将与该服务实例相关的信息上报到服务注册中心进行注册,服务调用者在调用该服务实例时,将服务实例信息从服务中心下载到本地缓存,服务调用者根据本地缓存中已缓存的服务实例信息远程调用该服务实例信息对应的服务实例。
进一步地,在若存在服务实例请求上线操作,则获取服务实例的注册记录信息之后,还包括:
S221,采用WEBSOCKET双向通信的方式与请求上线操作服务实例建立通信连接。
具体地,采用WEBSOCKET双向通信的方式在请求上线操作的服务实例与监控中心之间建立通信连接。
在本申请实施例中,若存在服务实例请求上线操作,则由注册中心对请求上线操作的服务实例进行注册,在注册完成后,将请求上线操作的服务实例与监控中心之间采用WEBSOCKET双向通信的方式进行连接,方便服务实例与监控中心之间实现双向数据传输和数据共享,有助于提高监控中心的监控效率,并且提高了其监控的准确性和即时性。
在本申请实施例中,WEBSOCKET通信为双向通信,当服务实例A被调用时,服务实例A会通过WEBSOCKET通信通道向监控中心发送连接请求,监控中心在接收到服务实例A发来的连接请求之后,与服务实例A实现数据互通;WEBSOCKET通信连接具有双向特性,且WEBSOCKET通信连接为长连接,即只要连接双方不做出中断连接操作,该连接会一直存在,因此服务实例与监控中心可以实现持续性的数据互通,当服务调用者调用一次服务实例A时,其服务处理结果(即运行情况)都会通过该WEBSOCKET通信通道传输给监控中心,方便监控中心对服务实例进行持续性监控。
进一步地参考图3,图3是本申请中微服务的服务实例监控方法的实现流程图之二,在若存在服务实例请求上线操作,则获取服务实例的注册记录信息之后,还包括:
S301,对服务实例的监控时间间隔进行设定。
在本申请的实施例中,运维人员通过设定一个监控时间间隔(可以设定为5s),服务实例进行上线操作以后,服务实例需要在运维人员设定的监控时间间隔内至少向监控中心发送一次自身的运行情况。如果在一个预设的监控时间间隔内,监控中心收到服务实例发送过来的运行情况,则监控中心将该服务实例判断为运行正常,如果在一个预设的监控时间间隔内,监控中心没有收到服务实例发送过来的运行情况,则监控中心将该服务实例判断为运行异常,具体判定过程请参照步骤S401至S404。
S302,将设定的监控时间间隔记录在注册记录信息中。
具体的,运维人员设定的监控时间间隔记录在注册记录信息中,方便监控中心进行调用。
在本申请实施例中,所述监控方法通过获取注册中心的运行状态信息,根据运行状态信息来判断是否存在服务实例请求上线操作;如果存在服务实例请求上线操作,则获取该服务实例的注册记录信息,并将请求上线操作的服务实例在前端监控面板进行显示,以实现微服务服务实例的上线监控。与现有技术相比,所述监控方法能够对微服务服务实例的上线进行自动监控,大大降低了运维人员的工作压力,提高了微服务的服务实例监控效率,并且提高了监控准确性和即时性。
S203,对服务实例的运行状况进行监控,得到监控记录信息;
具体地,监控中心实时对服务实例的运行状况进行监控具体为通过WEBSOCKET通信接收服务实例传送过来的运行情况,并根据服务实例传送过来的运行情况,生成监控记录信息。需要说明的是,每一次接收到服务实例传来的运行状况,监控中心会同时记录接收到服务实例传来的运行状况时的时间信息。
在本申请实施例中,服务实例需要在运维人员设定的监控时间间隔内至少向监控中心发送一次自身的运行情况,如果在一个预设的监控时间间隔内,监控中心没有收到该服务实例发送过来的运行情况,则监控中心将该服务实例判断为运行异常,具体判定过程请参照步骤S401至S404。
S204,根据注册记录信息和监控记录信息,判断服务实例在运行过程中是否存在异常情况。
进一步的参考图4,图4是图2中步骤S204的一种具体实施方式的流程图,根据注册记录信息和监控记录信息,判断服务实例在运行过程中是否存在异常情况具体为:
S401,获取当前监控时间信息和历史监控时间信息,其中,历史监控时间信息为上一次接收服务实例的运行状况时的时间信息。
S402,计算当前监控时间信息和历史监控时间信息的时间差值。
S403,将时间差值与监控时间间隔进行比对,得到比对结果。
S404,根据比对结果,判断服务实例在运行过程中是否存在异常情况。
进一步的,根据比对结果,判断服务实例在运行过程中是否存在异常情况具体包括:
S441,若时间差值小于或等于监控时间间隔,则判定服务实例运行正常。
S442,若时间差值大于监控时间间隔,则判定服务实例运行异常。
在本申请实施例中,每一次接收到服务实例传来的运行状况,监控中心会同时记录接收到服务实例传来的运行状况时的时间信息,该时间信息称为监控时间信息,该监控时间信息记录在监控记录信息中。需要说明的是,所述当前监控时间信息为当前接收服务实例的运行状况的时间信息,所述历史监控时间信息为上一次接收服务实例的运行状况时的时间信息。
在本申请实施例中,监控中心根据当前监控时间信息和历史监控时间信息,计算当前监控时间信息和历史监控时间信息的时间差值,并将时间差值与监控时间间隔进行比对,得到比对结果,再根据比对结果,判断服务实例在运行过程中是否存在异常情况,若时间差值小于或等于监控时间间隔,则判定服务实例运行正常,若时间差值大于监控时间间隔,则判定服务实例运行异常。通过计算当前监控时间信息和历史监控时间信息的时间差值,并将时间差值与监控时间间隔进行比对,来自动监控服务实例在运行过程中是否存在异常,大大降低了运维人员的工作压力,提高了微服务的服务实例监控效率,并且提高了监控准确性和即时性。
进一步的,在步骤S442若时间差值大于监控时间间隔,则判定服务实例运行异常之后还包括以下步骤:
S443,生成服务实例运行异常警报指令,并向前端监控面板发送该运行异常警报指令。
具体地,若时间差值大于监控时间间隔,则监控中心判定服务实例运行异常,并生成服务实例运行异常警报指令,将运行异常警报指令发送给前端监控面板,前端监控面板根据该运行异常警报指令显示服务实例运行异常警报,提示运维人员微服务架构中存在服务实例运行异常。
在本申请实施例中,所述监控方法在服务实例的上线之后,通过对服务实例的运行状况进行监控,得到监控记录信息;并根据注册记录信息和监控记录信息,判断服务实例在运行过程中是否存在异常情况,判断服务实例运行情况,以实现微服务服务实例的运行过程中的异常监控。与现有技术相比,所述监控方法能够对微服务服务实例的运行过程中的异常进行自动监控,大大降低了运维人员的工作压力,提高了微服务的服务实例监控效率,并且提高了监控准确性和即时性。
S205,若服务实例在运行过程中存在异常情况,则获取异常服务实例的异常状况信息。
具体地,若服务实例在运行过程中存在异常情况,则监控中心将该服务实例判定为异常服务实例,同时从该服务实例的监控记录信息中获取异常状况信息。
进一步的参考图5,图5是本申请中微服务的服务实例监控方法的实现流程图之三,在若服务实例在运行过程中存在异常情况,则获取异常服务实例的异常状况信息之后,还包括:
S601,对异常状况信息进行解析,得到异常服务实例的连接信息,其中,连接信息用于记录异常服务实例的被调用情况;
S602,根据连接信息对异常服务实例的异常类别进行判断;
S603,若连接信息显示异常服务实例无法被调用,则判定异常服务实例为已下线型异常服务实例;
S604,若连接信息显示异常服务实例可以被调用,则判定异常服务实例为可调用型异常服务实例。
具体地,监控中心对在步骤S205获取的异常状况信息进行解析,得到异常服务实例的连接信息,其中,连接信息用于记录该异常服务实例的被调用情况;根据连接信息对异常服务实例的异常类别进行判断;若连接信息显示异常服务实例无法被调用,则判定异常服务实例为已下线型异常服务实例;若连接信息显示异常服务实例可以被调用,则判定异常服务实例为可调用型异常服务实例。通过监控中心对异常服务实例的异常类别进行判断,可以进一步获取该异常服务实例的当前状态,有利于在步骤S206中对异常服务实例的进一步处理。
在本申请实施例中,异常服务实例包括两种类型:已下线型异常服务实例和可调用型异常服务实例。已下线型异常服务实例是指某个服务实例的提供者已经主动对服务实例进行了下线操作,并且注册中心在接收到服务实例提供者给出的下线要求指令的时候,就对该服务实例进行了反注册操作,使得该服务实例不再允许被调用者进行调用。可调用型异常服务实例是指某个服务实例在运行过程中出现程序错误,导致其无法完成相应的功能,但注册中心无法感知服务实例的实际运行情况,因此无法对可调用型异常服务实例执行反注册处理,导致该异常服务实例可以一直允许被调用者调用。
在本申请实施例中,服务实例的反注册是服务实例的注册的反向过程,异常服务实例在进行反注册操作之前,还可以被调用者调用,对异常服务实例的反注册是从注册中心中将该服务实例的名称、网络地址、端口等信息进行占用操作或消除操作,异常服务实例进行反注册操作后,调用者将无法调用该服务实例。
S206,根据异常状况信息,对异常服务实例进行下线操作,并将异常服务实例从前端监控面板移除。
具体地,监控中心根据异常服务实例的异常状况信息,对异常服务实例进行下线操作,并将异常服务实例从前端监控面板移除,解除对异常服务实例的监控。
进一步的,根据异常状况信息,对异常服务实例进行下线操作,并将异常服务实例从前端监控面板移除具体包括:
S261,根据异常状况信息,将已下线型异常服务实例从前端控制面板移除。
S262,根据异常状况信息,对可调用型异常服务实例进行反注册处理,得到反注册后的异常服务实例,将反注册后的异常服务实例进行下线操作,并将反注册后的异常服务实例从前端控制面板移除。
在本申请实施例中,针对已下线型异常服务实例,监控中心根据异常状况信息,直接将已下线型异常服务实例从前端控制面板移除,解除对已下线型异常服务实例的监控。针对可调用型异常服务实例,监控中心根据异常状况信息,对可调用型异常服务实例进行反注册处理,得到反注册后的异常服务实例,将反注册后的异常服务实例进行下线操作,以确保异常服务实例不会再次被调用者继续调用,并将反注册后的异常服务实例从前端控制面板移除,解除对可调用型异常服务实例的监控。
在本申请实施例中,若服务实例在运行过程中存在异常情况,则通过获取异常服务实例的异常状况信息;根据异常状况信息,对异常服务实例进行下线操作,并将异常服务实例从前端监控面板移除,解除对服务实例的监控,以实现服务实例的下线监控。与现有技术相比,所述监控方法能够对微服务服务实例的下线进行自动监控,大大降低了运维人员的工作压力,提高了微服务的服务实例监控效率,并且提高了监控准确性和即时性。
综上所述,本申请公开了一种微服务的服务实例监控方法、装置、设备及存储介质,所述监控方法通过获取注册中心的运行状态信息,根据运行状态信息来判断是否存在服务实例请求上线操作;如果存在服务实例请求上线操作,则获取该服务实例的注册记录信息,并将请求上线操作的服务实例在前端监控面板进行显示,以实现服务实例的上线监控;在服务实例的上线之后,对服务实例的运行状况进行监控,得到监控记录信息;并根据注册记录信息和监控记录信息,判断服务实例在运行过程中是否存在异常情况,判断服务实例运行情况,以实现服务实例的运行过程中的异常监控;若服务实例在运行过程中存在异常情况,则获取异常服务实例的异常状况信息;根据异常状况信息,对异常服务实例进行下线操作,并将异常服务实例从前端监控面板移除,以实现服务实例的下线监控。本申请通过上述技术方案,可以对微服务的服务实例上线操作、异常判断、异常处理和下线操作的自动监控,与现有技术相比,大大降低了运维人员的工作压力,提高了微服务的服务实例监控效率,并且提高了监控准确性和即时性。
本领域普通技术人员可以理解实现上述实施例方法中的全部或部分流程,是可以通过计算机可读指令来指令相关的硬件来完成,该计算机可读指令可存储于一计算机可读取存储介质中,该程序在执行时,可包括如上述各方法的实施例的流程。其中,前述的存储介质可为磁碟、光盘、只读存储记忆体(Read-Only Memory,ROM)等非易失性存储介质,或随机存储记忆体(Random Access Memory,RAM)等。
应该理解的是,虽然附图的流程图中的各个步骤按照箭头的指示依次显示,但是这些步骤并不是必然按照箭头指示的顺序依次执行。除非本文中有明确的说明,这些步骤的执行并没有严格的顺序限制,其可以以其他的顺序执行。而且,附图的流程图中的至少一部分步骤可以包括多个子步骤或者多个阶段,这些子步骤或者阶段并不必然是在同一时刻执行完成,而是可以在不同的时刻执行,其执行顺序也不必然是依次进行,而是可以与其他步骤或者其他步骤的子步骤或者阶段的至少一部分轮流或者交替地执行。
进一步参考图6,作为对上述图2所示方法的实现,图6是本申请提供了一种微服务的服务实例监控装置的一个实施例的结构示意图,该装置实施例与图2所示的方法实施例相对应,该装置具体可以应用于各种电子设备中。
如图6所示,本实施例所述的微服务的服务实例监控装置包括:上线判定模块601、上线操作模块602、服务监控模块603、异常判断模块604、异常信息获取模块605以及下线操作模块606,其中:
上线判定模块601,用于获取注册中心的运行状态信息,根据运行状态信息判断是否存在服务实例请求上线操作。
上线操作模块602,用于若存在服务实例请求上线操作,则获取服务实例的注册记录信息,并将请求上线操作的服务实例在前端监控面板进行显示。
服务监控模块603,用于对服务实例的运行状况进行监控,得到监控记录信息。
异常判断模块604,用于根据注册记录信息和监控记录信息,判断服务实例在运行过程中是否存在异常情况。
异常信息获取模块605,用于若服务实例在运行过程中存在异常情况,则获取异常服务实例的异常状况信息。
下线操作模块606,用于根据异常状况信息,对异常服务实例进行下线操作,并将异常服务实例从前端监控面板移除。
进一步地,该监控装置还包括:
WEBSOCKET通信模块607,采用WEBSOCKET双向通信的方式与请求上线操作服务实例建立通信连接。
进一步地,该监控装置还包括:
时间设定模块608,用于对服务实例的监控时间间隔进行设定。
时间记录模块609,用于将设定的监控时间间隔记录在注册记录信息中。
进一步的,异常判断模块604包括:
时间信息获取单元641,用于获取当前监控时间信息和历史监控时间信息,其中,历史监控时间信息为与当前监控时间临近的在上一次监控中获得的时间信息。
时间差值计算单元642,用于计算当前监控时间信息和历史监控时间信息的时间差值。
比对单元643,用于将时间差值与监控时间间隔进行比对,得到比对结果。
比对结果判断单元644,根据比对结果,判断服务实例在运行过程中是否存在异常情况具体。
进一步的,比对结果判断单元644包括:
第一判定子单元6441,用于若时间差值小于或等于监控时间间隔,则判定服务实例运行正常。
第二判定子单元6442,用于若时间差值大于监控时间间隔,则判定服务实例运行异常。
进一步的,该装置还包括:
连接信息获取模块610,用于对异常状况信息进行解析,得到异常服务实例的连接信息,其中,连接信息用于记录异常服务实例的被调用情况;
异常类别判断模块611,用于根据连接信息对异常服务实例的异常类别进行判断;
第一异常类别结果模块612,用于若连接信息显示异常服务实例无法被调用,则判定异常服务实例为已下线型异常服务实例;
第二异常类别结果模块613,用于若连接信息显示异常服务实例可以被调用,则判定异常服务实例为可调用型异常服务实例。
进一步的,下线操作模块606包括:
第一下线操作单元661,用于根据所述异常状况信息,将已下线型异常服务实例从前端控制面板移除。
第二下线操作单元662,用于根据所述异常状况信息,对可调用型异常服务实例进行反注册处理,得到反注册后的异常服务实例,将反注册后的异常服务实例进行下线操作,并将反注册后的异常服务实例从前端控制面板移除。
本申请公开了一种微服务的服务实例监控装置通过获取注册中心的运行状态信息,根据运行状态信息来判断是否存在服务实例请求上线操作;如果存在服务实例请求上线操作,则获取该服务实例的注册记录信息,并将请求上线操作的服务实例在前端监控面板进行显示,以实现服务实例的上线监控;在服务实例的上线之后,对服务实例的运行状况进行监控,得到监控记录信息;并根据注册记录信息和监控记录信息,判断服务实例在运行过程中是否存在异常情况,判断服务实例运行情况,以实现服务实例的运行过程中的异常监控;若服务实例在运行过程中存在异常情况,则获取异常服务实例的异常状况信息;根据异常状况信息,对异常服务实例进行下线操作,并将异常服务实例从前端监控面板移除,以实现服务实例的下线监控。本申请公开了一种微服务的服务实例监控装置,通过上述技术方案,可以对微服务的服务实例上线操作、异常判断、异常处理和下线操作的自动监控,与现有技术相比,大大降低了运维人员的工作压力,提高了微服务的服务实例监控效率,并且提高了监控准确性和即时性。
为解决上述技术问题,本申请实施例还提供计算机设备。具体请参阅图7,图7为本实施例计算机设备基本结构框图。
所述计算机设备6包括通过系统总线相互通信连接存储器61、处理器62、网络接口63。需要指出的是,图中仅示出了具有组件61-63的计算机设备6,但是应理解的是,并不要求实施所有示出的组件,可以替代的实施更多或者更少的组件。其中,本技术领域技术人员可以理解,这里的计算机设备是一种能够按照事先设定或存储的指令,自动进行数值计算和/或信息处理的设备,其硬件包括但不限于微处理器、专用集成电路(ApplicationSpecific Integrated Circuit,ASIC)、可编程门阵列(Field-Programmable Gate Array,FPGA)、数字处理器(Digital Signal Processor,DSP)、嵌入式设备等。
所述计算机设备可以是桌上型计算机、笔记本、掌上电脑及云端服务器等计算设备。所述计算机设备可以与用户通过键盘、鼠标、遥控器、触摸板或声控设备等方式进行人机交互。
所述存储器61至少包括一种类型的可读存储介质,所述可读存储介质包括闪存、硬盘、多媒体卡、卡型存储器(例如,SD或DX存储器等)、随机访问存储器(RAM)、静态随机访问存储器(SRAM)、只读存储器(ROM)、电可擦除可编程只读存储器(EEPROM)、可编程只读存储器(PROM)、磁性存储器、磁盘、光盘等。在一些实施例中,所述存储器61可以是所述计算机设备6的内部存储单元,例如该计算机设备6的硬盘或内存。在另一些实施例中,所述存储器61也可以是所述计算机设备6的外部存储设备,例如该计算机设备6上配备的插接式硬盘,智能存储卡(Smart Media Card,SMC),安全数字(Secure Digital,SD)卡,闪存卡(FlashCard)等。当然,所述存储器61还可以既包括所述计算机设备6的内部存储单元也包括其外部存储设备。本实施例中,所述存储器61通常用于存储安装于所述计算机设备6的操作系统和各类应用软件,例如微服务的服务实例监控方法的程序代码等。此外,所述存储器61还可以用于暂时地存储已经输出或者将要输出的各类数据。
所述处理器62在一些实施例中可以是中央处理器(Central Processing Unit,CPU)、控制器、微控制器、微处理器、或其他数据处理芯片。该处理器62通常用于控制所述计算机设备6的总体操作。本实施例中,所述处理器62用于运行所述存储器61中存储的程序代码或者处理数据,例如运行所述微服务的服务实例监控方法的程序代码。
所述网络接口63可包括无线网络接口或有线网络接口,该网络接口63通常用于在所述计算机设备6与其他电子设备之间建立通信连接。
本申请还提供了另一种实施方式,即提供一种计算机可读存储介质,所述计算机可读存储介质存储有微服务的服务实例监控方法的程序,所述微服务的服务实例监控方法的程序可被至少一个处理器执行,以使所述至少一个处理器执行如上述的微服务的服务实例监控方法的步骤。
通过以上的实施方式的描述,本领域的技术人员可以清楚地了解到上述实施例方法可借助软件加必需的通用硬件平台的方式来实现,当然也可以通过硬件,但很多情况下前者是更佳的实施方式。基于这样的理解,本申请的技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质(如ROM/RAM、磁碟、光盘)中,包括若干指令用以使得一台终端设备(可以是手机,计算机,服务器,空调器,或者网络设备等)执行本申请各个实施例所述的方法。
显然,以上所描述的实施例仅仅是本申请一部分实施例,而不是全部的实施例,附图中给出了本申请的较佳实施例,但并不限制本申请的专利范围。本申请可以以许多不同的形式来实现,相反地,提供这些实施例的目的是使对本申请的公开内容的理解更加透彻全面。尽管参照前述实施例对本申请进行了详细的说明,对于本领域的技术人员来而言,其依然可以对前述各具体实施方式所记载的技术方案进行修改,或者对其中部分技术特征进行等效替换。凡是利用本申请说明书及附图内容所做的等效结构,直接或间接运用在其他相关的技术领域,均同理在本申请专利保护范围之内。

Claims (10)

1.一种微服务的服务实例监控方法,其特征在于,包括:
获取注册中心的运行状态信息,根据所述运行状态信息判断是否存在服务实例请求上线操作;
若存在服务实例请求上线操作,则获取所述服务实例的注册记录信息,并将请求上线操作的所述服务实例在前端监控面板进行显示;
对所述服务实例的运行状况进行监控,得到监控记录信息;
根据所述注册记录信息和所述监控记录信息,判断所述服务实例在运行过程中是否存在异常情况;
若所述服务实例在运行过程中存在异常情况,则获取异常服务实例的异常状况信息;
根据所述异常状况信息,对所述异常服务实例进行下线操作,并将所述异常服务实例从所述前端监控面板移除。
2.如权利要求1所述的微服务的服务实例监控方法,其特征在于,在所述若存在服务实例请求上线操作,则获取所述服务实例的注册记录信息之后,还包括:
采用WEBSOCKET双向通信的方式与请求上线操作所述服务实例建立通信连接。
3.如权利要求1所述的微服务的服务实例监控方法,其特征在于,在所述若存在服务实例请求上线操作,则获取所述服务实例的注册记录信息之后,还包括:
对所述服务实例的监控时间间隔进行设定;
将设定的所述监控时间间隔记录在所述注册记录信息中。
4.如权利要求3所述的微服务的服务实例监控方法,其特征在于,根据所述注册记录信息和所述监控记录信息,判断所述服务实例在运行过程中是否存在异常情况具体为:
获取当前监控时间信息和历史监控时间信息,其中,所述历史监控时间信息为上一次接收所述服务实例的运行状况时的时间信息;
计算所述当前监控时间信息和所述历史监控时间信息的时间差值;
将所述时间差值与所述监控时间间隔进行比对,得到比对结果;
根据所述比对结果,判断所述服务实例在运行过程中是否存在异常情况具体。
5.如权利要求4所述的微服务的服务实例监控方法,其特征在于,所述根据所述比对结果,判断所述服务实例在运行过程中是否存在异常情况具体包括:
若所述时间差值小于或等于所述监控时间间隔,则判定所述服务实例运行正常;
若所述时间差值大于所述监控时间间隔,则判定所述服务实例运行异常。
6.如权利要求1所述的微服务的服务实例监控方法,其特征在于,在所述若所述服务实例在运行过程中存在异常情况,则获取异常服务实例的异常状况信息之后,还包括:
对所述异常状况信息进行解析,得到所述异常服务实例的连接信息,其中,所述连接信息用于记录所述异常服务实例的被调用情况;
根据所述连接信息对所述异常服务实例的异常类别进行判断;
若所述连接信息显示所述异常服务实例无法被调用,则判定所述异常服务实例为已下线型异常服务实例;
若所述连接信息显示所述异常服务实例可以被调用,则判定所述异常服务实例为可调用型异常服务实例。
7.如权利要求6所述的微服务的服务实例监控方法,其特征在于,所述根据所述异常状况信息,对所述异常服务实例进行下线操作,并将所述异常服务实例从所述前端监控面板移除具体包括:
根据所述异常状况信息,将所述已下线型异常服务实例从所述前端控制面板移除;
根据所述异常状况信息,对所述可调用型异常服务实例进行反注册处理,得到反注册后的异常服务实例,将反注册后的异常服务实例进行下线操作,并将反注册后的异常服务实例从所述前端控制面板移除。
8.一种微服务的服务实例监控装置,其特征在于,包括:
上线判定模块,用于获取注册中心的运行状态信息,根据所述运行状态信息判断是否存在服务实例请求上线操作;
上线操作模块,用于若存在服务实例请求上线操作,则获取所述服务实例的注册记录信息,并将请求上线操作的所述服务实例在前端监控面板进行显示;
服务监控模块,用于对所述服务实例的运行状况进行监控,得到监控记录信息;
异常判断模块,用于根据所述注册记录信息和所述监控记录信息,判断所述服务实例在运行过程中是否存在异常情况;
异常信息获取模块,用于若所述服务实例在运行过程中存在异常情况,则获取异常服务实例的异常状况信息;
下线操作模块,用于根据所述异常状况信息,对所述异常服务实例进行下线操作,并将所述异常服务实例从所述前端监控面板移除。
9.一种计算机设备,其特征在于,包括存储器和处理器,所述存储器中存储有计算机可读指令,所述处理器执行所述计算机可读指令时实现如权利要求1至7中任一项所述微服务的服务实例监控方法的步骤。
10.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质上存储有计算机可读指令,所述计算机可读指令被处理器执行时实现如权利要求1至7中任一项所述微服务的服务实例监控方法的步骤。
CN202010163907.5A 2020-03-10 2020-03-10 微服务的服务实例监控方法、装置、设备及存储介质 Pending CN111475372A (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202010163907.5A CN111475372A (zh) 2020-03-10 2020-03-10 微服务的服务实例监控方法、装置、设备及存储介质

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202010163907.5A CN111475372A (zh) 2020-03-10 2020-03-10 微服务的服务实例监控方法、装置、设备及存储介质

Publications (1)

Publication Number Publication Date
CN111475372A true CN111475372A (zh) 2020-07-31

Family

ID=71747286

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202010163907.5A Pending CN111475372A (zh) 2020-03-10 2020-03-10 微服务的服务实例监控方法、装置、设备及存储介质

Country Status (1)

Country Link
CN (1) CN111475372A (zh)

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN112328448A (zh) * 2020-10-30 2021-02-05 中国平安财产保险股份有限公司 基于Zookeeper的监控方法、监控装置、设备及存储介质
CN112579397A (zh) * 2020-12-25 2021-03-30 京东数字科技控股股份有限公司 服务上线自检方法、装置、设备及存储介质
CN113242297A (zh) * 2021-05-08 2021-08-10 中国邮政储蓄银行股份有限公司 服务系统及服务状态的调整方法
CN115190178A (zh) * 2022-08-10 2022-10-14 苏州创意云网络科技有限公司 一种微服务分流方法、装置和设备

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN108282368A (zh) * 2018-01-24 2018-07-13 云宏信息科技股份有限公司 一种微服务管理系统、方法及计算机存储介质
DE102018210537A1 (de) * 2017-06-28 2019-01-03 Intel Corporation Mikrodienste-Architektur
CN109246246A (zh) * 2018-10-31 2019-01-18 成都知道创宇信息技术有限公司 一种中心化全自动服务发现负载均衡系统
CN109873736A (zh) * 2019-01-18 2019-06-11 苏宁易购集团股份有限公司 一种微服务监控方法及系统
CN110099099A (zh) * 2019-03-28 2019-08-06 中国电子科技集团公司电子科学研究院 针对地面信息港的空间信息微服务封装及服务集成方法

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
DE102018210537A1 (de) * 2017-06-28 2019-01-03 Intel Corporation Mikrodienste-Architektur
CN108282368A (zh) * 2018-01-24 2018-07-13 云宏信息科技股份有限公司 一种微服务管理系统、方法及计算机存储介质
CN109246246A (zh) * 2018-10-31 2019-01-18 成都知道创宇信息技术有限公司 一种中心化全自动服务发现负载均衡系统
CN109873736A (zh) * 2019-01-18 2019-06-11 苏宁易购集团股份有限公司 一种微服务监控方法及系统
CN110099099A (zh) * 2019-03-28 2019-08-06 中国电子科技集团公司电子科学研究院 针对地面信息港的空间信息微服务封装及服务集成方法

Cited By (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN112328448A (zh) * 2020-10-30 2021-02-05 中国平安财产保险股份有限公司 基于Zookeeper的监控方法、监控装置、设备及存储介质
CN112579397A (zh) * 2020-12-25 2021-03-30 京东数字科技控股股份有限公司 服务上线自检方法、装置、设备及存储介质
CN113242297A (zh) * 2021-05-08 2021-08-10 中国邮政储蓄银行股份有限公司 服务系统及服务状态的调整方法
CN115190178A (zh) * 2022-08-10 2022-10-14 苏州创意云网络科技有限公司 一种微服务分流方法、装置和设备
CN115190178B (zh) * 2022-08-10 2024-03-08 苏州创意云网络科技有限公司 一种微服务分流方法、装置和设备

Similar Documents

Publication Publication Date Title
CN111475372A (zh) 微服务的服务实例监控方法、装置、设备及存储介质
CN111800462B (zh) 微服务实例处理方法、装置、计算机设备及存储介质
CN113900834B (zh) 基于物联网技术的数据处理方法、装置、设备及存储介质
CN110727560A (zh) 云服务报警方法及装置
CN115277566B (zh) 数据访问的负载均衡方法、装置、计算机设备及介质
CN113986564A (zh) 应用数据的流量监控方法、装置、计算机设备及介质
CN111813573A (zh) 管理平台与机器人软件的通信方法及其相关设备
CN110881224B (zh) 一种网络长连接方法、装置、设备及存储介质
CN110896362A (zh) 一种故障检测方法和装置
CN112769876A (zh) 一种设备通道信息获取方法、装置、设备和介质
CN112565062B (zh) 即时通信订单的处理方法、相关装置、设备及介质
CN113709151A (zh) 用于登录云应用的方法、装置、设备、介质和产品
CN113495825A (zh) 线路告警的处理方法、装置、电子设备及可读存储介质
WO2019047488A1 (zh) 实现业务系统与多组件交互的方法、电子装置及存储介质
CN114995914A (zh) 图片数据的处理方法、装置、计算机设备及存储介质
WO2023066258A1 (zh) 隐私数据的数据处理方法、装置、计算机设备及介质
CN111290873B (zh) 故障处理方法和装置
CN110597682B (zh) 一种应用部署方法、装置、计算机设备及存储介质
CN110888770B (zh) 用于发送信息的方法和装置
CN113779021A (zh) 数据处理方法、装置、计算机系统及可读存储介质
CN105337811A (zh) 基于Radius服务器的监控系统及监控方法
CN107390981B (zh) 一种全局菜单的控制方法、装置、设备和存储介质
CN111026571B (zh) 处理器降频处理方法、装置及电子设备
CN114500438B (zh) 文件共享方法、装置、电子设备及存储介质
CN116737428B (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