CN111432042B - 网络地址处理方法、计算机设备及存储介质 - Google Patents
网络地址处理方法、计算机设备及存储介质 Download PDFInfo
- Publication number
- CN111432042B CN111432042B CN202010137266.6A CN202010137266A CN111432042B CN 111432042 B CN111432042 B CN 111432042B CN 202010137266 A CN202010137266 A CN 202010137266A CN 111432042 B CN111432042 B CN 111432042B
- Authority
- CN
- China
- Prior art keywords
- network address
- heartbeat packet
- agent component
- component
- heartbeat
- 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
- 238000003672 processing method Methods 0.000 title claims abstract description 42
- 238000012544 monitoring process Methods 0.000 claims abstract description 40
- 230000000737 periodic effect Effects 0.000 claims abstract description 16
- 230000000875 corresponding effect Effects 0.000 claims description 110
- 238000001514 detection method Methods 0.000 claims description 32
- 238000000034 method Methods 0.000 claims description 21
- 230000004044 response Effects 0.000 claims description 15
- 238000004590 computer program Methods 0.000 claims description 14
- 238000013507 mapping Methods 0.000 claims description 11
- 230000005540 biological transmission Effects 0.000 claims description 10
- 230000002596 correlated effect Effects 0.000 claims description 3
- 238000012545 processing Methods 0.000 description 19
- 230000006870 function Effects 0.000 description 7
- 230000008569 process Effects 0.000 description 4
- 238000010586 diagram Methods 0.000 description 3
- 238000004458 analytical method Methods 0.000 description 1
- 230000009286 beneficial effect Effects 0.000 description 1
- 238000007405 data analysis Methods 0.000 description 1
- 238000013500 data storage Methods 0.000 description 1
- 238000005516 engineering process Methods 0.000 description 1
- 230000005012 migration Effects 0.000 description 1
- 238000013508 migration Methods 0.000 description 1
- 230000003287 optical effect Effects 0.000 description 1
- 238000011084 recovery Methods 0.000 description 1
- 239000007787 solid Substances 0.000 description 1
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L61/00—Network arrangements, protocols or services for addressing or naming
- H04L61/50—Address allocation
- H04L61/5053—Lease time; Renewal aspects
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L43/00—Arrangements for monitoring or testing data switching networks
- H04L43/10—Active monitoring, e.g. heartbeat, ping or trace-route
Landscapes
- Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Health & Medical Sciences (AREA)
- Cardiology (AREA)
- General Health & Medical Sciences (AREA)
- Data Exchanges In Wide-Area Networks (AREA)
Abstract
本发明提供一种网络地址处理方法,将所述Agent组件与API组件建立动态周期的心跳连接;发送心跳包至所述API组件,其中,所述心跳包中携带有所述Agent组件对应的网络地址与请求参数;接收所述API组件返回的心跳包并获取所述心跳包中的最新网络地址;根据所述最新网络地址判断所述Agent组件对应的网络地址是否发生更新;当判断结果为所述Agent组件对应的网络地址发生更新时,将所述Agent组件对应的网络地址更新为所述最新网络地址。本发明还提供计算机设备及存储介质。通过本发明实施例,能够动态更新网络地址,且无需每次在网络地址有变动或扩展时,重新修改Agent组件中的参数配置,提升监控服务效率。
Description
技术领域
本发明涉及状态监控技术领域,尤其涉及一种网络地址处理方法、计算机设备及计算机可读存储介质。
背景技术
在分布式监控架构中,每个地域,不同可用区会根据具体需求各自搭建一套监控服务,各个地域可用区采集到的监控数据会上报到各自可用区的监控服务中,以便进行统一的数据存储及数据分析。一般情况下,会将上报网络地址保存在指定配置文件中,在程序启动时加载到内存中以便需要时使用。
然而,将网络地址保存在指定配置文件中,并不利于监控服务的扩展及灾备,一旦发生上层上报网络地址的迁移和扩展,底层负责采集数据的进程需要修改配置参数,重新启动方可获取到更新的网络地址,操作不够便捷及灵敏。
因而,亟待提出一种解决方法,用于进行网络地址处理。
发明内容
鉴于以上内容,有必要提出一种网络地址处理方法、计算机设备以及计算机可读存储介质,其可以动态更新网络地址,且无需每次在网络地址有变动或扩展时,重新修改Agent组件中的参数配置,提升监控服务效率。
本发明实施例第一方面提供一种网络地址处理方法,应用于Agent组件中,所述网络地址处理方法包括:
将所述Agent组件与API组件建立动态周期的心跳连接;
发送心跳包至所述API组件,其中,所述心跳包中携带有所述Agent组件对应的网络地址与请求参数,所述网络地址对应所述Agent组件监控数据的上报地址;
接收所述API组件返回的心跳包并获取所述心跳包中的最新网络地址;
根据所述最新网络地址判断所述Agent组件对应的网络地址是否发生更新;
当判断结果为所述Agent组件对应的网络地址发生更新时,将所述Agent组件对应的网络地址更新为所述最新网络地址。
进一步地,在本发明实施例提供的上述网络地址处理方法中,所述Agent组件与API组件建立动态周期的心跳连接的步骤包括:
获取最近的一个检测周期内所述Agent组件发出所述心跳包的发出数据;
获取在所述最近的一个检测周期内所述API组件接收到的所述心跳包的接收数据;
根据所述发出数据与所述接收数据统计所述最近的一个检测周期内所述心跳包的丢失次数;
根据所述丢失次数与所述心跳包的发送时间间隔呈负相关的规则调整所述心跳包的下一次发送时间间隔。
进一步地,在本发明实施例提供的上述网络地址处理方法中,所述根据所述丢失次数与所述心跳包的发送时间间隔呈负相关的规则调整所述心跳包的下一次发送时间间隔的步骤包括:
确定所述丢失次数对应的丢失级别;
根据所述丢失级别得到所述心跳包发送时间间隔的比例系数;
根据所述比例系数调整所述心跳包的下一个发送时间间隔。
进一步地,在本发明实施例提供的上述网络地址处理方法中,在所述发送心跳包至所述API组件的步骤之前,所述方法还包括:
获取可用区对应的监控进程,并确定所述监控进程的当前负载数据;
检测所述当前负载数据是否超出预设负载阈值;
当检测结果为所述当前负载数据超出预设负载阈值时,确定所述可用区对应的网络地址满足更新条件,并输出所述可用区对应的网络地址满足更新条件的通知至对应的Agent组件;
根据所述通知在所述心跳包中携带请求参数,并将所述心跳包发送至所述API组件。
进一步地,在本发明实施例提供的上述网络地址处理方法中,所述根据所述最新网络地址判断所述Agent组件对应的网络地址是否发生更新的步骤包括:
判断所述Agent组件对应的网络地址与所述API组件返回的心跳包中携带的所述最新网络地址是否一致;
当判断结果为不一致时,确定所述Agent组件对应的网络地址已发生更新;
当判断结果为一致时,确定所述Agent组件对应的网络地址未发生更新。
本发明实施例第二方面还提供一种网络地址处理方法,应用于API组件中,所述网络地址处理方法包括:
将Agent组件与所述API组件建立动态周期的心跳连接;
接收所述Agent组件发送的心跳包;
检测所述心跳包中是否存在请求参数;
当检测结果为所述心跳包中存在请求参数时,获取所述心跳包中携带的所述Agent组件的网络地址;
根据所述Agent组件的网络地址与可用区的映射关系,从指定数据库中获取对应所述Agent组件的网络地址的目标可用区信息;
获取对应所述目标可用区信息的所述Agent组件的最新网络地址;
将所述Agent组件对应的最新网络地址作为所述心跳包携带的响应数据并将所述响应数据返回至所述Agent组件。
进一步地,在本发明实施例提供的上述网络地址处理方法中,所述方法还包括:
解析出所述心跳包中的所述Agent组件的身份信息;
根据所述Agent组件的身份信息将所述心跳包存储至时间队列中;
开启预设个数的线程并行轮询所述时间队列,并按照时间优先级顺序检测所述心跳包中是否存在请求参数。
进一步地,在本发明实施例提供的上述网络地址处理方法中,所述检测所述心跳包中是否存在请求参数的步骤包括:
检测所述心跳包中是否存在预设格式的数据,当检测结果为所述心跳包中存在预设格式的数据时,确定所述心跳包中存在请求参数;或者
检测所述心跳包中是否存在预设标签,当检测结果为所述心跳包中存在预设标签时,确定所述心跳包中存在请求参数。
本发明实施例第三方面还提供一种计算机设备,所述计算机设备包括处理器,所述处理器用于执行存储器中存储的计算机程序时实现上述任意一项所述网络地址处理方法。
本发明实施例第四方面还提供一种计算机可读存储介质,所述计算机可读存储介质上存储有计算机程序,所述计算机程序被处理器执行时实现上述任意一项所述网络地址处理方法。
本发明实施例提供一种网络地址处理方法、计算机设备以及计算机可读存储介质,将所述Agent组件与API组件建立动态周期的心跳连接;发送心跳包至所述API组件,其中,所述心跳包中携带有所述Agent组件对应的网络地址与请求参数;接收所述API组件返回的心跳包并获取所述心跳包中的最新网络地址;根据所述最新网络地址判断所述Agent组件对应的网络地址是否发生更新;当判断结果为所述Agent组件对应的网络地址发生更新时,将所述Agent组件对应的网络地址更新为所述最新网络地址。通过本发明实施例,能够动态更新网络地址,且无需每次在网络地址有变动或扩展时,重新修改Agent组件中的参数配置,提升监控服务效率。
附图说明
为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据提供的附图获得其他的附图。
图1是本发明第一实施方式提供的网络地址处理方法的流程图。
图2是本发明第二实施方式提供的网络地址处理方法的流程图。
图3是本发明一实施方式的计算机设备的结构示意图。
图4是图3所示的计算机设备的示例性的功能模块图。
如下具体实施方式将结合上述附图进一步说明本发明。
具体实施方式
为了能够更清楚地理解本发明的上述目的、特征和优点,下面结合附图和具体实施例对本发明进行详细描述。需要说明的是,在不冲突的情况下,本申请的实施例及实施例中的特征可以相互组合。
在下面的描述中阐述了很多具体细节以便于充分理解本发明,所描述的实施例是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
除非另有定义,本文所使用的所有的技术和科学术语与属于本发明的技术领域的技术人员通常理解的含义相同。本文中在本发明的说明书中所使用的术语只是为了描述具体的实施例的目的,不是旨在于限制本发明。
图1是本发明第一实施方式的网络地址处理方法的流程图,所述网络地址处理方法可以应用于分布式监控架构中,所述分布式监控架构包括:客户端、服务器端和多个Agent组件。其中,所述服务器端主要负责与所述客户端及所述Agent组件进行交互,所述服务器端开放了一类API组件,所述API组件用于与所述Agent组件进行交互,接收所述Agent组件向服务器端发送的心跳请求,实时监控所述Agent组件的状态。
具体地,所述分布式监控架构对应的实现过程如下所示:
所述Agent组件用于采集监控数据,并向所述API组件发送采集到的所述监控数据;所述API组件将所述监控数据写入到服务器端对应的监控数据库中;所述客户端能够向所述API组件发出获取所述监控数据的请求,所述API组件根据请求将所述监控数据返回给所述客户端,供所述客户端查询修改。
如图1所示,本发明实施例提供一种网络处理方法,应用于Agent组件中,所述网络地址处理方法可以包括如下步骤:
S11、将所述Agent组件与API组件建立动态周期的心跳连接。
在本发明的至少一实施例中,将Agent组件与API组件建立动态周期的心跳连接,也即,所述Agent组件向所述API组件发送心跳包的时间间隔时可以进行动态调整的。具体地,所述Agent组件与API组件建立动态周期的心跳连接的步骤包括:获取最近的一个检测周期内所述Agent组件发出所述心跳包的发出数据;获取在所述最近的一个检测周期内所述API组件接收到的所述心跳包的接收数据;根据所述发出数据与所述接收数据统计所述最近的一个检测周期内所述心跳包的丢失次数;根据所述丢失次数与所述心跳包的发送时间间隔呈负相关的规则调整所述心跳包的下一次发送时间间隔。其中,所述检测周期为用户预先设置的。
优选地,所述根据所述丢失次数与所述心跳包的发送时间间隔呈负相关的规则调整所述心跳包的下一次发送时间间隔的步骤包括:确定所述丢失次数对应的丢失级别;根据所述丢失级别得到所述心跳包发送时间间隔的比例系数;根据所述比例系数调整所述心跳包的下一个发送时间间隔。其中,所述次数与丢失级别的关联关系、所述丢失级别与所述心跳包发送时间间隔的比例系数的关联关系均为预先设置的,可以通过列表形式表示。
示例性地,统计在最近一个检测周期内所述API组件对所述Agent组件发出的心跳包的接收数据,当所述Agent组件发出的心跳包的次数为10次,但所述API组件接收到的心跳包的次数为7次,则所述心跳包的丢失次数为3次。其中,3次属于区间[1,3],对应的丢失级别为一级,丢失级别为一级对应的所述心跳包的发送时间间隔的比例系数为2/3,则缩短所述心跳包的发送时间间隔,且缩短为当前心跳包的发送时间间隔的2/3(例如,当前心跳包的发送时间间隔为12秒,则缩短后的心跳包的发送时间间隔为8秒)。若所述Agent组件发出的心跳包的丢失次数为5次,5次属于区间[4,6],对应的丢失级别为二级,二级对应的所述心跳包发送时间间隔的比例系数为1/2.以此类推,在此不再赘述。
S12、发送心跳包至所述API组件,其中,所述心跳包中携带有所述Agent组件对应的网络地址与请求参数,所述网络地址对应所述Agent组件监控数据的上报地址。
在本发明的至少一实施例中,通过所述Agent组件向所述API组件发送心跳包,其中,所述心跳包中携带有所述Agent组件对应的网络地址与请求参数,所述网络地址对应所述Agent组件监控数据的上报地址,也即所述Agent组件将采集的监控数据上传至所述API组件后,所述API组件根据所述网络地址将所述监控数据写入到服务器端对应的监控数据库中。所述Agent组件的网络地址与可用区信息呈映射关系,且所述网络地址与所述可用区信息的映射关系保存至指定数据库的列表中,所述列表包括可用区信息与对应的所述Agent组件的网络地址。通过所述Agent组件的网络地址可以确定与之对应的可用区信息。其中,所述可用区是指在同一地域内,电力和网络相互独立的物理区域。同一地域内可以包含不同的可用区,且每个可用区可以根据各自需求搭建一套监控服务,所述监控服务包括Agent组件、监控服务器端以及API组件。
所述请求参数用于在判断所述Agent组件对应的网络地址满足更新条件时,获取所述Agent组件对应的最新网络地址。所述请求参数按照预设格式添加在所述心跳包中,所述预设格式为用户预先设置的。所述预设格式为所述Agent组件与所述API组件共有的,具体地,所述方法还包括:所述Agent组件通过离线方式将所述请求参数的预设格式传输给所述API组件,并与所述API组件设定所述预设格式的有效期。因而所述API组件可以通过查看所述心跳包中是否存在所述预设格式的数据即可确定所述Agent组件发送的所述心跳包中是否存在请求参数。优选地,所述方法还包括:对所述请求参数添加预设标签,通过查看所述预设标签,可以直观地检测出所述心跳包中是否携带请求参数,其中,所述预设标签为用户预先设置的,可以为数字标签。
S13、接收所述API组件返回的心跳包并获取所述心跳包中的最新网络地址。
在本发明的至少一实施例中,在所述Agent组件向所述API组件发送心跳包之后,可能会存在所述API组件无响应的情况,也可能存在所述API组件响应的心跳包中未携带网络地址的情况。当所述API组件无响应时,所述方法还包括:通过所述Agent组件再次发送心跳包,并在所述心跳包中携带所述请求参数,请求获取最新的网络地址,直到成功获取到相关信息。当所述Agent组件接收到所述API组件返回的心跳包时,所述方法还包括:检测所述心跳包中是否携带有所述网络地址;当检测结果为所述心跳包中未携带有所述网络地址时,则再次发送心跳包,并在所述心跳包中携带所述请求参数,请求获取最新的网络地址,直到成功获取到相关信息。可以理解的是,所述Agent组件在接收到所述API组件返回的心跳包时,解析所述心跳包以获取所述最新网络地址,若所述心跳包解析有误,则通过所述Agent组件再次发送心跳包,并在所述心跳包中携带所述请求参数,请求获取最新的网络地址,直到成功获取到相关信息。
S14、根据所述最新网络地址判断所述Agent组件对应的网络地址是否发生更新,当判断结果为所述Agent组件对应的网络地址发生更新时,进入步骤S15。
在本发明的至少一实施例中,根据所述响应数据判断网络地址是否更新,所述根据所述最新网络地址判断所述Agent组件对应的网络地址是否发生更新的步骤包括:判断所述Agent组件对应的网络地址与所述API组件返回的心跳包中携带的所述最新网络地址是否一致;当判断结果为不一致时,则确定所述Agent组件对应的网络地址已发生更新,进而需要对所述Agent组件对应的网络地址进行更新;当判断结果为一致时,则确定所述Agent组件对应的网络地址未发生更新,则无需对所述Agent组件对应的网络地址进行更新。
S15、将所述Agent组件对应的网络地址更新为所述最新网络地址。
在本发明的至少一实施例中,当判断结果为所述Agent组件对应的网络地址发生更新时,则更新所述Agent组件对应的网络地址,也即对所述Agent组件需上报监控数据的网络地址进行更新,具体地,将所述Agent组件对应的网络地址更新为所述最新网络地址。
可以理解的是,当遇到某些突发性原因导致服务器端当机,或由于服务器端承载的压力过大时,所述网络地址才需要进行更新。优选地,为了节省传输流量,在所述Agent组件与所述API组件的心跳连接过程中,并不需要在每次心跳包中都携带有请求网络地址更新的请求参数。因而,在发送心跳包至所述API组件之前,还需检测所述可用区对应的网络地址是否满足更新条件,从而当网络地址满足更新条件时,在所述心跳包中携带所述请求参数。具体地,所述检测所述可用区对应的网络地址是否满足更新条件的步骤包括:获取可用区对应的监控进程,并确定所述监控进程的当前负载数据;检测所述当前负载数据是否超出预设负载阈值;当检测结果为所述当前负载数据超出预设负载阈值,确定所述可用区对应的网络地址满足更新条件,并输出所述可用区对应的网络地址满足更新条件的通知至对应的Agent组件中。其中,所述预设负载阈值为用户预先设置的。
可以理解的是,当所述可用区对应的网络地址满足更新条件时,更新所述可用区对应的网络地址,更新的网络地址可以存储在相应的配置文件中,更新网络地址的方法可以包括修改网络地址、迁移网络地址及扩展网络地址等,在此不作限制。当更新所述网络地址之后,向所述API组件输出更新指令,所述更新指令用于通知所述API组件,当前可用区的网络地址已完成更新。优选地,所述更新指令中包含可用区对应的最新的网络地址。
本发明实施例提供一种网络地址处理方法,应用于Agent组件中,将所述Agent组件与API组件建立动态周期的心跳连接;发送心跳包至所述API组件,其中,所述心跳包中携带有所述Agent组件对应的网络地址与请求参数;接收所述API组件返回的心跳包并获取所述心跳包中的最新网络地址;根据所述最新网络地址判断所述Agent组件对应的网络地址是否发生更新;当判断结果为所述Agent组件对应的网络地址发生更新时,将所述Agent组件对应的网络地址更新为所述最新网络地址。通过本发明实施例,可以动态更新网络地址,且无需每次在网络地址有变动或扩展时,重新修改Agent组件中的参数配置,提升监控服务效率。
如图2所示,本发明实施例提供一种网络地址处理方法,应用于API组件中,所述网络地址处理方法包括:
S21、将Agent组件与所述API组件建立动态周期的心跳连接。
在本发明的至少一实施例中,将Agent组件与API组件建立动态周期的心跳连接,也即,所述Agent组件向所述API组件发送心跳包的时间间隔时可以进行动态调整的。具体地,所述将Agent组件与所述API组件建立动态周期的心跳连接的步骤包括:获取最近的一个检测周期内所述Agent组件发出所述心跳包的发出数据;获取在所述最近的一个检测周期内所述API组件接收到的所述心跳包的接收数据;根据所述发出数据与所述接收数据统计所述最近的一个检测周期内所述心跳包的丢失次数;根据所述丢失次数与所述心跳包的发送时间间隔呈负相关的规则调整所述心跳包的下一次发送时间间隔。其中,所述检测周期为用户预先设置的。
S22、接收所述Agent组件发送的心跳包。
在本发明的至少一实施例中,当所述API组件同时接收到多个所述Agent组件发送的心跳包,或者当所述API组件接收到一所述Agent组件发送的多个心跳包时,所述方法还包括:解析出所述心跳包中的所述Agent组件的身份信息;根据所述Agent组件的身份信息将所述心跳包存储至时间队列中;开启预设个数的线程并行轮询所述时间队列,并按照时间优先级顺序检测所述心跳包中是否存在请求参数。其中,所述时间队列是一个以时间戳为优先级的先入先出的数据结构,时间戳越小,数据越先出。时间戳,是一个能表示一份数据在某个特定时间之前已经存在的、完整的、可验证的数据,通常一个字符序列,唯一地标识某一刻的时间。
具体地,对于同一个身份信息的Agent组件发送的心跳包,按照时间戳顺序(所述API组件接收所述心跳包的时间顺序)将其存储至所述时间队列的一队列中,也即所述时间队列由多个不同身份信息的Agent组件发送的心跳包组成的队列构成。
S23、检测所述心跳包中是否存在请求参数,当检测结果为所述心跳包中存在请求参数时,进入步骤S24。
在本发明的至少一实施例中,所述检测所述心跳包中是否存在请求参数的步骤包括:检测所述心跳包中是否存在预设格式的数据,当检测结果为所述心跳包中存在预设格式的数据时,确定所述心跳包中存在请求参数;或者,检测所述心跳包中是否存在预设标签,当检测结果为所述心跳包中存在预设标签时,确定所述心跳包中存在请求参数。
S24、获取所述心跳包中携带的所述Agent组件的当前网络地址。
在本发明的至少一实施例中,当检测结果为所述心跳包中存在请求参数时,获取所述心跳包中携带的所述Agent组件对应的网络地址,所述网络地址为所述Agent组件对应的原始网络地址。
S25、根据所述Agent组件的网络地址与可用区的映射关系,从指定数据库中获取对应所述Agent组件的网络地址的目标可用区信息。
在本发明的至少一实施例中,,根据所述Agent组件的网络地址与可用区的映射关系,从指定数据库中获取对应所述Agent组件的网络地址的目标可用区信息。
具体地,所述Agent组件的网络地址与可用区信息呈映射关系,且所述Agent组件的网络地址与所述可用区信息的映射关系保存至指定数据库的列表中,所述列表包括可用区信息与对应的所述Agent组件的网络地址。通过所述Agent组件的网络地址可以确定与之对应的可用区信息。
S26、获取对应所述目标可用区信息的所述Agent组件的最新网络地址。
在本发明的至少一实施例中,通过所述API组件获取对应所述目标可用区信息的所述Agent组件的最新网络地址。通过所述可用区信息可以确定与之对应的所述Agent组件的最新网络地址。
S27、将所述Agent组件对应的最新网络地址作为所述心跳包携带的响应数据并将所述响应数据返回至所述Agent组件。
在本发明的至少一实施例中,当所述API组件对应的服务器端的上报网络地址(也即所述Agent组件对应的网络地址)需要发生迁移或扩展时,所述API组件对应的服务器端的网络地址会进行变更。将所述API组件对应服务器端的最新网络地址作为所述心跳包携带的响应数据并将所述响应数据返回至所述Agent组件。
本发明实施例提供一种网络地址处理方法,应用于API组件中,将Agent组件与所述API组件建立动态周期的心跳连接;接收所述Agent组件发送的心跳包;检测所述心跳包中是否存在请求参数;当检测结果为所述心跳包中存在请求参数时,获取所述心跳包中携带的所述Agent组件的网络地址;根据所述Agent组件的网络地址与可用区的映射关系,从指定数据库中获取对应所述Agent组件的网络地址的目标可用区信息;获取对应所述目标可用区信息的所述Agent组件的最新网络地址;将所述Agent组件对应的最新网络地址作为所述心跳包携带的响应数据并将所述响应数据返回至所述Agent组件。通过本发明实施例,可以动态更新网络地址,且无需每次在网络地址有变动或扩展时,重新修改Agent组件中的参数配置,提升监控服务效率。
以上是对本发明实施例所提供的方法进行的详细描述。根据不同的需求,所示流程图中方块的执行顺序可以改变,某些方块可以省略。下面对本发明实施例所提供的计算机设备1进行描述。
图3是本发明一实施方式的计算机设备的结构示意图,如图3所示,计算机设备1包括存储器10,存储器10中存储有网络地址处理装置100。所述的计算机设备1可以是计算机、平板电脑、个人数字助理等具有数据处理、分析、程序执行及显示等功能的电子设备。当所述网络地址处理装置100应用于Agent组件时,所述网络地址处理装置100可以将所述Agent组件与API组件建立动态周期的心跳连接;发送心跳包至所述API组件,其中,所述心跳包中携带有所述Agent组件对应的网络地址与请求参数;接收所述API组件返回的心跳包并获取所述心跳包中的最新网络地址;根据所述最新网络地址判断所述Agent组件对应的网络地址是否发生更新;当判断结果为所述Agent组件对应的网络地址发生更新时,将所述Agent组件对应的网络地址更新为所述最新网络地址。
当所述网络地址处理装置100应用于API组件时,所述网络地址处理装置100可以将Agent组件与所述API组件建立动态周期的心跳连接;接收所述Agent组件发送的心跳包;检测所述心跳包中是否存在请求参数;当检测结果为所述心跳包中存在请求参数时,获取所述心跳包中携带的所述Agent组件的网络地址;根据所述Agent组件的网络地址与可用区的映射关系,从指定数据库中获取对应所述Agent组件的网络地址的目标可用区信息;获取对应所述目标可用区信息的所述Agent组件的最新网络地址;将所述Agent组件对应的最新网络地址作为所述心跳包携带的响应数据并将所述响应数据返回至所述Agent组件。通过本发明实施例,可以动态更新网络地址,且无需每次在网络地址有变动或扩展时,重新修改Agent组件中的参数配置,提升监控服务效率。
本实施方式中,计算机设备1还可以包括显示屏20及处理器30。存储器10、显示屏20可以分别与处理器30电连接。
所述的存储器10可以是不同类型存储设备,用于存储各类数据。例如,可以是计算机设备1的存储器、内存,还可以是可外接于该计算机设备1的存储卡,如闪存、SM卡(SmartMedia Card,智能媒体卡)、SD卡(Secure Digital Card,安全数字卡)等。此外,存储器10可以包括非易失性存储器,例如硬盘、内存、插接式硬盘,智能存储卡(Smart Media Card,SMC),安全数字(Secure Digital,SD)卡,闪存卡(Flash Card)、至少一个磁盘存储器件、闪存器件、或其他非易失性固态存储器件。存储器10用于存储各类数据,例如,所述计算机设备1中安装的各类应用程序(Applications)、应用上述网络地址处理方法而设置、获取的数据等信息。
显示屏20安装于计算机设备1,用于显示信息。
处理器30用于执行所述网络地址处理方法以及所述计算机设备1内安装的各类软件,例如操作系统及应用显示软件等。处理器30包含但不限于处理器(Central ProcessingUnit,CPU)、微控制单元(Micro Controller Unit,MCU)等用于解释计算机指令以及处理计算机软件中的数据的装置。
所述的网络地址处理装置100可以包括一个或多个的模块,所述一个或多个模块被存储在计算机设备1的存储器10中并被配置成由一个或多个处理器(本实施方式为一个处理器30)执行,以完成本发明实施例。例如,参阅图4所示,所述网络地址处理装置100可以包括心跳连接模块101、心跳包发送模块102、数据获取模块103、更新判断模块104、地址更新模块105、心跳包接收模块106以及信息获取模块107。本发明实施例所称的模块可以是完成一特定功能的程序段,比程序更适合于描述软件在处理器30中的执行过程。
可以理解的是,对应上述网络地址处理方法中的各实施方式,所述网络地址处理装置100可以包括图4中所示的各功能模块中的一部分或全部,各模块的功能将在以下具体介绍。需要说明的是,以上网络地址处理方法的各实施方式中相同的名词相关名词及其具体的解释说明也可以适用于以下对各模块的功能介绍。为节省篇幅及避免重复起见,在此就不再赘述。
当所述网络地址处理装置100应用于Agent组件时,所述心跳连接模块101可以用于将所述Agent组件与API组件建立动态周期的心跳连接。
心跳包发送模块102可以用于发送心跳包至所述API组件,其中,所述心跳包中携带有所述Agent组件对应的网络地址与请求参数,所述网络地址对应所述Agent组件监控数据的上报地址。
地址获取模块103可以用于接收所述API组件返回的心跳包并获取所述心跳包中的最新网络地址。
更新判断模块104可以用于根据所述最新网络地址判断所述Agent组件对应的网络地址是否发生更新。
地址更新模块105可以用于当判断结果为所述Agent组件对应的所述网络地址发生更新时,将所述Agent组件对应的网络地址更新为所述最新网络地址。
当所述网络地址处理装置100应用于API组件时,所述心跳连接模块101可以用于将Agent组件与所述API组件建立动态周期的心跳连接。
所述心跳包接收模块106可以用于接收所述Agent组件发送的心跳包。
所述数据获取模块103还可以用于检测所述心跳包中是否存在请求参数。
所述信息获取模块107可以用于当检测结果为所述心跳包中存在请求参数时,获取所述心跳包中携带的所述Agent组件的网络地址。
所述信息获取模块107还可以用于根据所述Agent组件的网络地址与可用区的映射关系,从指定数据库中获取对应所述Agent组件的网络地址的目标可用区信息。
所述信息获取模块107还可以用于获取对应所述目标可用区信息的所述Agent组件的最新网络地址。
所述心跳包发送模块102还可以用于将所述Agent组件对应的最新网络地址作为所述心跳包携带的响应数据并将所述响应数据返回至所述Agent组件。
本发明实施例还提供一种计算机可读存储介质,其上存储有计算机程序,所述计算机程序被处理器30执行时实现上述任一实施方式中的网络地址处理方法的步骤。
所述网络地址处理装置100/计算机设备1/计算机设备集成的模块/单元如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本发明实现上述实施方式方法中的全部或部分流程,也可以通过计算机程序来指令相关的硬件来完成,所述的计算机程序可存储于一计算机可读存储介质中,该计算机程序在被处理器30执行时,可实现上述各个方法实施例的步骤。其中,所述计算机程序包括计算机程序代码,所述计算机程序代码可以为源代码形式、对象代码形式、可执行文件或某些中间形式等。所述计算机可读存储介质可以包括:能够携带所述计算机程序代码的任何实体或装置、记录介质、U盘、移动硬盘、磁碟、光盘、计算机存储器、只读存储器(ROM,Read-Only Memory)等。
所称处理器30可以是中央处理单元(Central Processing Unit,CPU),还可以是其他通用处理器、数字信号处理器(Digital Signal Processor,DSP)、专用集成电路(Application Specific Integrated Circuit,ASIC)、现场可编程门阵列(Field-Programmable Gate Array,FPGA)或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件等。通用处理器可以是微处理器或者该处理器也可以是任何常规的处理器等,所述处理器30是所述网络地址处理装置100/计算机设备1的控制中心,利用各种接口和线路连接整个网络地址处理装置100/计算机设备1的各个部分。
所述存储器10用于存储所述计算机程序和/或模块,所述处理器30通过运行或执行存储在所述存储器10内的计算机程序和/或模块,以及调用存储在存储器10内的数据,实现所述网络地址处理装置100/计算机设备1的各种功能。所述存储器10可主要包括存储程序区和存储数据区,其中,存储程序区可存储操作系统、至少一个功能所需的应用程序(比如声音播放功能、图像播放功能等)等;存储数据区可存储根据计算机设备1的使用所创建的数据(比如音频数据等)等。
在本发明所提供的几个具体实施方式中,应该理解到,所揭露的计算机设备和方法,可以通过其它的方式实现。例如,以上所描述的系统实施方式仅仅是示意性的,例如,所述模块的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式。
对于本领域技术人员而言,显然本发明实施例不限于上述示范性实施例的细节,而且在不背离本发明实施例的精神或基本特征的情况下,能够以其他的具体形式实现本发明实施例。因此,无论从哪一点来看,均应将实施例看作是示范性的,而且是非限制性的,本发明实施例的范围由所附权利要求而不是上述说明限定,因此旨在将落在权利要求的等同要件的含义和范围内的所有变化涵括在本发明实施例内。不应将权利要求中的任何附图标记视为限制所涉及的权利要求。系统、装置或计算机设备权利要求中陈述的多个单元、模块或装置也可以由同一个单元、模块或装置通过软件或者硬件来实现。
以上实施方式仅用以说明本发明实施例的技术方案而非限制,尽管参照以上较佳实施方式对本发明实施例进行了详细说明,本领域的普通技术人员应当理解,可以对本发明实施例的技术方案进行修改或等同替换都不应脱离本发明实施例的技术方案的精神和范围。
Claims (9)
1.一种网络地址处理方法,应用于Agent组件中,其特征在于,所述网络地址处理方法包括:
将所述Agent组件与API组件建立动态周期的心跳连接;
获取可用区对应的监控进程,并确定所述监控进程的当前负载数据;
检测所述当前负载数据是否超出预设负载阈值;
当检测结果为所述当前负载数据超出预设负载阈值时,确定所述可用区对应的网络地址满足更新条件,并输出所述可用区对应的网络地址满足更新条件的通知至对应的Agent组件;
根据所述通知在心跳包中携带请求参数,并将所述心跳包发送至所述API组件,其中,所述心跳包中携带有所述Agent组件对应的网络地址与请求参数,所述网络地址对应所述Agent组件监控数据的上报地址;
接收所述API组件返回的心跳包并获取所述心跳包中的最新网络地址;
根据所述最新网络地址判断所述Agent组件对应的网络地址是否发生更新;
当判断结果为所述Agent组件对应的网络地址发生更新时,将所述Agent组件对应的网络地址更新为所述最新网络地址。
2.根据权利要求1所述的网络地址处理方法,其特征在于,所述将所述Agent组件与API组件建立动态周期的心跳连接的步骤包括:
获取最近的一个检测周期内所述Agent组件发出所述心跳包的发出数据;
获取在所述最近的一个检测周期内所述API组件接收到的所述心跳包的接收数据;
根据所述发出数据与所述接收数据统计所述最近的一个检测周期内所述心跳包的丢失次数;
根据所述丢失次数与所述心跳包的发送时间间隔呈负相关的规则调整所述心跳包的下一次发送时间间隔。
3.根据权利要求2所述的网络地址处理方法,其特征在于,所述根据所述丢失次数与所述心跳包的发送时间间隔呈负相关的规则调整所述心跳包的下一次发送时间间隔的步骤包括:
确定所述丢失次数对应的丢失级别;
根据所述丢失级别得到所述心跳包发送时间间隔的比例系数;
根据所述比例系数调整所述心跳包的下一个发送时间间隔。
4.根据权利要求1所述的网络地址处理方法,其特征在于,所述根据所述最新网络地址判断所述Agent组件对应的网络地址是否发生更新的步骤包括:
判断所述Agent组件对应的网络地址与所述API组件返回的心跳包中携带的所述最新网络地址是否一致;
当判断结果为不一致时,确定所述Agent组件对应的网络地址已发生更新;
当判断结果为一致时,确定所述Agent组件对应的网络地址未发生更新。
5.一种网络地址处理方法,应用于API组件中,其特征在于,所述网络地址处理方法包括:
将Agent组件与所述API组件建立动态周期的心跳连接;
接收所述Agent组件发送的心跳包,所述Agent组件用于在当前负载数据超出预设负载阈值时,确定可用区对应的网络地址满足更新条件,并输出所述可用区对应的网络地址满足更新条件的通知至对应的Agent组件,根据所述通知在心跳包中携带请求参数;
检测所述心跳包中是否存在请求参数;
当检测结果为所述心跳包中存在请求参数时,获取所述心跳包中携带的所述Agent组件的网络地址;
根据所述Agent组件的网络地址与可用区的映射关系,从指定数据库中获取对应所述Agent组件的网络地址的目标可用区信息;
获取对应所述目标可用区信息的所述Agent组件的最新网络地址;
将所述Agent组件对应的最新网络地址作为所述心跳包携带的响应数据并将所述响应数据返回至所述Agent组件。
6.根据权利要求5所述的网络地址处理方法,其特征在于,所述方法还包括:
解析出所述心跳包中的所述Agent组件的身份信息;
根据所述Agent组件的身份信息将所述心跳包存储至时间队列中;
开启预设个数的线程并行轮询所述时间队列,并按照时间优先级顺序检测所述心跳包中是否存在请求参数。
7.根据权利要求5所述的网络地址处理方法,其特征在于,所述检测所述心跳包中是否存在请求参数的步骤包括:
检测所述心跳包中是否存在预设格式的数据,当检测结果为所述心跳包中存在预设格式的数据时,确定所述心跳包中存在请求参数;或者
检测所述心跳包中是否存在预设标签,当检测结果为所述心跳包中存在预设标签时,确定所述心跳包中存在请求参数。
8.一种计算机设备,其特征在于,所述计算机设备包括处理器,所述处理器用于执行存储器中存储的计算机程序时实现如权利要求1至4中任意一项所述网络地址处理方法,或实现如权利要求5-7中任意一项所述网络地址处理方法。
9.一种计算机可读存储介质,所述计算机可读存储介质上存储有计算机程序,其特征在于,所述计算机程序被处理器执行时实现如权利要求1至4中任意一项所述网络地址处理方法,或实现如权利要求5-7中任意一项所述网络地址处理方法。
Priority Applications (2)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| CN202010137266.6A CN111432042B (zh) | 2020-03-02 | 2020-03-02 | 网络地址处理方法、计算机设备及存储介质 |
| PCT/CN2020/099298 WO2021174730A1 (zh) | 2020-03-02 | 2020-06-30 | 网络地址处理方法、计算机设备及存储介质 |
Applications Claiming Priority (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| CN202010137266.6A CN111432042B (zh) | 2020-03-02 | 2020-03-02 | 网络地址处理方法、计算机设备及存储介质 |
Publications (2)
| Publication Number | Publication Date |
|---|---|
| CN111432042A CN111432042A (zh) | 2020-07-17 |
| CN111432042B true CN111432042B (zh) | 2022-09-16 |
Family
ID=71548044
Family Applications (1)
| Application Number | Title | Priority Date | Filing Date |
|---|---|---|---|
| CN202010137266.6A Active CN111432042B (zh) | 2020-03-02 | 2020-03-02 | 网络地址处理方法、计算机设备及存储介质 |
Country Status (2)
| Country | Link |
|---|---|
| CN (1) | CN111432042B (zh) |
| WO (1) | WO2021174730A1 (zh) |
Families Citing this family (1)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| CN114143372B (zh) * | 2021-12-06 | 2023-07-25 | 重庆邮电大学 | 一种基于融合网络分流器的端网络控制方法及系统 |
Family Cites Families (14)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| CN101453494A (zh) * | 2008-12-24 | 2009-06-10 | 深圳市同洲电子股份有限公司 | 一种服务器地址的获取方法、服务器以及数字电视接收终端 |
| CN102891873B (zh) * | 2011-07-21 | 2017-02-15 | 腾讯科技(深圳)有限公司 | 一种存储日志数据的方法及日志数据存储系统 |
| CN103338440B (zh) * | 2013-07-09 | 2016-03-02 | 杭州华三通信技术有限公司 | 认证系统中的认证方法及设备端 |
| CN104301240B (zh) * | 2013-07-19 | 2019-02-22 | 腾讯科技(深圳)有限公司 | 数据传输方法及系统 |
| EP3041199B1 (de) * | 2014-12-30 | 2019-07-24 | Siemens Aktiengesellschaft | Verfahren zur ermittlung von kommunikationsgeräteadressen innerhalb eines kommunikationsnetzes eines industriellen automatisierungssystems und kommunikationsgerät |
| CN106406925A (zh) * | 2015-08-03 | 2017-02-15 | 阿里巴巴集团控股有限公司 | 用于支持在线升级的设备和方法 |
| CN106937277B (zh) * | 2015-12-30 | 2020-11-17 | 创新先进技术有限公司 | 地址更新方法和装置 |
| CN107577516B (zh) * | 2017-07-28 | 2020-08-14 | 华为技术有限公司 | 虚拟机密码重置方法、装置和系统 |
| CN107948249B (zh) * | 2017-11-02 | 2019-12-10 | 华南理工大学 | 基于服务发现和容器技术的大数据平台弹性伸缩方法 |
| US10896160B2 (en) * | 2018-03-19 | 2021-01-19 | Secure-24, Llc | Discovery and migration planning techniques optimized by environmental analysis and criticality |
| CN108834179B (zh) * | 2018-05-31 | 2021-07-09 | 深圳市酷达通讯有限公司 | 调整心跳周期的方法、服务器和客户端 |
| CN110730196B (zh) * | 2018-07-16 | 2022-05-27 | 阿里巴巴集团控股有限公司 | 一种网络资源访问方法、计算机设备、存储介质 |
| CN109995641B (zh) * | 2019-03-21 | 2021-05-28 | 新华三技术有限公司 | 一种信息处理方法、计算节点和存储介质 |
| CN110768862B (zh) * | 2019-09-23 | 2021-03-09 | 烽火通信科技股份有限公司 | 一种云平台物理链路连通性检测装置、方法及系统 |
-
2020
- 2020-03-02 CN CN202010137266.6A patent/CN111432042B/zh active Active
- 2020-06-30 WO PCT/CN2020/099298 patent/WO2021174730A1/zh not_active Ceased
Also Published As
| Publication number | Publication date |
|---|---|
| CN111432042A (zh) | 2020-07-17 |
| WO2021174730A1 (zh) | 2021-09-10 |
Similar Documents
| Publication | Publication Date | Title |
|---|---|---|
| US10348809B2 (en) | Naming of distributed business transactions | |
| CN103117879B (zh) | 一种计算机硬件运行参数网络监测系统 | |
| CN110471749B (zh) | 任务处理方法、装置、计算机可读存储介质和计算机设备 | |
| US20150067146A1 (en) | Custom correlation of a distributed business transaction | |
| US9658917B2 (en) | Server performance correction using remote server actions | |
| CN106030456A (zh) | 自动异步切换标识 | |
| CN112039723A (zh) | 微服务网络状态检测方法、装置及电子设备 | |
| CN106911519B (zh) | 一种数据采集监控方法及装置 | |
| CN111464589A (zh) | 智能合约处理方法、计算机设备及存储介质 | |
| CN111432042B (zh) | 网络地址处理方法、计算机设备及存储介质 | |
| CN111930542B (zh) | 数据采集方法、装置、电子设备及计算机可读存储介质 | |
| CN113535344A (zh) | 网络数据处理方法和装置、服务器及存储介质 | |
| CN118972245B (zh) | 一种动态自适应的应用审计日志采集传输方法和装置 | |
| CN107483280B (zh) | 用于服务节点设备监控的方法及设备 | |
| CN108829563B (zh) | 一种告警方法和告警装置 | |
| CN109298974B (zh) | 系统控制方法、装置、计算机及计算机可读存储介质 | |
| CN113079152A (zh) | 一种数据传输方法、装置及介质 | |
| CN114817134B (zh) | 一种快照任务监控方法、装置、设备及介质 | |
| CN112463514A (zh) | 分布式缓存集群的监测方法和装置 | |
| CN116962399A (zh) | 一种算力节点的管理方法、装置及电子设备 | |
| CN116166711A (zh) | 一种设备活跃度的统计方法、装置、电子设备和存储介质 | |
| US9935856B2 (en) | System and method for determining end user timing | |
| CN118827481B (zh) | 一种设备在线状态计算方法、设备及存储介质 | |
| CN110474807A (zh) | 一种日志处理方法及装置 | |
| CN115277834B (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 |