CN106330556A - 一种用于生成服务模块调用关联信息的方法与装置 - Google Patents
一种用于生成服务模块调用关联信息的方法与装置 Download PDFInfo
- Publication number
- CN106330556A CN106330556A CN201610772870.XA CN201610772870A CN106330556A CN 106330556 A CN106330556 A CN 106330556A CN 201610772870 A CN201610772870 A CN 201610772870A CN 106330556 A CN106330556 A CN 106330556A
- Authority
- CN
- China
- Prior art keywords
- service
- data
- application
- call
- service module
- 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.)
- Granted
Links
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
- 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
- H04L41/0813—Configuration setting characterised by the conditions triggering a change of settings
-
- 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/2866—Architectures; Arrangements
- H04L67/30—Profiles
-
- 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/60—Scheduling or organising the servicing of application requests, e.g. requests for application data transmissions using the analysis and optimisation of the required network resources
Abstract
本发明的目的是提供一种用于生成服务模块调用关联信息的方法与装置。处理设备根据服务配置变更消息,获取与所述服务配置变更消息相对应的应用配置变更数据,最后从所述应用配置变更数据中提取与调用服务配置数据,以生成或更新服务模块调用关联信息。与现有技术相比,本发明能够获取静态服务模块调用关联信息,以反映模块间的调用关系,进而确定一个模块可能被哪些模块影响,以用于评估决策,使得所获取的数据更加完整可靠,解决了决策预案执行、在没有服务调用状态信息前缺少模块关联关系的问题。因此,本发明能够以较少的资源占用来分析全量日志,能够从整体上掌握各个模块间的关联关系,提高了多应用服务模块间的调用处理效率与处理效果。
Description
技术领域
本发明涉及互联网技术领域,尤其涉及一种用于生成服务模块调用关联信息的技术。
背景技术
大型互联网企业内部,具有较多较杂的运维实体管理平台,例如:多个Naming服务(命名服务)、多个PaaS平台(Platform-as-a-Service,平台及服务)、异构的路由服务等;此外,服务之间通信使用多种协议,包括Thrift、RAL、HTTP访问等。而对于各个运维实体管理平台并没有统一有效的管理,因此当不同应用内的模块进行相互调用时,无法直接获取准确有效的服务模块调用关联信息。因此,这就导致了以下问题:
1.缺少结构化的关联关系数据,各个服务模块调用关联信息的学习成本过高,用户难以掌握完整的关联关系数据。
2.缺少全局视图,服务问题追查成本高。当服务出现问题,需要根据日志结合配置中的关联定义去追查上下游的服务问题,梳理关联关系的过程耗时,故障的定位效率和准确性都比较低,不利于服务的快速止损。
3.没有全局和微观的服务视图,运维决策的效率和效果都打折扣。做预案执行前需要先清楚服务的调用关系,决策预案的执行策略,否则会引入新的故障,进行服务恢复的过程中不能确定先后顺序和路由关系。
在现有技术中主要利用基于调用链分析的trace系统。而实际应用场景为:需要完整的服务模块调用关联信息,同时调用框架不统一、无traceid、日志规范不统一、缺少当前应用或目标应用等关键信息。因此,trace系统对于上述场景而言具有三种局限性:
场景局限性:普通的trace系统需要基于统一的调用框架、统一的应用定义等。而多数场景下并不存在上述统一配置,从而导致普通的trace系统并不适合推广。
设计局限性:trace系统获取了一个访问在各个模块中的时间顺序和上下游关系,由于数据量较大,一般采取抽样的方式,这种抽样导致关联数据并不完整,在流量少却重要的访问(如金融类)场景中并不适用,尤其是一些异常处理逻辑。
业务局限性:trace系统的记录中包含了服务状态数据,但是没有服务静态的路由数据,对于决策预案执行、从零恢复、服务路由表切换等场景并不适用。
有鉴于此,如何获取服务模块调用关联信息以用于决策预案执行、辅助故障定位等,则成为了本领域技术人员亟待解决的问题。
发明内容
本发明的目的是提供一种用于生成服务模块调用关联信息的方法与装置。
根据本发明的一个方面,提供了一种用于生成服务模块调用关联信息的方法,其中,该方法包括以下步骤:
a获取一条或多条服务配置变更消息,其中,所述服务配置变更消息对应于上线事件和/或路由表变更事件;
b根据所述服务配置变更消息,获取与所述服务配置变更消息相对应的应用配置变更数据;
c从所述应用配置变更数据中提取调用服务配置数据,以生成或更新服务模块调用关联信息。
可选地,所述步骤b包括:
-根据所述服务配置变更消息,确定与所述服务配置变更消息相对应的更新范围,其中,所述更新范围包括发生变更的服务器以及所述服务器中所变更的应用配置文件;
-根据所述更新范围,获取与所述服务配置变更消息相对应的应用配置变更数据。
可选地,该方法还包括:
x对所述应用配置变更数据进行校验;
其中,所述步骤c包括:
-从所述校验后的应用配置变更数据中提取调用服务配置数据,以生成或更新服务模块调用关联信息。
可选地,所述步骤x包括:
-若所述应用配置变更数据无法对应于现有应用配置中,则对所述应用配置变更数据进行命名校验。
可选地,该方法还包括:
-根据所述服务模块调用关联信息,提取与所述服务模块调用关联信息相对应的一个或多个调用实例,其中,所述调用实例中包括服务模块、所述服务模块的所属应用及其服务器、所述服务模块的调用应用及其服务器之间的对应调用关系;
t对所述调用实例进行聚合,以生成一个或多个映射数据。
可选地,所述步骤t包括:
-根据所述调用实例中的至少任一个维度,对所述调用实例进行聚合,以生成一个或多个映射数据,其中,所述维度包括所述服务模块、所述服务模块的所属应用及其服务器、所述服务模块的调用应用及其服务器之中的至少任一项。
可选地,该方法还包括:
-获取一条或多条服务调用状态信息;
-从所述服务调用状态信息中,提取一种或多种服务标识数据,其中,所述服务标识数据包括服务名称类、接口类、名字服务类中的至少任一项;
-根据所述映射数据,对所述服务调用状态信息进行匹配;
s根据匹配后的所述服务调用状态信息,更新所述服务模块调用关联信息。
可选地,该方法还包括:
-对匹配后的所述服务调用状态信息进行聚合;
所述步骤s包括:
-根据所述聚合后的所述服务调用状态信息,更新所述服务模块调用关联信息。
根据本发明的另一方面,还提供了一种用于生成服务模块调用关联信息的处理设备,其中,该设备包括:
第一装置,用于获取一条或多条服务配置变更消息,其中,所述服务配置变更消息对应于上线事件和/或路由表变更事件;
第二装置,用于根据所述服务配置变更消息,获取与所述服务配置变更消息相对应的应用配置变更数据;
第三装置,用于从所述应用配置变更数据中提取调用服务配置数据,以生成或更新服务模块调用关联信息。
可选地,所述第二装置用于:
-根据所述服务配置变更消息,确定与所述服务配置变更消息相对应的更新范围,其中,所述更新范围包括发生变更的服务器以及所述服务器中所变更的应用配置文件;
-根据所述更新范围,获取与所述服务配置变更消息相对应的应用配置变更数据。
可选地,该设备还包括:
第四装置,用于对所述应用配置变更数据进行校验;
其中,所述第三装置用于:
-从所述校验后的应用配置变更数据中提取调用服务配置数据,以生成或更新服务模块调用关联信息。
可选地,所述第四装置用于:
-若所述应用配置变更数据无法对应于现有应用配置中,则对所述应用配置变更数据进行命名校验。
可选地,该设备还包括:
第五装置,用于根据所述服务模块调用关联信息,提取与所述服务模块调用关联信息相对应的一个或多个调用实例,其中,所述调用实例中包括服务模块、所述服务模块的所属应用及其服务器、所述服务模块的调用应用及其服务器之间的对应调用关系;
第六装置,用于对所述调用实例进行聚合,以生成一个或多个映射数据。
可选地,所述第六装置用于:
-根据所述调用实例中的至少任一个维度,对所述调用实例进行聚合,以生成一个或多个映射数据,其中,所述维度包括所述服务模块、所述服务模块的所属应用及其服务器、所述服务模块的调用应用及其服务器之中的至少任一项。
可选地,该设备还包括:
第七装置,用于获取一条或多条服务调用状态信息;
第八装置,用于从所述服务调用状态信息中,提取一种或多种服务标识数据,其中,所述服务标识数据包括服务名称类、接口类、名字服务类中的至少任一项;
第九装置,用于根据所述映射数据,对所述服务调用状态信息进行匹配;
第十装置,用于根据匹配后的所述服务调用状态信息,更新所述服务模块调用关联信息。
可选地,该设备还包括:
第十一装置,用于对匹配后的所述服务调用状态信息进行聚合;
所述第十装置,用于:
-根据所述聚合后的所述服务调用状态信息,更新所述服务模块调用关联信息。
与现有技术相比,本发明根据服务配置变更消息,获取与所述服务配置变更消息相对应的应用配置变更数据,最后从所述应用配置变更数据中提取与调用服务配置数据,以生成或更新服务模块调用关联信息。从而,本发明能够获取静态服务模块调用关联信息,以反映模块间的调用关系,进而确定一个模块可能被哪些模块影响,以用于评估决策,使得所获取的数据更加完整可靠,解决了决策预案执行、在没有服务调用状态信息前缺少模块关联关系的问题。因此,本发明能够以较少的资源占用来分析全量日志,能够从整体上掌握各个模块间的关联关系,提高了多应用服务模块间的调用处理效率与处理效果。
而且,本发明还可以根据所述服务配置变更消息,确定与所述服务配置变更消息相对应的更新范围,然后根据所述更新范围,获取与所述服务配置变更消息相对应的应用配置变更数据;从而仅获取更新范围内所对应的应用配置变更数据,减少了无用数据的获取,提高了系统处理效率。
而且,本发明还可以对所述应用配置变更数据进行校验,并从所述校验后的应用配置变更数据中提取调用服务配置数据,以生成或更新服务模块调用关联信息;进一步地,若所述应用配置变更数据无法对应于现有应用配置中,则对所述应用配置变更数据进行命名校验。从而,本发明能够解决配置分析的问题,进一步提升服务模块调用关联关系的准确性。
而且,本发明还可以根据所述服务模块调用关联信息,提取与所述服务模块调用关联信息相对应的一个或多个调用实例,然后对所述调用实例进行聚合,以生成一个或多个映射数据;进一步地,所述聚合步骤还包括根据所述调用实例中的至少任一个维度,对所述调用实例进行聚合,以生成一个或多个映射数据。从而本发明通过聚合步骤,提高了后续查询的效率。
而且,本发明还可以根据服务调用状态信息来更新所述服务模块调用关联信息,从而根据动态的模块间的关联关系,确定一个模块正在被哪些模块影响、交互的状态如何,以用于评估决策。
附图说明
通过阅读参照以下附图所作的对非限制性实施例所作的详细描述,本发明的其它特征、目的和优点将会变得更明显:
图1示出根据本发明一个方面的一种用于生成服务模块调用关联信息的处理设备示意图;
图2示出根据本发明的一个优选实施例的一种用于生成服务模块调用关联信息的处理设备示意图;
图3示出根据本发明另一个方面的一种用于生成服务模块调用关联信息的方法流程图;
图4示出根据本发明的一个优选实施例的一种用于生成服务模块调用关联信息的方法流程图。
附图中相同或相似的附图标记代表相同或相似的部件。
具体实施方式
在更加详细地讨论示例性实施例之前应当提到的是,一些示例性实施例被描述成作为流程图描绘的处理或方法。虽然流程图将各项操作描述成顺序的处理,但是其中的许多操作可以被并行地、并发地或者同时实施。此外,各项操作的顺序可以被重新安排。当其操作完成时所述处理可以被终止,但是还可以具有未包括在附图中的附加步骤。所述处理可以对应于方法、函数、规程、子例程、子程序等等。
在上下文中所称“处理设备”,即为“计算机设备”,也称为“电脑”,是指可以通过运行预定程序或指令来执行数值计算和/或逻辑计算等预定处理过程的智能电子设备,其可以包括处理器与存储器,由处理器执行在存储器中预存的存续指令来执行预定处理过程,或是由ASIC、FPGA、DSP等硬件执行预定处理过程,或是由上述二者组合来实现。
所述计算机设备包括网络设备。其中,所述网络设备包括但不限于单个网络服务器、多个网络服务器组成的服务器组或基于云计算(Cloud Computing)的由大量计算机或网络服务器构成的云,其中,云计算是分布式计算的一种,由一群松散耦合的计算机集组成的一个超级虚拟计算机。其中,所述计算机设备可单独运行来实现本发明,也可接入网络并通过与网络中的其他计算机设备的交互操作来实现本发明。其中,所述计算机设备所处的网络包括但不限于互联网、广域网、城域网、局域网、VPN网络等。
需要说明的是,所述网络设备或网络等仅为举例,其他现有的或今后可能出现的计算机设备或网络如可适用于本发明,也应包含在本发明保护范围以内,并以引用方式包含于此。
这里所公开的具体结构和功能细节仅仅是代表性的,并且是用于描述本发明的示例性实施例的目的。但是本发明可以通过许多替换形式来具体实现,并且不应当被解释成仅仅受限于这里所阐述的实施例。
应当理解的是,虽然在这里可能使用了术语“第一”、“第二”等等来描述各个单元,但是这些单元不应当受这些术语限制。使用这些术语仅仅是为了将一个单元与另一个单元进行区分。举例来说,在不背离示例性实施例的范围的情况下,第一单元可以被称为第二单元,并且类似地第二单元可以被称为第一单元。这里所使用的术语“和/或”包括其中一个或更多所列出的相关联项目的任意和所有组合。
这里所使用的术语仅仅是为了描述具体实施例而不意图限制示例性实施例。除非上下文明确地另有所指,否则这里所使用的单数形式“一个”、“一项”还意图包括复数。还应当理解的是,这里所使用的术语“包括”和/或“包含”规定所陈述的特征、整数、步骤、操作、单元和/或组件的存在,而不排除存在或添加一个或更多其他特征、整数、步骤、操作、单元、组件和/或其组合。
还应当提到的是,在一些替换实现方式中,所提到的功能/动作可以按照不同于附图中标示的顺序发生。举例来说,取决于所涉及的功能/动作,相继示出的两幅图实际上可以基本上同时执行或者有时可以按照相反的顺序来执行。
下面结合附图对本发明作进一步详细描述。
图1示出根据本发明一个方面的一种用于生成服务模块调用关联信息的处理设备示意图。
其中,所述处理设备包括第一装置1、第二装置2、第三装置3。具体地,所述第一装置1获取一条或多条服务配置变更消息,其中,所述服务配置变更消息对应于上线事件和/或路由表变更事件;所述第二装置2根据所述服务配置变更消息,获取与所述服务配置变更消息相对应的应用配置变更数据;所述第三装置3从所述应用配置变更数据中提取调用服务配置数据,以生成或更新服务模块调用关联信息。
所述第一装置1获取一条或多条服务配置变更消息,其中,所述服务配置变更消息对应于上线事件和/或路由表变更事件。
具体地,所述第一装置1基于各类通信协议,通过预先设定的传输接口,从预先设置的管理平台中获取一条或多条服务配置变更消息,其中,所述服务配置变更消息对应于上线事件和/或路由表变更事件。
例如,当所述管理平台所管理的路由表发生变更时,将相应数据推送到知识库中,则上限等变更时间所对应的所述服务配置变更消息可以从所述知识库中进行获取等。
其中,所述服务即为各类应用中所对应的一个或多个可提供的服务或服务模块等,如百度中国区所有服务/百度糯米所有服务或某特定服务等。
其中,所述上线事件即为启用某个服务,其所对应的全部服务配置均为新增配置;所述路由表变更事件即为原有或新增添的某个服务所对应的路由表发生了改变。
其中,所述服务配置变更消息可以对应于原有已存在的服务配置的变更,也可以对应于未存在的服务配置的添加等,如百度中国区所有服务/百度糯米所有服务/某特定服务,初始状态为空,那么在这个初始状态上的第一个事件是作用域内的所有配置信息的变更。
所述第二装置2根据所述服务配置变更消息,获取与所述服务配置变更消息相对应的应用配置变更数据。
具体地,所述第二装置2根据所述服务配置变更消息,基于各类通信协议,通过预先设定的传输接口,从对应的配置中心处获取与所述服务配置变更消息相对应的应用配置变更数据。其中,所述配置中心存储有所有服务的配置数据,而所述第二装置2根据所述服务配置变更消息,首先确定该服务配置变更消息所对应的变更的服务以及所变更服务所对应的服务器等信息,然后,根据上述信息,从所述配置中心处获取所述应用配置变更数据。
优选地,所述第二装置2用于根据所述服务配置变更消息,确定与所述服务配置变更消息相对应的更新范围,其中,所述更新范围包括发生变更的服务器以及所述服务器中所变更的应用配置文件;根据所述更新范围,获取与所述服务配置变更消息相对应的应用配置变更数据。
具体地,所述第二装置2根据所述服务配置变更消息,根据所述服务配置变更消息的具体内容、来源等信息,确定与所述服务配置变更消息所对应的更新范围;其中,所述更新范围包括发生变更的服务器以及所述服务器中所变更的应用配置文件。
在此,本领域技术人员应能理解,当某服务发生变更时,所述变更的服务器包括实体服务器或虚拟服务器,所述应用配置文件可以是该服务在该服务器中所对应的全部应用配置文件,优选地,还可以是该应用配置文件中仅发生变更的结构化数据。换言之,所述更新范围即为该服务所更新的配置内容。
然后,所述第二装置2根据所述更新范围,仅选取所述更新范围内所对应的应用配置变更数据以进行获取,从而避免获取未变更的配置数据,提高处理效率。
所述第三装置3从所述应用配置变更数据中提取调用服务配置数据,以生成或更新服务模块调用关联信息。
具体地,所述第三装置3根据预定的路径、预定的关键词等信息,从所述应用配置变更数据中,提取调用服务配置数据;其中,所述调用服务配置数据主要包括服务寻址配置数据,例如,所述服务寻址配置数据可以根据配置文件中的“应用配置->调用服务配置->服务寻址方式”路径进行获取,或者可根据配置文件中的关键词“Host”所对应的内容进行获取。以下示出了所述调用服务配置数据的一个示例,其中Host指名了索要调用的服务的寻址方式(无关配置已经删除):
[CamelConfig]
[.GalileoBase]
Host:
XX.XX.XXX.XX:XXXX,XX.XX.XXX.XX:XXXX,XX.XX.XXX.XX:X
XXX
ZooRetry:2
ZooInterval:100
然后,所述第三装置3根据所提取的调用服务配置数据,根据所述调用服务配置数据之间的调用关系,生成或更新服务模块调用关联信息。其中,所述服务模块调用关联信息中包含了同一应用和/或不同应用间各个模块的调用关系。
例如,应用“糯米”的首页渲染时获取商品列表的服务由模块A提供,A模块依赖商品列表查询的服务、促销信息查询的服务,这两个服务分别由模块B、C提供;则所述第三装置3根据所提取的调用服务配置数据,建立起应用“糯米”的模块A与模块B、C的服务模块调用关联信息;进一步地,所述服务模块调用关联信息中还可以包含模块A与模块B、C所对应的应用、服务器等各类相关信息
优选地,所述处理设备还包括第四装置(未示出),其中,所述第四装置对所述应用配置变更数据进行校验;所述第三装置3从所述校验后的应用配置变更数据中提取调用服务配置数据,以生成或更新服务模块调用关联信息。
具体地,所述第四装置基于预设的校验方法,如命名(Naming)校验(也称名字校验)等,对所述应用配置变更数据进行校验。其中,所述校验可包括对已知应用配置的校验以及未知应用配置的校验;例如,对于已知应用配置,可利用命名服务来校验所述已知的应用配置是否正确;对于未知应用配置,则可利用命名服务来校验所述未知的应用配置对应于何种应用配置,以解决配置分析的问题。
本领域技术人员应能理解,所述命名服务所对应的具体操作方式,故在此不再赘述,并以引用的方式包含于此。
然后,所述第三装置3根据校验后的应用配置变更数据,提取调用服务配置数据,以生成或更新服务模块调用关联信息。其中,所述提取方式与图1中所述第三装置3相同或相似,故在此不再赘述,,并以引用的方式包含于此。
更优选地,若所述应用配置变更数据无法对应于现有应用配置中,所述第四装置对所述应用配置变更数据进行命名校验。
具体地,对于所述校验服务,所述第四装置可以仅在所述应用配置变更数据无法对应于现有应用配置时执行,从而提高处理效率。
在此,以“命名服务”的校验为例,在校验时,将所述应用配置变更数据中的每个值(value)与命名服务中的现有应用配置的别名列表进行对比,基于所对应的现有配置,来验证待验证的应用配置变更数据是否存在对对应的现有应用配置;优选地,可以对上述值(value)的key集进行贝叶斯分类,基于分类后的值进行校验。从而,可将实际采集到的命名服务数据作为反馈输入到第四装置中,以进一步提升准确率。
图2示出根据本发明的一个优选实施例的一种用于生成服务模块调用关联信息的处理设备示意图。
其中,所述处理设备包括第一装置1’、第二装置2’、第三装置3’、第五装置5’、第六装置6’。具体地,所述第一装置1’获取一条或多条服务配置变更消息,其中,所述服务配置变更消息对应于上线事件和/或路由表变更事件;所述第二装置2’根据所述服务配置变更消息,获取与所述服务配置变更消息相对应的应用配置变更数据;所述第三装置3’从所述应用配置变更数据中提取调用服务配置数据,以生成或更新服务模块调用关联信息;所述第五装置5’根据所述服务模块调用关联信息,提取与所述服务模块调用关联信息相对应的一个或多个调用实例,其中,所述调用实例中包括服务模块、所述服务模块的所属应用及其服务器、所述服务模块的调用应用及其服务器之间的对应调用关系;所述第六装置6’对所述调用实例进行聚合,以生成一个或多个映射数据。
其中,所述处理设备的第一装置1’、第二装置2’、第三装置3’与图1所示对应装置相同或基本相同,故此处不再赘述,并通过引用的方式包含于此。
所述第五装置5’根据所述服务模块调用关联信息,提取与所述服务模块调用关联信息相对应的一个或多个调用实例,其中,所述调用实例中包括服务模块、所述服务模块的所属应用及其服务器、所述服务模块的调用应用及其服务器之间的对应调用关系。
具体地,所述第五装置5’根据所述服务模块调用关联信息,获取一个应用的配置中包含了哪些模块、以及这些模块所对应的寻址方式;然后根据所述服务模块调用关联信息所调用的服务模块、所述服务模块的所属应用以及所属应用所在的服务器、所述服务模块的调用应用以及所调用应用的所在服务器等信息,提取与所述服务模块调用关联信息相对应的一个或多个调用实例。
例如,所述服务模块为B,其是应用A的一个模块,则所述应用A为所述服务模块B的所属应用;所述应用A在服务器A1、A2、A3中,则所属应用所在的服务器即为服务器A1、A2、A3。所述服务模块B被应用C所提供,则所述服务模块B的调用应用为所述应用C;所述应用C由服务器C1、C2、C3提供,因此,所述调用应用所在的服务器为服务器C1、C2、C3。
所述第五装置5’根据上述调用关系,以所述服务模块B为中心,提取出与其相对应的调用关系,即在应用A(服务器A1、A2、A3)中命名为B的服务模块由应用C(服务器C1、C2、C3)所提供。
本领域技术人员应能理解,上述说明仅为示例,并非对本发明的限制。一个服务模块可以对应于多条调用实例,如所述服务模块B还可以存在于应用D(服务器D1)中,并被应用C(服务器C1、C2)与应用E(服务器E1)所提供等。
所述第六装置6’对所述调用实例进行聚合,以生成一个或多个映射数据。
具体地,所述第六装置6’对上述一条或多条调用实例进行聚合,根据其所对应的调用关系来生成一个或多个映射数据。所述映射数据可以以服务模块为中心,或是以其他相应的数据为中心等。
优选地,所述第六装置6’包括根据所述调用实例中的至少任一个维度,对所述调用实例进行聚合,以生成一个或多个映射数据,其中,所述维度包括所述服务模块、所述服务模块的所属应用及其服务器、所述服务模块的调用应用及其服务器之中的至少任一项。
具体地,所述第六装置6’在进行聚合的过程中,可以基于所述调用实例中的至少任一个维度来进行聚合。例如,以所述服务模块为维度,则以所述服务模块为中心,一个服务模块可对应于多个所述服务模块的所属应用及其服务器、所述服务模块的调用应用及其服务器的映射关系;或者,以所述服务模块的所属应用为中心,则将该所属应用中所包含的多个服务模块以及所述服务模块的调用应用及其服务器作为聚合的内容等。
当各个应用或各个应用中的服务模块开始运行时,能够生成服务调用状态信息;所述服务调用状态信息可以基于所述映射数据来进行辅助分析等。继上例,若在应用A(服务器A1、A2、A3)中命名为B的服务模块由应用C(服务器C1、C2、C3)所提供,则当应用A中采集到的日志内容为:模块B调用失败或成功比例异常时,则可得知应用A与应用C的交互异常,进一步地,还可以根据模块B的具体路由表确定日志中描述的调用使用了哪一条路由,使用了何种交互协议,实际访问是否临近超时限制等,而上述信息通常在日志中并不完整,必须需要基于所述映射数据来对上述信息进行获取。
优选地,所述处理设备还包括第七装置(未示出)、第八装置(未示出)、第九装置(未示出)、第十装置(未示出)。
其中,所述第七装置获取一条或多条服务调用状态信息;所述第八装置从所述服务调用状态信息中,提取一种或多种服务标识数据,其中,所述服务标识数据包括服务名称类、接口类、名字服务类中的至少任一项;所述第九装置根据所述映射数据,对所述服务调用状态信息进行匹配;所述第十装置根据匹配后的所述服务调用状态信息,更新所述服务模块调用关联信息。
具体地,所述第七装置可以根据系统历史日志,或根据应用在运行过程中所实时生成的日志等,获取一条或多条服务调用状态信息;其中,所述服务调用状态信息反应了系统运行过程中各个模块间的调用关系。
所述第八装置根据预定的调用规则,基于调用关键字,从所述服务调用状态信息中,提取一种或多种服务标识数据,例如,服务名称类、接口类、名字服务类中的至少任一项所对应的数据。
然后,所述第九装置根据所述映射数据中所对应的映射关系,将所述服务标识数据与所述映射关系中的内容进行匹配,从而实现对所述服务调用状态信息的匹配。
最后,所述第十装置根据匹配后的所述服务调用状态信息,可将所述服务调用状态信息汇聚为应用之间的关联,以更新所述服务模块调用关联信息,作为无侵入性的数据采集,以解决低侵入性trace难以推广的问题。
在此,本领域技术人员应能理解,所述第十装置对所述服务模块调用关联信息的更新,可以是基于原服务模块调用关联信息的结构而进行的,如原服务模块调用关联数据以应用为中心,则更新后的数据也以应用为中心;也可以是仅以所述服务调用状态信息的结构来进行,如原服务模块调用关联信息以服务模块为中心,而所述服务调用状态信息则以应用为中心等。
更优选地,所述处理设备还包括第十一装置(未示出),其中,所述第十一装置对匹配后的所述服务调用状态信息进行聚合;所述第十装置根据所述聚合后的所述服务调用状态信息,更新所述服务模块调用关联信息。
具体地,所述第十一装置根据所述服务调用状态信息所对应的响应时间、状态码等信息,对匹配后的所述服务调用状态信息进行聚合;优选地,所述聚合可基于预定的周期而周期性处理。
所述第十装置则根据所述聚合后的所述服务调用状态信息,更新所述服务模块调用关联信息,从而可以获得全量日志。在此,所述更新方式与前述第十装置的更新方式相同或相似,故在此不再赘述,并通过引用的方式包含于此。
图3示出根据本发明另一个方面的一种用于生成服务模块调用关联信息的方法流程图。
具体地,在步骤S1中,所述处理设备获取一条或多条服务配置变更消息,其中,所述服务配置变更消息对应于上线事件和/或路由表变更事件;在步骤S2中,所述处理设备根据所述服务配置变更消息,获取与所述服务配置变更消息相对应的应用配置变更数据;在步骤S3中,所述处理设备从所述应用配置变更数据中提取调用服务配置数据,以生成或更新服务模块调用关联信息。
在步骤S1中,所述处理设备获取一条或多条服务配置变更消息,其中,所述服务配置变更消息对应于上线事件和/或路由表变更事件。
具体地,在步骤S1中,所述处理设备基于各类通信协议,通过预先设定的传输接口,从预先设置的管理平台中获取一条或多条服务配置变更消息,其中,所述服务配置变更消息对应于上线事件和/或路由表变更事件。
例如,当所述管理平台所管理的路由表发生变更时,将相应数据推送到知识库中,则上限等变更时间所对应的所述服务配置变更消息可以从所述知识库中进行获取等。
其中,所述服务即为各类应用中所对应的一个或多个可提供的服务或服务模块等,如百度中国区所有服务/百度糯米所有服务或某特定服务等。
其中,所述上线事件即为启用某个服务,其所对应的全部服务配置均为新增配置;所述路由表变更事件即为原有或新增添的某个服务所对应的路由表发生了改变。
其中,所述服务配置变更消息可以对应于原有已存在的服务配置的变更,也可以对应于未存在的服务配置的添加等,如百度中国区所有服务/百度糯米所有服务/某特定服务,初始状态为空,那么在这个初始状态上的第一个事件是作用域内的所有配置信息的变更。
在步骤S2中,所述处理设备根据所述服务配置变更消息,获取与所述服务配置变更消息相对应的应用配置变更数据。
具体地,在步骤S2中,所述处理设备根据所述服务配置变更消息,基于各类通信协议,通过预先设定的传输接口,从对应的配置中心处获取与所述服务配置变更消息相对应的应用配置变更数据。其中,所述配置中心存储有所有服务的配置数据,而在步骤S2中,所述处理设备根据所述服务配置变更消息,首先确定该服务配置变更消息所对应的变更的服务以及所变更服务所对应的服务器等信息,然后,根据上述信息,从所述配置中心处获取所述应用配置变更数据。
优选地,在步骤S2中,所述处理设备用于根据所述服务配置变更消息,确定与所述服务配置变更消息相对应的更新范围,其中,所述更新范围包括发生变更的服务器以及所述服务器中所变更的应用配置文件;根据所述更新范围,获取与所述服务配置变更消息相对应的应用配置变更数据。
具体地,在步骤S2中,所述处理设备根据所述服务配置变更消息,根据所述服务配置变更消息的具体内容、来源等信息,确定与所述服务配置变更消息所对应的更新范围;其中,所述更新范围包括发生变更的服务器以及所述服务器中所变更的应用配置文件。
在此,本领域技术人员应能理解,当某服务发生变更时,所述变更的服务器包括实体服务器或虚拟服务器,所述应用配置文件可以是该服务在该服务器中所对应的全部应用配置文件,优选地,还可以是该应用配置文件中仅发生变更的结构化数据。换言之,所述更新范围即为该服务所更新的配置内容。
然后,在步骤S2中,所述处理设备根据所述更新范围,仅选取所述更新范围内所对应的应用配置变更数据以进行获取,从而避免获取未变更的配置数据,提高处理效率。
在步骤S3中,所述处理设备从所述应用配置变更数据中提取调用服务配置数据,以生成或更新服务模块调用关联信息。
具体地,在步骤S3中,所述处理设备根据预定的路径、预定的关键词等信息,从所述应用配置变更数据中,提取调用服务配置数据;其中,所述调用服务配置数据主要包括服务寻址配置数据,例如,所述服务寻址配置数据可以根据配置文件中的“应用配置->调用服务配置->服务寻址方式”路径进行获取,或者可根据配置文件中的关键词“Host”所对应的内容进行获取。以下示出了所述调用服务配置数据的一个示例,其中Host指名了索要调用的服务的寻址方式(无关配置已经删除):
[CamelConfig]
[.GalileoBase]
Host:
XX.XX.XXX.XX:XXXX,XX.XX.XXX.XX:XXXX,XX.XX.XXX.XX:X
XXX
ZooRetry:2
ZooInterval:100
然后,在步骤S3中,所述处理设备根据所提取的调用服务配置数据,根据所述调用服务配置数据之间的调用关系,生成或更新服务模块调用关联信息。其中,所述服务模块调用关联信息中包含了同一应用和/或不同应用间各个模块的调用关系。
例如,应用“糯米”的首页渲染时获取商品列表的服务由模块A提供,A模块依赖商品列表查询的服务、促销信息查询的服务,这两个服务分别由模块B、C提供;则在步骤S3中,所述处理设备根据所提取的调用服务配置数据,建立起应用“糯米”的模块A与模块B、C的服务模块调用关联信息;进一步地,所述服务模块调用关联信息中还可以包含模块A与模块B、C所对应的应用、服务器等各类相关信息
优选地,所述方法还包括步骤S4(未示出),其中,在步骤S4中,所述处理设备对所述应用配置变更数据进行校验;在步骤S3中,所述处理设备从所述校验后的应用配置变更数据中提取调用服务配置数据,以生成或更新服务模块调用关联信息。
具体地,在步骤S4中,所述处理设备基于预设的校验方法,如命名(Naming)校验(也称名字校验)等,对所述应用配置变更数据进行校验。其中,所述校验可包括对已知应用配置的校验以及未知应用配置的校验;例如,对于已知应用配置,可利用命名服务来校验所述已知的应用配置是否正确;对于未知应用配置,则可利用命名服务来校验所述未知的应用配置对应于何种应用配置,以解决配置分析的问题。
本领域技术人员应能理解,所述命名服务所对应的具体操作方式,故在此不再赘述,并以引用的方式包含于此。
然后,在步骤S3中,所述处理设备根据校验后的应用配置变更数据,提取调用服务配置数据,以生成或更新服务模块调用关联信息。其中,所述提取方式与图3中所述步骤S3相同或相似,故在此不再赘述,,并以引用的方式包含于此。
更优选地,若所述应用配置变更数据无法对应于现有应用配置中,在步骤S4中,所述处理设备对所述应用配置变更数据进行命名校验。
具体地,对于所述校验服务,在步骤S4中,所述处理设备可以仅在所述应用配置变更数据无法对应于现有应用配置时执行,从而提高处理效率。
在此,以“命名服务”的校验为例,在校验时,将所述应用配置变更数据中的每个值(value)与命名服务中的现有应用配置的别名列表进行对比,基于所对应的现有配置,来验证待验证的应用配置变更数据是否存在对对应的现有应用配置;优选地,可以对上述值(value)的key集进行贝叶斯分类,基于分类后的值进行校验。从而,可将实际采集到的命名服务数据作为反馈输入到所述处理设备中,以进一步提升准确率。
图4示出根据本发明的一个优选实施例的一种用于生成服务模块调用关联信息的方法流程图。
具体地,在步骤S1’中,所述处理设备获取一条或多条服务配置变更消息,其中,所述服务配置变更消息对应于上线事件和/或路由表变更事件;在步骤S2’中,所述处理设备根据所述服务配置变更消息,获取与所述服务配置变更消息相对应的应用配置变更数据;在步骤S3’中,所述处理设备从所述应用配置变更数据中提取调用服务配置数据,以生成或更新服务模块调用关联信息;在步骤S5’中,所述处理设备根据所述服务模块调用关联信息,提取与所述服务模块调用关联信息相对应的一个或多个调用实例,其中,所述调用实例中包括服务模块、所述服务模块的所属应用及其服务器、所述服务模块的调用应用及其服务器之间的对应调用关系;在步骤S6’中,所述处理设备对所述调用实例进行聚合,以生成一个或多个映射数据。
其中,所述方法的步骤S1’、步骤S2’、步骤S3’与图3所示对应步骤相同或基本相同,故此处不再赘述,并通过引用的方式包含于此。
在步骤S5’中,所述处理设备根据所述服务模块调用关联信息,提取与所述服务模块调用关联信息相对应的一个或多个调用实例,其中,所述调用实例中包括服务模块、所述服务模块的所属应用及其服务器、所述服务模块的调用应用及其服务器之间的对应调用关系。
具体地,在步骤S5’中,所述处理设备根据所述服务模块调用关联信息,获取一个应用的配置中包含了哪些模块、以及这些模块所对应的寻址方式;然后根据所述服务模块调用关联信息所调用的服务模块、所述服务模块的所属应用以及所属应用所在的服务器、所述服务模块的调用应用以及所调用应用的所在服务器等信息,提取与所述服务模块调用关联信息相对应的一个或多个调用实例。
例如,所述服务模块为B,其是应用A的一个模块,则所述应用A为所述服务模块B的所属应用;所述应用A在服务器A1、A2、A3中,则所属应用所在的服务器即为服务器A1、A2、A3。所述服务模块B被应用C所提供,则所述服务模块B的调用应用为所述应用C;所述应用C由服务器C1、C2、C3提供,因此,所述调用应用所在的服务器为服务器C1、C2、C3。
在步骤S5’中,所述处理设备根据上述调用关系,以所述服务模块B为中心,提取出与其相对应的调用关系,即在应用A(服务器A1、A2、A3)中命名为B的服务模块由应用C(服务器C1、C2、C3)所提供。
本领域技术人员应能理解,上述说明仅为示例,并非对本发明的限制。一个服务模块可以对应于多条调用实例,如所述服务模块B还可以存在于应用D(服务器D1)中,并被应用C(服务器C1、C2)与应用E(服务器E1)所提供等。
在步骤S6’中,所述处理设备对所述调用实例进行聚合,以生成一个或多个映射数据。
具体地,在步骤S6’中,所述处理设备对上述一条或多条调用实例进行聚合,根据其所对应的调用关系来生成一个或多个映射数据。所述映射数据可以以服务模块为中心,或是以其他相应的数据为中心等。
优选地,在步骤S6’中,所述处理设备包括根据所述调用实例中的至少任一个维度,对所述调用实例进行聚合,以生成一个或多个映射数据,其中,所述维度包括所述服务模块、所述服务模块的所属应用及其服务器、所述服务模块的调用应用及其服务器之中的至少任一项。
具体地,在步骤S6’中,所述处理设备在进行聚合的过程中,可以基于所述调用实例中的至少任一个维度来进行聚合。例如,以所述服务模块为维度,则以所述服务模块为中心,一个服务模块可对应于多个所述服务模块的所属应用及其服务器、所述服务模块的调用应用及其服务器的映射关系;或者,以所述服务模块的所属应用为中心,则将该所属应用中所包含的多个服务模块以及所述服务模块的调用应用及其服务器作为聚合的内容等。
当各个应用或各个应用中的服务模块开始运行时,能够生成服务调用状态信息;所述服务调用状态信息可以基于所述映射数据来进行辅助分析等。继上例,若在应用A(服务器A1、A2、A3)中命名为B的服务模块由应用C(服务器C1、C2、C3)所提供,则当应用A中采集到的日志内容为:模块B调用失败或成功比例异常时,则可得知应用A与应用C的交互异常,进一步地,还可以根据模块B的具体路由表确定日志中描述的调用使用了哪一条路由,使用了何种交互协议,实际访问是否临近超时限制等,而上述信息通常在日志中并不完整,必须需要基于所述映射数据来对上述信息进行获取。
优选地,所述方法还包括步骤S7’(未示出)、步骤S8’(未示出)、步骤S9’(未示出)、步骤S10’(未示出)。
其中,在步骤S7’中,所述处理设备获取一条或多条服务调用状态信息;在步骤S8’中,所述处理设备从所述服务调用状态信息中,提取一种或多种服务标识数据,其中,所述服务标识数据包括服务名称类、接口类、名字服务类中的至少任一项;在步骤S9’中,所述处理设备根据所述映射数据,对所述服务调用状态信息进行匹配;在步骤S10’中,所述处理设备根据匹配后的所述服务调用状态信息,更新所述服务模块调用关联信息。
具体地,在步骤S7’中,所述处理设备可以根据系统历史日志,或根据应用在运行过程中所实时生成的日志等,获取一条或多条服务调用状态信息;其中,所述服务调用状态信息反应了系统运行过程中各个模块间的调用关系。
在步骤S8’中,所述处理设备根据预定的调用规则,基于调用关键字,从所述服务调用状态信息中,提取一种或多种服务标识数据,例如,服务名称类、接口类、名字服务类中的至少任一项所对应的数据。
然后,在步骤S9’中,所述处理设备根据所述映射数据中所对应的映射关系,将所述服务标识数据与所述映射关系中的内容进行匹配,从而实现对所述服务调用状态信息的匹配。
最后,在步骤S10’中,所述处理设备根据匹配后的所述服务调用状态信息,可将所述服务调用状态信息汇聚为应用之间的关联,以更新所述服务模块调用关联信息,作为无侵入性的数据采集,以解决低侵入性trace难以推广的问题。
在此,本领域技术人员应能理解,在步骤S10’中,所述处理设备对所述服务模块调用关联信息的更新,可以是基于原服务模块调用关联信息的结构而进行的,如原服务模块调用关联数据以应用为中心,则更新后的数据也以应用为中心;也可以是仅以所述服务调用状态信息的结构来进行,如原服务模块调用关联信息以服务模块为中心,而所述服务调用状态信息则以应用为中心等。
更优选地,所述方法还包括步骤S11’(未示出),其中,在步骤S11’中,所述处理设备对匹配后的所述服务调用状态信息进行聚合;在步骤S10’中,所述处理设备根据所述聚合后的所述服务调用状态信息,更新所述服务模块调用关联信息。
具体地,在步骤S11’中,所述处理设备根据所述服务调用状态信息所对应的响应时间、状态码等信息,对匹配后的所述服务调用状态信息进行聚合;优选地,所述聚合可基于预定的周期而周期性处理。
在步骤S10’中,所述处理设备则根据所述聚合后的所述服务调用状态信息,更新所述服务模块调用关联信息,从而可以获得全量日志。在此,所述更新方式与前述步骤S10’的更新方式相同或相似,故在此不再赘述,并通过引用的方式包含于此。
需要注意的是,本发明可在软件和/或软件与硬件的组合体中被实施,例如,可采用专用集成电路(ASIC)、通用目的计算机或任何其他类似硬件设备来实现。在一个实施例中,本发明的软件程序可以通过处理器执行以实现上文所述步骤或功能。同样地,本发明的软件程序(包括相关的数据结构)可以被存储到计算机可读记录介质中,例如,RAM存储器,磁或光驱动器或软磁盘及类似设备。另外,本发明的一些步骤或功能可采用硬件来实现,例如,作为与处理器配合从而执行各个步骤或功能的电路。
另外,本发明的一部分可被应用为计算机程序产品,例如计算机程序指令,当其被计算机执行时,通过该计算机的操作,可以调用或提供根据本发明的方法和/或技术方案。而调用本发明的方法的程序指令,可能被存储在固定的或可移动的记录介质中,和/或通过广播或其他信号承载媒体中的数据流而被传输,和/或被存储在根据所述程序指令运行的计算机设备的工作存储器中。在此,根据本发明的一个实施例包括一个装置,该装置包括用于存储计算机程序指令的存储器和用于执行程序指令的处理器,其中,当该计算机程序指令被该处理器执行时,触发该装置运行基于前述根据本发明的多个实施例的方法和/或技术方案。
对于本领域技术人员而言,显然本发明不限于上述示范性实施例的细节,而且在不背离本发明的精神或基本特征的情况下,能够以其他的具体形式实现本发明。因此,无论从哪一点来看,均应将实施例看作是示范性的,而且是非限制性的,本发明的范围由所附权利要求而不是上述说明限定,因此旨在将落在权利要求的等同要件的含义和范围内的所有变化涵括在本发明内。不应将权利要求中的任何附图标记视为限制所涉及的权利要求。此外,显然“包括”一词不排除其他单元或步骤,单数不排除复数。装置权利要求中陈述的多个单元或装置也可以由一个单元或装置通过软件或者硬件来实现。第一,第二等词语用来表示名称,而并不表示任何特定的顺序。
Claims (16)
1.一种用于生成服务模块调用关联信息的方法,其中,该方法包括以下步骤:
a获取一条或多条服务配置变更消息,其中,所述服务配置变更消息对应于上线事件和/或路由表变更事件;
b根据所述服务配置变更消息,获取与所述服务配置变更消息相对应的应用配置变更数据;
c从所述应用配置变更数据中提取调用服务配置数据,以生成或更新服务模块调用关联信息。
2.根据权利要求1所述的方法,其中,所述步骤b包括:
-根据所述服务配置变更消息,确定与所述服务配置变更消息相对应的更新范围,其中,所述更新范围包括发生变更的服务器以及所述服务器中所变更的应用配置文件;
-根据所述更新范围,获取与所述服务配置变更消息相对应的应用配置变更数据。
3.根据权利要求1或2所述的方法,其中,该方法还包括:
x对所述应用配置变更数据进行校验;
其中,所述步骤c包括:
-从所述校验后的应用配置变更数据中提取调用服务配置数据,以生成或更新服务模块调用关联信息。
4.根据权利要求3所述的方法,其中,所述步骤x包括:
-若所述应用配置变更数据无法对应于现有应用配置中,则对所述应用配置变更数据进行命名校验。
5.根据权利要求1至4中至少任一项所述的方法,其中,该方法还包括:
-根据所述服务模块调用关联信息,提取与所述服务模块调用关联信息相对应的一个或多个调用实例,其中,所述调用实例中包括服务模块、所述服务模块的所属应用及其服务器、所述服务模块的调用应用及其服务器之间的对应调用关系;
t对所述调用实例进行聚合,以生成一个或多个映射数据。
6.根据权利要求5所述的方法,其中,所述步骤t包括:
-根据所述调用实例中的至少任一个维度,对所述调用实例进行聚合,以生成一个或多个映射数据,其中,所述维度包括所述服务模块、所述服务模块的所属应用及其服务器、所述服务模块的调用应用及其服务器之中的至少任一项。
7.根据权利要求5或6所述的方法,其中,该方法还包括:
-获取一条或多条服务调用状态信息;
-从所述服务调用状态信息中,提取一种或多种服务标识数据,其中,所述服务标识数据包括服务名称类、接口类、名字服务类中的至少任一项;
-根据所述映射数据,对所述服务调用状态信息进行匹配;
s根据匹配后的所述服务调用状态信息,更新所述服务模块调用关联信息。
8.根据权利要求7所述的方法,其中,该方法还包括:
-对匹配后的所述服务调用状态信息进行聚合;
所述步骤s包括:
-根据所述聚合后的所述服务调用状态信息,更新所述服务模块调用关联信息。
9.一种用于生成服务模块调用关联信息的处理设备,其中,该设备包括:
第一装置,用于获取一条或多条服务配置变更消息,其中,所述服务配置变更消息对应于上线事件和/或路由表变更事件;
第二装置,用于根据所述服务配置变更消息,获取与所述服务配置变更消息相对应的应用配置变更数据;
第三装置,用于从所述应用配置变更数据中提取调用服务配置数据,以生成或更新服务模块调用关联信息。
10.根据权利要求9所述的处理设备,其中,所述第二装置用于:
-根据所述服务配置变更消息,确定与所述服务配置变更消息相对应的更新范围,其中,所述更新范围包括发生变更的服务器以及所述服务器中所变更的应用配置文件;
-根据所述更新范围,获取与所述服务配置变更消息相对应的应用配置变更数据。
11.根据权利要求9或10所述的处理设备,其中,该设备还包括:
第四装置,用于对所述应用配置变更数据进行校验;
其中,所述第三装置用于:
-从所述校验后的应用配置变更数据中提取调用服务配置数据,以生成或更新服务模块调用关联信息。
12.根据权利要求11所述的处理设备,其中,所述第四装置用于:
-若所述应用配置变更数据无法对应于现有应用配置中,则对所述应用配置变更数据进行命名校验。
13.根据权利要求9至12中至少任一项所述的处理设备,其中,该设备还包括:
第五装置,用于根据所述服务模块调用关联信息,提取与所述服务模块调用关联信息相对应的一个或多个调用实例,其中,所述调用实例中包括服务模块、所述服务模块的所属应用及其服务器、所述服务模块的调用应用及其服务器之间的对应调用关系;
第六装置,用于对所述调用实例进行聚合,以生成一个或多个映射数据。
14.根据权利要求13所述的处理设备,其中,所述第六装置用于:
-根据所述调用实例中的至少任一个维度,对所述调用实例进行聚合,以生成一个或多个映射数据,其中,所述维度包括所述服务模块、所述服务模块的所属应用及其服务器、所述服务模块的调用应用及其服务器之中的至少任一项。
15.根据权利要求13或14所述的处理设备,其中,该设备还包括:
第七装置,用于获取一条或多条服务调用状态信息;
第八装置,用于从所述服务调用状态信息中,提取一种或多种服务标识数据,其中,所述服务标识数据包括服务名称类、接口类、名字服务类中的至少任一项;
第九装置,用于根据所述映射数据,对所述服务调用状态信息进行匹配;
第十装置,用于根据匹配后的所述服务调用状态信息,更新所述服务模块调用关联信息。
16.根据权利要求15所述的处理设备,其中,该设备还包括:
第十一装置,用于对匹配后的所述服务调用状态信息进行聚合;
所述第十装置,用于:
-根据所述聚合后的所述服务调用状态信息,更新所述服务模块调用关联信息。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201610772870.XA CN106330556B (zh) | 2016-08-30 | 2016-08-30 | 一种用于生成服务模块调用关联信息的方法与装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201610772870.XA CN106330556B (zh) | 2016-08-30 | 2016-08-30 | 一种用于生成服务模块调用关联信息的方法与装置 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN106330556A true CN106330556A (zh) | 2017-01-11 |
CN106330556B CN106330556B (zh) | 2019-06-25 |
Family
ID=57789177
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201610772870.XA Active CN106330556B (zh) | 2016-08-30 | 2016-08-30 | 一种用于生成服务模块调用关联信息的方法与装置 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN106330556B (zh) |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN109951576A (zh) * | 2017-12-21 | 2019-06-28 | 苹果公司 | 由计算设备提供的服务的健康状况监视 |
CN111405060A (zh) * | 2020-03-30 | 2020-07-10 | 中国工商银行股份有限公司 | 服务影响范围确定方法、装置、工具和电子设备 |
Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102262556A (zh) * | 2011-09-08 | 2011-11-30 | 山东中创软件工程股份有限公司 | 一种服务信息配置方法及系统 |
CN102647462A (zh) * | 2012-03-29 | 2012-08-22 | 奇智软件(北京)有限公司 | 应用获取、发送方法及装置 |
CN103646111A (zh) * | 2013-12-25 | 2014-03-19 | 普元信息技术股份有限公司 | 大数据环境下实现实时数据关联的系统及方法 |
US20140095677A1 (en) * | 2012-09-28 | 2014-04-03 | International Business Machines Corporation | Configuration command template creation assistant using cross-model analysis to identify common syntax and semantics |
US20150172148A1 (en) * | 2013-12-16 | 2015-06-18 | Hitachi, Ltd. | Management server and control method of management server |
CN105427096A (zh) * | 2015-12-25 | 2016-03-23 | 北京奇虎科技有限公司 | 支付安全沙箱实现方法及系统与应用程序监控方法及系统 |
-
2016
- 2016-08-30 CN CN201610772870.XA patent/CN106330556B/zh active Active
Patent Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102262556A (zh) * | 2011-09-08 | 2011-11-30 | 山东中创软件工程股份有限公司 | 一种服务信息配置方法及系统 |
CN102647462A (zh) * | 2012-03-29 | 2012-08-22 | 奇智软件(北京)有限公司 | 应用获取、发送方法及装置 |
US20140095677A1 (en) * | 2012-09-28 | 2014-04-03 | International Business Machines Corporation | Configuration command template creation assistant using cross-model analysis to identify common syntax and semantics |
US20150172148A1 (en) * | 2013-12-16 | 2015-06-18 | Hitachi, Ltd. | Management server and control method of management server |
CN103646111A (zh) * | 2013-12-25 | 2014-03-19 | 普元信息技术股份有限公司 | 大数据环境下实现实时数据关联的系统及方法 |
CN105427096A (zh) * | 2015-12-25 | 2016-03-23 | 北京奇虎科技有限公司 | 支付安全沙箱实现方法及系统与应用程序监控方法及系统 |
Cited By (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN109951576A (zh) * | 2017-12-21 | 2019-06-28 | 苹果公司 | 由计算设备提供的服务的健康状况监视 |
CN109951576B (zh) * | 2017-12-21 | 2023-09-22 | 苹果公司 | 用于监视服务的方法、设备和存储介质 |
CN111405060A (zh) * | 2020-03-30 | 2020-07-10 | 中国工商银行股份有限公司 | 服务影响范围确定方法、装置、工具和电子设备 |
CN111405060B (zh) * | 2020-03-30 | 2022-10-21 | 中国工商银行股份有限公司 | 服务影响范围确定方法、装置、工具和电子设备 |
Also Published As
Publication number | Publication date |
---|---|
CN106330556B (zh) | 2019-06-25 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
Kristensen et al. | The practitioner’s guide to coloured Petri nets | |
CN110019651A (zh) | 一种流式规则引擎及业务数据处理方法 | |
Mancini et al. | SyLVaaS: System level formal verification as a service | |
Amoretti et al. | DEUS: a discrete event universal simulator | |
Yang et al. | Transformation bpel to cp-nets for verifying web services composition | |
Nguyen et al. | Batc: a benchmark for aggregation techniques in crowdsourcing | |
CN103927314B (zh) | 一种数据批量处理的方法和装置 | |
CN109840533A (zh) | 一种应用拓扑图识别方法及装置 | |
CN101819551B (zh) | 记录企业信息系统的服务交互数据的方法和系统 | |
CN106910045A (zh) | 工作流引擎设计方法及系统 | |
CN110310100A (zh) | 项目管理方法、装置、电子设备及存储介质 | |
CN108460068A (zh) | 报表导入导出的方法、装置、存储介质及终端 | |
CN110348109A (zh) | 三维仿真培训数据处理的方法及终端设备 | |
CN106330556A (zh) | 一种用于生成服务模块调用关联信息的方法与装置 | |
Kristensen et al. | Implementing coloured Petri nets using a functional programming language | |
CN102810065B (zh) | 用于加载程序模块的方法和系统 | |
CN110362294A (zh) | 开发任务执行方法、装置、电子设备及存储介质 | |
CN110442753A (zh) | 一种基于opc ua的图数据库自动建立方法及装置 | |
Babac et al. | AgentTest: A specification language for agent-based system testing | |
CN108875374A (zh) | 基于文档节点类型的恶意pdf检测方法及装置 | |
CN110414021A (zh) | 工业物联网的边缘设备事件规则产生系统、装置和方法 | |
CN115455426A (zh) | 基于漏洞分析模型开发的业务错误分析方法及云端ai系统 | |
Golubeva et al. | A tool for simulating parallel branch-and-bound methods | |
Höfig | Interpretation of behaviour models at runtime: performance benchmark and case studies | |
Bause et al. | Simulating process chain models with OMNeT++ |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |