CN107888444A - 服务监控方法、服务监控装置、计算机设备和存储介质 - Google Patents

服务监控方法、服务监控装置、计算机设备和存储介质 Download PDF

Info

Publication number
CN107888444A
CN107888444A CN201710906560.7A CN201710906560A CN107888444A CN 107888444 A CN107888444 A CN 107888444A CN 201710906560 A CN201710906560 A CN 201710906560A CN 107888444 A CN107888444 A CN 107888444A
Authority
CN
China
Prior art keywords
service
node
identity information
instruction
state
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
CN201710906560.7A
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.)
Shenzhen Dingfeng Cattle Technology Co Ltd
Original Assignee
Shenzhen Dingfeng Cattle Technology Co 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 Shenzhen Dingfeng Cattle Technology Co Ltd filed Critical Shenzhen Dingfeng Cattle Technology Co Ltd
Priority to CN201710906560.7A priority Critical patent/CN107888444A/zh
Publication of CN107888444A publication Critical patent/CN107888444A/zh
Pending legal-status Critical Current

Links

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L43/00Arrangements for monitoring or testing data switching networks
    • H04L43/08Monitoring or testing based on specific metrics, e.g. QoS, energy consumption or environmental parameters
    • H04L43/0805Monitoring or testing based on specific metrics, e.g. QoS, energy consumption or environmental parameters by checking availability
    • H04L43/0817Monitoring or testing based on specific metrics, e.g. QoS, energy consumption or environmental parameters by checking availability by checking functioning
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/50Network services
    • H04L67/51Discovery or management thereof, e.g. service location protocol [SLP] or web services

Abstract

本发明提供一种服务监控方法、服务监控装置、计算机设备和计算机可读存储介质,该服务监控方法包括:接收当服务的状态变化时所述服务所发送的事件写入指令;根据所述事件写入指令,获取所述服务对应的服务标识信息;将所述服务标识信息写入服务状态节点中;向监听所述服务状态节点的监控台发送所述服务标识信息,使得所述监控台向终端发送所述服务标识信息。这样,终端能够实时监控服务的状态变化,而且不需要通过附加的外部检测程序来进行定时检测监控,提高了终端的监控效率。

Description

服务监控方法、服务监控装置、计算机设备和存储介质
技术领域
本发明涉及监控技术领域,特别是涉及一种服务监控方法、服务监控装置、计算机设备和存储介质。
背景技术
随着计算机技术的发展,服务对计算机的应用及其应用开发起着至关重要的作用,因此需要对服务的状态进行监控,以便根据服务的状态做出相应调整。
目前实现服务监控,主要是服务提供一个网址链接,通过一个外部检测程序来定时轮询这个网址,然后根据轮询返回的状态码来判断服务的当前状态。
然而,目前实现服务监控的方案,需要通过一个附加的外部检测程序来定时轮询服务所提供的网址链接,存在时间延时,从而导致监控效率低。
发明内容
基于此,有必要针对目前服务监控效率低的技术问题提出一种服务监控方法、服务监控装置、计算机设备和存储介质。
一种服务监控方法,所述方法包括:
接收当服务的状态变化时所述服务所发送的事件写入指令;
根据所述事件写入指令,获取所述服务对应的服务标识信息;
将所述服务标识信息写入服务状态节点中;
向监听所述服务状态节点的监控台发送所述服务标识信息,使得所述监控台向终端发送所述服务标识信息。
一种服务监控装置,所述装置包括:
指令接收模块,用于接收当服务的状态变化时所述服务所发送的事件写入指令;
信息获取模块,用于根据所述事件写入指令,获取所述服务对应的服务标识信息;
信息写入模块,用于将所述服务标识信息写入服务状态节点中;
信息推送模块,用于向监听所述服务状态节点的监控台发送所述服务标识信息,使得所述监控台向终端发送所述服务标识信息。
一种计算机设备,包括存储器和处理器,所述存储器存储有计算机程序,所述计算机程序被所述处理器执行时,使得所述处理器执行以下步骤:
接收当服务的状态变化时所述服务所发送的事件写入指令;
根据所述事件写入指令,获取所述服务对应的服务标识信息;
将所述服务标识信息写入服务状态节点中;
向监听所述服务状态节点的监控台发送所述服务标识信息,使得所述监控台向终端发送所述服务标识信息。
一种计算机可读存储介质,存储有计算机程序,所述计算机程序被处理器执行时,使得所述处理器执行以下步骤:
接收当服务的状态变化时所述服务所发送的事件写入指令;
根据所述事件写入指令,获取所述服务对应的服务标识信息;
将所述服务标识信息写入服务状态节点中;
向监听所述服务状态节点的监控台发送所述服务标识信息,使得所述监控台向终端发送所述服务标识信息。
上述服务监控方法、服务监控装置、计算机设备和计算机可读存储介质,当服务的状态发送变化时,通过接收服务发送的事件写入指令来获取对各个服务起标识作用的服务标识信息,在获取到服务对应的服务标识信息后,将该服务标识信息写入监控台所监听的服务状态节点中。监控台能够实时监听到服务的状态变化,并且使得监控台在监听到服务的状态变化时,实时向终端发送状态发生变化的服务所对应的服务标识信息。这样,终端能够实时监控服务的状态变化,而且不需要通过附加的外部检测程序来进行定时检测监控,提高了终端的监控效率。
附图说明
图1为一个实施例中服务监控系统的应用环境图;
图2为一个实施例中计算机设备的结构示意图;
图3为一个实施例中服务监控方法的流程示意图;
图4为一个实施例中服务监控方法的时序图;
图5为另一个实施例中服务监控方法的时序图;
图6为一个实施例中服务监控装置的结构框图;
图7为另一个实施例中服务监控装置的结构框图。
具体实施方式
为了使本发明的目的、技术方案及优点更加清楚明白,以下结合附图及实施例,对本发明进行进一步详细说明。应当理解,此处所描述的具体实施例仅仅用以解释本发明,并不用于限定本发明。
如图1所示,在一个实施例中,提供了一种服务监控方法的应用环境图。参照图1,该服务监控方法应用于服务监控系统。服务监控系统包括服务器110和终端120,服务器110通过网络与终端120连接。服务器110具体可以是独立的物理服务器,也可以是物理服务器集群。服务器110上可运行有服务、监控中心和监控台。其中,服务、监控中心和监控台三者具体可以运行在同一个服务器上,也可以分别运行在不同的服务器上。终端120具体可以是固定终端或移动终端,移动终端具体可以是手机、平板电脑和笔记本电脑等中的至少一种,固定终端具体可以是台式计算机。
图2为一个实施例中计算机设备的内部结构示意图。该计算机设备可以用作图1中的服务器110。如图2所示,该计算机设备包括通过系统总线连接的处理器、存储器和网络接口。其中,存储器可包括非易失性存储介质和内存储器。该计算机设备的非易失性存储介质存储有操作系统和计算机程序。该计算机程序被处理器执行时,可使得处理器实现一种服务监控方法。计算机设备的内存储器为非易失性存储介质中的计算机程序的运行提供环境,该内存储器可存储有计算机程序,该计算机程序被处理器执行时,使得处理器实现一种服务监控方法。该处理器用于提供计算和控制能力,支撑整个计算机设备的运行。该计算机设备的网络接口用于据以与外部的终端通过互联网通信,比说向终端发送服务的服务标识信息。
本领域技术人员可以理解,图2中示出的结构,仅仅是与本申请方案相关的部分结构的框图,并不构成对本申请方案所应用于其上的计算机设备的限定,具体的计算机设备可以包括比图中所示更多或更少的部件,或者组合某些部件,或者具有不同的部件布置。
如图3所示,在一个实施例中,提供了一种服务监控方法,本实施例以该方法应用于上述图1中的服务器来举例说明。该方法具体包括如下步骤:
S302,接收当服务的状态变化时服务所发送的事件写入指令。
其中,服务是提供基础服务功能的计算机程序,也可以称为服务程序。服务的状态变化是服务从一个状态变化到另一个状态。服务的状态变化具体可以是服务启动或者服务停止等。事件写入指令是触发写入事件的操作的指令。
具体地,服务在启动时或者停止时,触发事件写入指令,将该事件写入指令发送至监控中心。监控中心接收服务所运行于的服务器所发送的事件写入指令,并根据该事件写入指令执行后续步骤S304。监控中心是对服务进行集中监控的计算机程序。监控中心可通过ZooKeeper实现,ZooKeeper是一个分布式的、开放源码的分布式应用程序协调服务。
S304,根据事件写入指令,获取服务对应的服务标识信息。
其中,服务标识信息是用来标识服务的信息。通过该服务标识信息可以区分不同的服务。服务标识信息具体可以标识哪个服务运行在哪个服务器上以及该服务的进程。在一个实施例中,服务的服务标识信息,具体可以包括该服务的服务名、该服务所运行于服务器的服务器标识以及该服务的进程标识。
具体地,当监控中心接收到服务发送的事件写入指令后,可以根据该事件写入指令从服务所在服务器获取该服务所对应的服务标识信息。若事件写入指令携带有服务对应的服务标识信息,监控中心也可以在接收到事件写入指令后,直接从该事件写入指令中直接提取服务标识信息。
S306,将服务标识信息写入服务状态节点中。
其中,服务状态节点是目录节点中用来存储服务状态信息的节点,服务状态节点中存储的服务状态信息可以反映服务的状态变化。服务状态信息包括服务标识信息。一个目录节点中可以仅存在一个服务状态节点。服务状态节点可以被监控台或者终端订阅,当该服务状态节点存在新的标识服务状态变化的服务状态信息时,即可向订阅该服务状态节点的监控台或者终端推送服务状态发生变化的事件信息,从而使得该服务状态节点中所存储的服务状态信息被实时监控。目录节点是一个类似文件系统目录结构的节点结构。一个目录节点有且只有一个根节点,根节点下设有子节点,子节点下还可再设子节点。
具体地,监控中心获取到服务标识信息后,查询目录节点中的服务状态节点,则并将所获取到的服务标识信息存储在该服务状态节点中。
在一个实施例中,若查询到的服务状态节点中存在有服务标识信息,则用根据事件写入指令获取到的服务标识信息覆盖已存在的服务标识信息;若查询到的服务状态节点中不存在任何服务标识信息,则直接将根据事件写入指令获取到的服务标识信息写入高服务状态节点中。
在一个实施例中,监控中心接收到服务发送的事件写入指令后,首先需要查找目录节点是否已经存在。若存在,则直接查找该目录节点中的服务状态节点;若不存在,则需要新建一个初始化的目录节点,再在该新建的目录节点中查找服务状态节点。查找到服务状态节点后,再向该查找到的服务状态节点中写入服务标识信息。
S308,向监听服务状态节点的监控台发送服务标识信息,使得监控台向终端发送服务标识信息。
其中,监控台是指用来实现监听与控制作用的计算机程序或物理装置。监控台可以通过订阅服务状态节点来实时监听该服务状态节点中所存储的服务标识信息的变化,并将所监听到的服务标识信息的变化通知给终端。监控台具体可以是网页页面,也可以是有监控功能的插件。
具体地,监控中心允许监控台通过订阅该服务状态节点的形式来监听该服务状态节点。监控中心将所获取的服务标识信息存储在服务状态节点中后,向监听该服务状态节点的监控台主动推送服务状态发生变化的服务所对应的服务标识信息。监控台在接收到该服务标识信息后,向终端发送该服务标识信息,从而使得终端能够根据该服务标识信息及时了解该服务标识信息对应的服务的当前状态。
在一个实施例中,监控台在接收到监控中心推送的服务标识信息后,可以通过电子邮件的方式向终端发送服务启动或停止的提醒邮件,电子邮件中具体可以包括该服务标识信息,使得终端在接收到该电子邮件后,能准确及时的监控到具体是运行在哪个服务器上、对应哪个进程的哪个服务的启动或停止了。监控台也可以通过短信的方式向终端发送包含服务标识信息的通知消息。
在一个实施例中,监控台可基于WebSocket(一种全双工通信协议)协议向终端发送包含该服务标识信息的服务事件通知。若终端正在浏览器上查看服务状态时,监控台接收到监控中心所推送的服务标识信息,监控台会立即向该终端发送该服务信息标识,使得终端实时监控服务的状态变化。
上述服务监控方法,当服务的状态发送变化时,通过接收服务发送的事件写入指令来获取对各个服务起标识作用的服务标识信息,在获取到服务对应的服务标识信息后,将该服务标识信息写入监控台所监听的服务状态节点中。监控台能够实时监听到服务的状态变化,并且使得监控台在监听到服务的状态变化时,实时向终端发送状态发生变化的服务所对应的服务标识信息。这样,终端能够实时监控服务的状态变化,而且不需要通过附加的外部检测程序来进行定时检测监控,提高了终端的监控效率。
在一个实施例中,服务监控方法中步骤S302包括:接收服务在服务启动时所发送的事件写入指令;和/或,接收服务在接收到服务停止指令且在停止之前发送的事件写入指令。
具体地,监控中心接收服务启动时服务所发送的标识服务启动的事件写入指令。服务停止指令是用于触发服务停止的指令。服务在启动时会注册钩子程序,钩子程序是用来检测拦截服务停止指令的程序。钩子程序在检测到服务的服务停止指令时,使得服务在停止前先向监控中心发送标识服务停止的事件写入指令,在发送事件写入指令之后再停止服务。
在本实施例中,监控中心在服务启动时和服务即将停止时均能接收到服务发送的事件写入指令,通过该事件写入指令即可实时监控到服务的状态变化。
在一个实施例中,上述服务监控方法还包括:接收服务启动时服务所发送的节点注册指令;根据节点注册指令,获取服务的服务名、服务所运行于服务器的服务器标识及服务的进程标识;查询服务名所对应的服务名节点;在服务名节点下注册服务节点;将服务器标识和进程标识写入服务节点中。
其中,节点注册指令是用来触发在服务名节点下注册服务节点的指令。节点注册指令和事件写入指令可以是相同或者不同的指令。服务名是用来区分不同服务的标识,具体可以是汉字、数字和字母等字符中的至少一种。服务器标识是用来区分不同服务器的标识,具体可以是服务器的IP(网际协议)地址,每个服务器有一个唯一标识该服务器的IP地址。进程标识是唯一标识计算机设备上运行的服务进程的一个参数,具体可以进程ID(身份标识号)。具体可以通过服务的服务名、服务所运行于服务器的服务器标识及服务的进程标识来唯一标识该服务,即上述服务监控方法中所说的服务标识信息。
服务名节点是目录节点中用来存储服务名的节点。服务节点是目录节点中用来存储对服务起标识作用的服务器标识和进程标识的节点。监控中心可以根据节点注册指令在服务名节点下注册子节点,该注册的子节点即为服务节点。
具体地,监控中心接收服务启动时发送的节点注册指令,并根据该节点注册指令获取能唯一标识该服务的服务名、该服务所运行于服务器的服务器标识以及该服务的进程标识。监控中心在获取到服务名后,在目录节点中查找该服务名对应的服务名节点。当查询到该服务名对应的服务名节点后,在该服务名节点下注册服务节点;若没有查询到该服务名对应的服务名节点,则根据节点注册指令注册该服务名对应的服务名节点,并在所注册的服务名节点下注册服务节点。监控中心在服务节点注册完成后,将所获取的服务器标识和进程标识存储在所注册的服务节点中。
在一个实施例中,终端通过浏览器向监控台发送获取服务标识信息获取指令,监控台在接收该服务标识信息获取指令后,向监控中心发送服务标识信息查询指令。监控中心接收到监控台所发送的服务标识信息查询指令后,通过查询目录节点中的服务节点,来获取当前处于运行状态的所有服务对应的服务标识信息,并将所获取的所有服务标识信息返回给监控台。监控台将所接收到的所有服务标识信息发送给终端,使得终端能够全面监控当前所有处于运行状态的服务。
在本实施例中,监控中心接收服务启动时发送的节点注册指令,根据该接收到的节点注册指令获取能唯一标识服务的服务标识信息,并通过服务名节点的查询、服务节点的注册及服务节点中信息的写入来将该服务标识信息存储在目录节点中,使得终端可以通过监控台查询到所有服务的运行状态。
在一个实施例中,上述服务监控方法中,在服务名节点下注册服务节点的步骤之前还包括:查询服务名节点下每个服务节点中的服务器标识;将查询的服务器标识与节点注册指令携带的服务器标识进行匹配;若匹配失败,则执行在服务名节点下注册服务节点的步骤;若匹配成功,则停止注册。
具体地,监控中心在根据节点注册指令在服务名节点下注册服务节点之前,首先将所获取的服务器标识与该服务名节点下已注册的所有服务节点中所存储的服务器标识进行匹配。若匹配失败,表示目录节点中没有找到该服务标识信息所标识的服务,即该服务标识信息所唯一标识的服务还未在目录节点中注册对应的服务节点,则根据节点注册指令注册服务节点。若匹配成功,表示该服务已经注册过,无需重复注册,则停止注册。
在本实施例中,监控中心在注册服务节点之前,先将所获取的服务器标识与已有的服务节点中所存储的服务器标识进行匹配,只有没有被注册过的服务才会执行服务节点注册的步骤,防止重复注册,减少了监控中心数据存储量,提高了监控台的监控效率。
在一个实施例中,服务监控方法中步骤S302包括:接收服务在接收到服务停止指令且在停止之前所发送的事件写入指令;步骤S306之后还包括:删除服务节点。
在本实施例中,监控中心接收服务在即将停止时所发送的事件写入指令,并在根据该事件写入指令更新服务状态节点中的服务标识信息后,删除该服务标识信息对应的服务节点,减少了监控中心的数据存储量。而且在服务停止后,删除该服务对应的服务节点,使得终端能够通过查询获取当前处于运行状态的所有服务对应的服务标识信息,且能够有效避免具有该服务标识信息的服务再次启动时因已存在的服务节点而不能注册的问题。
在一个实施例中,上述服务监控方法还包括:接收服务所发送的心跳数据包;当在预设时长内未接收到心跳数据包时,则在预设时长结束后执行向监听服务状态节点的监控台发送服务标识信息,使得监控台向终端发送服务标识信息的步骤;删除服务节点。
其中,心跳数据包是指服务向监控中心通知服务运行状态的自定义数据包。监控中心只有在服务启动时或者停止前才会接收到服务发送的事件写入指令,从而检测到服务的状态变化。当服务处于正常运行或者停止状态时,监控中心无法判断服务的当前状态,可通过接收服务按照预设周期发送的心跳数据包,来检测服务的运行状态。预设周期是预先设定的定期执行指定动作的时间间隔。预设周期具体可以是服务预先设定的相邻两次发送心跳数据包的时间间隔,比如说1秒。预设时长是指预先设置的监控中心接收服务所发送的心跳数据包的等待时间。
具体地,监控中心接收服务按照预设周期发送的心跳数据包。若在预设时长内接收到心跳数据包,则表示服务处于正常运行状态。若在预设时长内没有接收到心跳数据包,则表示服务处于运行异常状态,监控中心删除该处于运行异常状态的服务所对应的服务节点,同时向监控台推送该服务所对应的服务标识信息,使得监控台通知终端该服务的当前运行状态信息。
在本实施例中,监控中心通过接收服务所发送的心跳数据包来检测服务的当前运行状态,以便在服务意外停止时,监控中心仍然能够及时检测到,进一步提高了检测的效率。
如图4所示,在一个具体的实施例中,应用于服务启动时的服务监控方法包括以下步骤:
S402,服务在服务启动时,注册钩子程序;
S403,服务向监控中心发送事件写入指令和节点注册指令。
S404,监控中心在接收到服务发送的事件写入指令后,查询是否存在目录节点,若存在,则执行步骤S406,若不存在,则执行步骤S405。
S405,监控中心新建目录节点。
S406,监控中心根据事件写入指令,获取服务对应的服务标识信息。
S408,监控中心将所获取的服务标识信息写入服务状态节点中。
S410,监控中心向监听服务状态节点的监控台发送服务标识信息。
S412,监控台在接收到终端发送的服务标识信息后,将所接收到的服务标识信息发送给终端。
S414,监控中心在接收到服务发送的节点注册指令后,根据节点注册指令,获取唯一标识服务的服务标识信息,该服务标识信息包括服务的服务名、服务所运行于服务器的服务器标识及服务的进程标识。
S416,监控中心查询服务名所对应的服务名节点,当查询到该服务名对应的服务名节点后,执行步骤S418,若没有查询到该服务名对应的服务名节点,则执行步骤S417。
S417,监控中心注册该服务名对应的服务名节点
S418,监控中心在服务名节点下注册服务节点。
S420,监控中心将服务器标识和进程标识写入服务节点中。
S422,终端通过浏览器向监控台发送服务标识信息获取指令。
S424,监控台在接收到终端的服务标识信息获取指令时,向监控中心发送服务标识信息查询指令。
S426,监控中心在接收到监控台的服务标识信息查询指令时,将当前处于运行状态的所有服务对应的服务标识信息发送给监控台。
S428,监控台将所接收到的所有服务标识信息发送直接推送给终端的浏览器。
可以理解,服务启动时,服务可以同时向监控中心发送事件写入指令和节点注册指令,也可以向监控中心发送标识服务启动的通知,当监控中心接收服务发送的该通知后,触发事件写入指令和节点注册指令。步骤S404至步骤S412关于实现服务状态变化的监控的步骤和步骤S414至步骤S420关于服务节点注册的步骤,并不具体限定先后顺序。监控中心在接收到服务启动时发送的事件写入指令和节点注册指令后,可以并行执行监控服务状态变化和服务节点注册的步骤,也可以先执行其中任意一个步骤。
在本实施例中,服务启动时,会注册的钩子程序,用来在服务停止前向终端发送标识服务停止的事件写入指令,服务在服务启动时还会向监控中心发送事件写入指令和节点注册指令。监控中心在接收到事件写入指令后在服务状态节点中写入相应的服务标识信息,使得监控台能实时监控到,并将所监控到的服务状态信息实时发送给终端。监控中心在接收到节点注册指令后会执行节点注册的操作,使得终端主动查询节点状态信息时,能够通过监控台从监控中心获得当前处于运行状态的所有服务,从而知晓当前具体有哪个服务运行在哪个服务器上。
如图5所示,在一个具体的实施例中,应用于服务停止时的服务监控方法包括以下步骤:
S502,服务启动时所注册的钩子程序,使得服务在接收到服务停止指令且未停止前向监控中心发送标识服务停止的事件写入指令。
S504,监控中心在接收到服务发送的事件写入指令后,根据该事件写入指令,获取服务对应的服务标识信息。
S506,监控中心将所获取的服务标识信息写入服务状态节点中。
S508,监控中心向监听服务状态节点的监控台发送服务标识信息。
S510,监控台在接收到终端发送的服务标识信息后,将所接收到的服务标识信息发送给终端,具体发送方式可以是电子邮件、短信和WebSocket中的至少一种。
S512,监控中心删除服务对应的服务节点。
在本实施例中,通过服务启动时注册的钩子程序来检测服务的停止,当钩子程序检测到服务即将停止时,使得服务向监控中心发送标识服务停止的事件写入指令。监控中心根据该事件写入指令向服务状态节点中写入服务标识信息。监控台通过监听服务状态节点来监控服务的状态变化,并通过多种方式实时向终端发送该状态变化。
如图6所示,在一个实施例中,提供了一种服务监控装置。参照图6,该服务监控装置600包括:指令接收模块601、信息获取模块602、信息写入模块603和信息推送模块604。
指令接收模块601,用于接收当服务的状态变化时服务所发送的事件写入指令。
信息获取模块602,用于根据事件写入指令,获取服务对应的服务标识信息。
信息写入模块603,用于将服务标识信息写入服务状态节点中。
信息推送模块604,用于向监听服务状态节点的监控台发送服务标识信息,使得监控台向终端发送服务标识信息。
上述服务监控装置600,当服务的状态发送变化时,通过接收服务发送的事件写入指令来获取对各个服务起标识作用的服务标识信息,在获取到服务对应的服务标识信息后,将该服务标识信息写入监控台所监听的服务状态节点中。监控台能够实时监听到服务的状态变化,并且使得监控台在监听到服务的状态变化时,实时向终端发送状态发生变化的服务所对应的服务标识信息。这样,终端能够实时监控服务的状态变化,而且不需要通过附加的外部检测程序来进行定时检测监控,提高了终端的监控效率。
在一个实施例中,指令接收模块601还用于接收服务在服务启动时所发送的事件写入指令;和/或,接收服务在接收到服务停止指令且在停止之前发送的事件写入指令。
在本实施例中,监控中心在服务启动时和服务即将停止时均能接收到服务发送的事件写入指令,通过该事件写入指令即可实时监控到服务的状态变化。
在一个实施例中,服务监控装置600还包括:节点查询模块605和节点注册模块606。
指令接收模块601还用于接收服务启动时服务所发送的节点注册指令。
信息获取模块602还用于根据节点注册指令,获取服务的服务名、服务所运行于的服务器对应的服务器标识及服务的进程标识。
节点查询模块605,用于查询服务名所对应的服务名节点。
节点注册模块606,用于在服务名节点下注册服务节点。
信息写入模块603还用于将服务器标识和进程标识写入服务节点中。
在本实施例中,监控中心接收服务启动时发送的节点注册指令,根据该接收到的节点注册指令获取能唯一标识服务的服务标识信息,并通过服务名节点的查询、服务节点的注册及服务节点中信息的写入来将该服务标识信息存储在目录节点中,使得终端可以通过监控台查询到所有服务的运行状态。
在一个实施例中,节点查询模块605还用于查询服务名节点下每个服务节点中的服务器标识;将查询的服务器标识与节点注册指令携带的服务器标识进行匹配;若匹配失败,则使得节点注册模块606执行在服务名节点下注册服务节点的步骤;若匹配成功,则停止注册。
在本实施例中,监控中心在注册服务节点之前,先将所获取的服务器标识与已有的服务节点中所存储的服务器标识进行匹配,只有没有被注册过的服务才会执行服务节点注册的步骤,防止重复注册,减少了监控中心数据存储量,提高了监控台的监控效率。
在一个实施例中,指令接收模块601还用于接收服务在接收到服务停止指令且在停止之前所发送的事件写入指令。
服务监控装置600还包括:节点删除模块607。
节点删除模块607,用于删除服务节点。
在本实施例中,监控中心接收服务在即将停止时所发送的事件写入指令,并在根据该事件写入指令更新服务状态节点中的服务标识信息后,删除该服务标识信息对应的服务节点,减少了监控中心的数据存储量。而且在服务停止后,删除该服务对应的服务节点,使得终端能够通过查询获取当前处于运行状态的所有服务对应的服务标识信息,且能够有效避免具有该服务标识信息的服务再次启动时因已存在的服务节点而不能注册的问题。
在一个实施例中,指令接收模块601还用于接收服务所发送的心跳数据包;当在预设时长内未接收到心跳数据包时,则在预设时长结束后使得信息推送模块604执行向监听服务状态节点的监控台发送服务标识信息,使得监控台向终端发送服务标识信息的步骤;节点删除模块607还用于删除服务节点。
在本实施例中,监控中心通过接收服务所发送的心跳数据包来检测服务的当前运行状态,以便在服务意外停止时,监控中心仍然能够及时检测到,进一步提高了检测的效率。
在一个实施例中,提供了一种计算机设备,包括存储器和处理器,存储器存储有计算机程序,计算机程序被处理器执行时,使得处理器执行以下步骤:接收当服务的状态变化时服务所发送的事件写入指令;根据事件写入指令,获取服务对应的服务标识信息;将服务标识信息写入服务状态节点中;向监听服务状态节点的监控台发送服务标识信息,使得监控台向终端发送服务标识信息。
在一个实施例中,接收当服务的状态变化时服务所发送的事件写入指令,包括:接收服务在服务启动时所发送的事件写入指令;和/或,接收服务在接收到服务停止指令且在停止之前发送的事件写入指令。
在一个实施例中,计算机程序还使得处理器执行以下步骤:接收服务启动时服务所发送的节点注册指令;根据节点注册指令,获取服务的服务名、服务所运行于服务器的服务器标识及服务的进程标识;查询服务名所对应的服务名节点;在服务名节点下注册服务节点;将服务器标识和进程标识写入服务节点中。
在一个实施例中,计算机程序在使得处理器执行在服务名节点下注册服务节点之前,还执行以下步骤:查询服务名节点下每个服务节点中的服务器标识;将查询的服务器标识与节点注册指令携带的服务器标识进行匹配;若匹配失败,则执行在服务名节点下注册服务节点的步骤;若匹配成功,则停止注册。
在一个实施例中,接收当服务的状态变化时服务所发送的事件写入指令,包括:接收服务在接收到服务停止指令且在停止之前所发送的事件写入指令;计算机程序在使得处理器执行将服务标识信息写入服务状态节点中之后,还执行以下步骤:删除服务节点。
在一个实施例中,计算机程序还使得处理器执行以下步骤:接收服务所发送的心跳数据包;当在预设时长内未接收到心跳数据包时,则在预设时长结束后执行向监听服务状态节点的监控台发送服务标识信息,使得监控台向终端发送服务标识信息的步骤;删除服务节点。
上述计算机设备,当服务的状态发送变化时,通过接收服务发送的事件写入指令来获取对各个服务起标识作用的服务标识信息,在获取到服务对应的服务标识信息后,将该服务标识信息写入监控台所监听的服务状态节点中。监控台能够实时监听到服务的状态变化,并且使得监控台在监听到服务的状态变化时,实时向终端发送状态发生变化的服务所对应的服务标识信息。这样,终端能够实时监控服务的状态变化,而且不需要通过附加的外部检测程序来进行定时检测监控,提高了终端的监控效率。
在一个实施例中,提供了一种计算机可读存储介质,存储有计算机程序,所述计算机程序被处理器执行时,使得处理器执行以下步骤:接收当服务的状态变化时服务所发送的事件写入指令;根据事件写入指令,获取服务对应的服务标识信息;将服务标识信息写入服务状态节点中;向监听服务状态节点的监控台发送服务标识信息,使得监控台向终端发送服务标识信息。
在一个实施例中,接收当服务的状态变化时服务所发送的事件写入指令,包括:接收服务在服务启动时所发送的事件写入指令;和/或,接收服务在接收到服务停止指令且在停止之前发送的事件写入指令。
在一个实施例中,计算机程序还使得处理器执行以下步骤:接收服务启动时服务所发送的节点注册指令;根据节点注册指令,获取服务的服务名、服务所运行于服务器的服务器标识及服务的进程标识;查询服务名所对应的服务名节点;在服务名节点下注册服务节点;将服务器标识和进程标识写入服务节点中。
在一个实施例中,计算机程序在使得处理器执行在服务名节点下注册服务节点之前,还执行以下步骤:查询服务名节点下每个服务节点中的服务器标识;将查询的服务器标识与节点注册指令携带的服务器标识进行匹配;若匹配失败,则执行在服务名节点下注册服务节点的步骤;若匹配成功,则停止注册。
在一个实施例中,接收当服务的状态变化时服务所发送的事件写入指令,包括:接收服务在接收到服务停止指令且在停止之前所发送的事件写入指令;计算机程序在使得处理器执行将服务标识信息写入服务状态节点中之后,还执行以下步骤:删除服务节点。
在一个实施例中,计算机程序还使得处理器执行以下步骤:接收服务所发送的心跳数据包;当在预设时长内未接收到心跳数据包时,则在预设时长结束后执行向监听服务状态节点的监控台发送服务标识信息,使得监控台向终端发送服务标识信息的步骤;删除服务节点。
上述计算机可读存储介质,当服务的状态发送变化时,通过接收服务发送的事件写入指令来获取对各个服务起标识作用的服务标识信息,在获取到服务对应的服务标识信息后,将该服务标识信息写入监控台所监听的服务状态节点中。监控台能够实时监听到服务的状态变化,并且使得监控台在监听到服务的状态变化时,实时向终端发送状态发生变化的服务所对应的服务标识信息。这样,终端能够实时监控服务的状态变化,而且不需要通过附加的外部检测程序来进行定时检测监控,提高了终端的监控效率。
本领域普通技术人员可以理解实现上述实施例方法中的全部或部分流程,是可以通过计算机程序来指令相关的硬件来完成,所述的程序可存储于一非易失性计算机可读取存储介质中,该程序在执行时,可包括如上述各方法的实施例的流程。其中,本申请所提供的各实施例中所使用的对存储器、存储、数据库或其它介质的任何引用,均可包括非易失性和/或易失性存储器。非易失性存储器可包括只读存储器(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 (10)

1.一种服务监控方法,所述方法包括:
接收当服务的状态变化时所述服务所发送的事件写入指令;
根据所述事件写入指令,获取所述服务对应的服务标识信息;
将所述服务标识信息写入服务状态节点中;
向监听所述服务状态节点的监控台发送所述服务标识信息,使得所述监控台向终端发送所述服务标识信息。
2.根据权利要求1所述的方法,其特征在于,所述接收当服务的状态变化时所述服务所发送的事件写入指令,包括:
接收所述服务在所述服务启动时所发送的事件写入指令;和/或,
接收所述服务在接收到服务停止指令且在停止之前发送的事件写入指令。
3.根据权利要求1所述的方法,其特征在于,所述方法还包括:
接收所述服务启动时所述服务所发送的节点注册指令;
根据所述节点注册指令,获取所述服务的服务名、所述服务所运行于服务器的服务器标识及所述服务的进程标识;
查询所述服务名所对应的服务名节点;
在所述服务名节点下注册服务节点;
将所述服务器标识和所述进程标识写入所述服务节点中。
4.根据权利要求3所述的方法,其特征在于,所述在所述服务名节点下注册服务节点之前,所述方法还包括:
查询所述服务名节点下每个服务节点中的服务器标识;
将查询的服务器标识与所述节点注册指令携带的服务器标识进行匹配;
若匹配失败,则执行所述在所述服务名节点下注册服务节点的步骤;
若匹配成功,则停止注册。
5.根据权利要求3所述的方法,其特征在于,所述接收当服务的状态变化时所述服务所发送的事件写入指令,包括:
接收所述服务在接收到服务停止指令且在停止之前所发送的事件写入指令;
所述将所述服务标识信息写入服务状态节点中之后,还包括:
删除所述服务节点。
6.根据权利要求3所述的方法,其特征在于,所述方法还包括:
接收所述服务所发送的心跳数据包;
当在预设时长内未接收到所述心跳数据包时,则在所述预设时长结束后执行所述向监听所述服务状态节点的监控台发送所述服务标识信息,使得所述监控台向终端发送所述服务标识信息的步骤;
删除所述服务节点。
7.一种服务监控装置,其特征在于,所述装置包括:
指令接收模块,用于接收当服务的状态变化时所述服务所发送的事件写入指令;
信息获取模块,用于根据所述事件写入指令,获取所述服务对应的服务标识信息;
信息写入模块,用于将所述服务标识信息写入服务状态节点中;
信息推送模块,用于向监听所述服务状态节点的监控台发送所述服务标识信息,使得所述监控台向终端发送所述服务标识信息。
8.根据权利要求7所述的装置,其特征在于,所述装置还包括:节点查询模块和节点注册模块;
所述指令接收模块,还用于接收所述服务启动时所述服务所发送的节点注册指令;
所述信息获取模块,还用于根据所述节点注册指令,获取所述服务的服务名、所述服务所运行于的服务器对应的服务器标识及所述服务的进程标识;
所述节点查询模块,用于查询所述服务名所对应的服务名节点;
所述节点注册模块,用于在所述服务名节点下注册服务节点;
所述信息写入模块还用于将所述服务器标识和所述进程标识写入所述服务节点中。
9.一种计算机设备,包括存储器和处理器,所述存储器存储有计算机程序,所述计算机程序被所述处理器执行时,使得所述处理器执行权利要求1至6中任一项所述方法的步骤。
10.一种计算机可读存储介质,存储有计算机程序,所述计算机程序被处理器执行时,使得所述处理器执行权利要求1至6中任一项所述方法的步骤。
CN201710906560.7A 2017-09-29 2017-09-29 服务监控方法、服务监控装置、计算机设备和存储介质 Pending CN107888444A (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201710906560.7A CN107888444A (zh) 2017-09-29 2017-09-29 服务监控方法、服务监控装置、计算机设备和存储介质

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201710906560.7A CN107888444A (zh) 2017-09-29 2017-09-29 服务监控方法、服务监控装置、计算机设备和存储介质

Publications (1)

Publication Number Publication Date
CN107888444A true CN107888444A (zh) 2018-04-06

Family

ID=61781023

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201710906560.7A Pending CN107888444A (zh) 2017-09-29 2017-09-29 服务监控方法、服务监控装置、计算机设备和存储介质

Country Status (1)

Country Link
CN (1) CN107888444A (zh)

Cited By (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN109672790A (zh) * 2018-09-20 2019-04-23 平安科技(深圳)有限公司 话务请求引流方法、装置、设备及可读存储介质
CN109885460A (zh) * 2019-01-29 2019-06-14 北京明略软件系统有限公司 一种信息获取方法、装置及计算机可读存储介质
CN110413403A (zh) * 2018-04-28 2019-11-05 武汉斗鱼网络科技有限公司 一种应用服务自主检控方法、存储介质、设备及系统
CN110769268A (zh) * 2019-11-07 2020-02-07 网易(杭州)网络有限公司 数据流监测方法及装置
CN110881055A (zh) * 2018-09-05 2020-03-13 易保网络技术(上海)有限公司 基于Redis的微服务处理方法和设备
CN112256497A (zh) * 2020-10-28 2021-01-22 重庆紫光华山智安科技有限公司 一种通用的高可用服务实现方法、系统、介质及终端
CN112328448A (zh) * 2020-10-30 2021-02-05 中国平安财产保险股份有限公司 基于Zookeeper的监控方法、监控装置、设备及存储介质
CN113312230A (zh) * 2020-02-26 2021-08-27 顺丰科技有限公司 云主机的状态监控方法、装置、计算机设备和存储介质
CN114697231A (zh) * 2020-12-31 2022-07-01 电科云(北京)科技有限公司 基于网关的服务发现与服务注册方法和装置

Citations (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20030005148A1 (en) * 2001-06-29 2003-01-02 Misato Mochizuki Assistant server and path connection control method for service provider's network
CN100379208C (zh) * 2000-05-05 2008-04-02 诺玛迪克斯公司 网络使用情况监视设备和相关方法
JP2010122956A (ja) * 2008-11-20 2010-06-03 Nippon Telegr & Teleph Corp <Ntt> サービスコンポーネント管理システム、実行制御サーバ、プロファイルサーバ及びサービスコンポーネント管理方法
CN102135929A (zh) * 2010-01-21 2011-07-27 腾讯科技(深圳)有限公司 一种分布式容错服务系统
US20120209985A1 (en) * 2011-02-15 2012-08-16 Akers David R Detecting network-application service failures
CN102710554A (zh) * 2012-06-25 2012-10-03 深圳中兴网信科技有限公司 分布式消息系统和分布式消息系统的服务状态检测方法
CN104683446A (zh) * 2015-01-29 2015-06-03 广州杰赛科技股份有限公司 一种云存储集群节点服务状态实时监控方法和系统
CN105429791A (zh) * 2015-11-03 2016-03-23 国网技术学院 一种分布式服务状态检测器及方法
CN106130748A (zh) * 2016-08-30 2016-11-16 山东鲁能智能技术有限公司 基于网络的多机多网分布式服务模块状态检测方法及系统
CN106911518A (zh) * 2017-03-31 2017-06-30 广西大学 一种基于云调度系统的运行服务状态监测系统及方法

Patent Citations (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN100379208C (zh) * 2000-05-05 2008-04-02 诺玛迪克斯公司 网络使用情况监视设备和相关方法
US20030005148A1 (en) * 2001-06-29 2003-01-02 Misato Mochizuki Assistant server and path connection control method for service provider's network
JP2010122956A (ja) * 2008-11-20 2010-06-03 Nippon Telegr & Teleph Corp <Ntt> サービスコンポーネント管理システム、実行制御サーバ、プロファイルサーバ及びサービスコンポーネント管理方法
CN102135929A (zh) * 2010-01-21 2011-07-27 腾讯科技(深圳)有限公司 一种分布式容错服务系统
US20120209985A1 (en) * 2011-02-15 2012-08-16 Akers David R Detecting network-application service failures
CN102710554A (zh) * 2012-06-25 2012-10-03 深圳中兴网信科技有限公司 分布式消息系统和分布式消息系统的服务状态检测方法
CN104683446A (zh) * 2015-01-29 2015-06-03 广州杰赛科技股份有限公司 一种云存储集群节点服务状态实时监控方法和系统
CN105429791A (zh) * 2015-11-03 2016-03-23 国网技术学院 一种分布式服务状态检测器及方法
CN106130748A (zh) * 2016-08-30 2016-11-16 山东鲁能智能技术有限公司 基于网络的多机多网分布式服务模块状态检测方法及系统
CN106911518A (zh) * 2017-03-31 2017-06-30 广西大学 一种基于云调度系统的运行服务状态监测系统及方法

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
贺文晓: ""网络服务状态智慧感知与主动推送方法研究"", 《中国优秀硕士学位论文全文数据库(电子期刊)》 *

Cited By (11)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN110413403A (zh) * 2018-04-28 2019-11-05 武汉斗鱼网络科技有限公司 一种应用服务自主检控方法、存储介质、设备及系统
CN110881055A (zh) * 2018-09-05 2020-03-13 易保网络技术(上海)有限公司 基于Redis的微服务处理方法和设备
CN109672790A (zh) * 2018-09-20 2019-04-23 平安科技(深圳)有限公司 话务请求引流方法、装置、设备及可读存储介质
CN109885460A (zh) * 2019-01-29 2019-06-14 北京明略软件系统有限公司 一种信息获取方法、装置及计算机可读存储介质
CN110769268A (zh) * 2019-11-07 2020-02-07 网易(杭州)网络有限公司 数据流监测方法及装置
CN113312230A (zh) * 2020-02-26 2021-08-27 顺丰科技有限公司 云主机的状态监控方法、装置、计算机设备和存储介质
CN112256497A (zh) * 2020-10-28 2021-01-22 重庆紫光华山智安科技有限公司 一种通用的高可用服务实现方法、系统、介质及终端
CN112256497B (zh) * 2020-10-28 2023-05-12 重庆紫光华山智安科技有限公司 一种通用的高可用服务实现方法、系统、介质及终端
CN112328448A (zh) * 2020-10-30 2021-02-05 中国平安财产保险股份有限公司 基于Zookeeper的监控方法、监控装置、设备及存储介质
CN114697231A (zh) * 2020-12-31 2022-07-01 电科云(北京)科技有限公司 基于网关的服务发现与服务注册方法和装置
CN114697231B (zh) * 2020-12-31 2023-08-01 电科云(北京)科技有限公司 基于网关的服务发现与服务注册方法和装置

Similar Documents

Publication Publication Date Title
CN107888444A (zh) 服务监控方法、服务监控装置、计算机设备和存储介质
US10154003B2 (en) Method for acquiring identifier of terminal in network, management network element and storage medium
US9258775B1 (en) Location-based software updates
EP3264810A1 (en) Perception-free authentication method and system, and control method and system based on method
CN109361525B (zh) 重启分布式部署多服务的方法、装置、控制终端及介质
US20140059388A1 (en) Diagnostic and performance data collection
CN110321481A (zh) 消息推送方法、系统、计算机设备和存储介质
CN110365575A (zh) 留言信息展示方法、处理方法、存储介质及装置
CN110474963A (zh) 一种基于zookeeper的资源访问方法、系统、介质及电子设备
CN111182065A (zh) 基于mqtt协议的消息处理方法、装置和计算机设备
CN112615753A (zh) 一种链路异常追踪方法、第一节点、第二节点以及链路
CN107888434B (zh) 网络设备配置同步方法和装置
CN109802842B (zh) 应用拓扑的生成方法及相关设备
CN112580730A (zh) 一种终端类型的识别方法及装置
CN107948242A (zh) 多服务号模板消息发送方法及系统
US20240022507A1 (en) Information flow recognition method, network chip, and network device
CN111211925B (zh) 告警信息同步方法、装置、计算机设备和存储介质
CN109067622A (zh) 状态探测方法、装置及网络服务器
CN109788034B (zh) 用于网关接入设备的配置方法、电子设备及存储介质
CN105577462B (zh) 移动设备的流量统计方法及装置
CN111338710A (zh) 应用程序控制方法、装置、电子设备及存储介质
CN108156071A (zh) 向社区添加成员的方法、终端设备及计算机可读存储介质
CN104753969B (zh) 剪贴板内容信息的同步方法及装置
CN101677314B (zh) 一种同步数据操作的标识方法、装置及系统
CN108848147B (zh) Snmp代理设备注册方法、装置、计算机设备和存储介质

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
AD01 Patent right deemed abandoned
AD01 Patent right deemed abandoned

Effective date of abandoning: 20210730