Links

Abstract

Translated from Chinese

本发明提供了一种异步分布式列对象请求代理系统的应用方法：第一子系统接收到符合本命名服务命名的消息；Gate把请求传递给软件总线；软件总线读取请求信息，匹配在总线中注册的桩信息，并传递请求消息给请求代理；请求代理根据请求数据，填充代理追踪信息入栈，若请求本系统服务，传递消息到本地服务单元，若请求其他系统数据，则请求代理需要按照本地缓存的命名信息寻找第二子系统的命名服务，并发送给第二子系统的Gate处理该消息；第二子系统的Gate收到请求消息；服务单元收到请求消息后，令该消息进入本服务待处理队列；并提醒调度器，调度器调度该服务单元运行请求；服务单元运行请求后得到一个响应消息，该响应消息中包含了代理追踪栈，服根据消息的追踪栈，该响应消息传递给消息的请求单元。 The present invention provides a method of application of the objects to asynchronous distributed proxy system request: the first subsystem receives the message consistent with the naming service named; Gate passes the request to the software bus; software bus read request message matches the bus pile registered information, and passes the request message to the requesting agent; according to the request data requesting agent, filling agent stack trace information, if the requested service of the present system, passes the message to the local service unit, if the requested data to other systems, the requesting agent requires find local cache named in accordance with a second information naming service subsystem, the second subsystem sends the message processing Gate; Gate second subsystem receives the request message; service unit after receiving the request message, enabling the message accessing this service pending queue; and reminds a scheduler, the scheduler schedules the service unit operation request; get a response message after the service unit operation request, the response message contains the agent stack trace, service according to the message of the stack trace, the response messaging request message to the unit.

Description

[0001] 本发明涉及一种异步分布式列对象请求代理系统的应用方法，属于分布式网络监控系统领域。 [0001] The present invention relates to a method of application of the objects to asynchronous distributed proxy system requests, belonging to a distributed network monitoring systems.

背景技术 Background technique

[0002] 随着计算机网络和电信网的快速发展和膨胀，人们对于网络的安全，可靠的要求越来越高，网络监控系统可以让用户有效的监控、分配有限的网络资源。 [0002] With the rapid development and expansion of computer networks and telecommunications networks, network security for the people, have become increasingly demanding reliable, network monitoring system allows effective monitoring users, assign limited network resources.传统的网络监控系统采用集中运行模式，中心服务器负责对整个网络进行统一的监控和管理。 Traditional network monitoring system uses a centralized mode of operation, the central server is responsible for unified monitoring and management of the entire network.这种模式下，大量的监控或管理信息传输会消耗网络带宽，且中心服务器往往超负荷工作，严重影响监控系统的运行效率。 In this mode, a large number of monitoring or management information transmission consumes network bandwidth, and the central server is often overloaded with work, seriously affecting the efficiency of the monitoring system.这种系统结构较简单，但是可扩展性差，如果中心服务器失效，将引起整个网络无法监控。 The system structure is relatively simple, but poor scalability, if the central server fails, will cause the entire network can not be monitored.

[0003] 为了克服集中式监控的缺陷，可以进行分布式层次监控，由多个监控服务器进行监控，再将监控结果层层汇总。 [0003] In order to overcome the drawbacks of the centralized monitoring, the monitoring level may be distributed, monitored by monitoring a plurality of servers, then the monitoring result summary layers.在这样的体系结构中会有很多个监控服务器存在。 In such an architecture will be in a number of monitoring servers exist.这种系统可以进行分布式分层次监控，可以满足现有超大网络的监控需求。 Such a system can be distributed hierarchical control, to meet the monitoring requirements of existing large networks.

[0004] 但分布式分层次监控系统的体系结构比较复杂，系统各个服务器间都需要互相调用，这首先需要一种能够异步响应的，分布式的请求代理系统来满足层次调用的要求，同时，传统的监控数据使用对象传递，该方式不能有效的利用现有带宽，因此监控数据本身的传输也需要一种能更高效利用现有网络带宽的方式。 [0004] However, the distributed hierarchical architecture more complex monitoring system, the server system needs between the various call each other, this need for a first asynchronous response, the requesting agent distributed system level call to meet the requirements, but, traditional monitoring data transfer using the object, the method can not effectively use the existing bandwidth, the transmission data monitor itself is also a need for a more efficient use of existing bandwidth manner.

发明内容 SUMMARY

[0005] 为了解决上述问题，本发明提供了一种异步分布式列对象请求代理系统的应用方法。 [0005] In order to solve the above problems, the present invention provides the use of a column method of asynchronous distributed object request broker system.

[0006] 具体技术方案如下： [0006] The specific technical solution is as follows:

[0007] 本发明实施例提供的一种异步分布式列对象请求代理系统的应用方法，包括： [0007] An asynchronous embodiment of the present invention is provided a distributed application method of the objects to request proxy system, comprising:

[0008] SI、第一子系统接收到符合本命名服务命名的消息； [0008] SI, the first subsystem receives the message consistent with the naming service named;

[0011] S4、请求代理根据请求数据，填充代理追踪信息入栈，若请求本系统服务，传递消息到本地服务单元，并直接进入S6，若请求其他系统数据，则请求代理需要按照本地缓存的命名信息寻找第二子系统的命名服务，并发送给第二子系统的Gate处理该消息； [0011] S4, according to the request data requesting agent, filling agent stack trace information, if the requested service of the present system, passes the message to the local service element, and direct access to S6, otherwise other system data request, requesting the proxy cache according to local needs naming information to find the second subsystem naming service, and sent to the second subsystem Gate process the message;

[0012] S5、第二子系统的Gate收到请求消息，并重复步骤中的SI到S4 ； [0012] S5, the second subsystem receives the Gate message request, and repeat the step SI to S4;

[0013] S6、服务单元收到请求消息后，令该消息进入本服务待处理队列； [0013] S6, after receiving the request message service unit, enabling the service message into the present pending queue;

[0014] S7、服务单元提醒调度器，本服务有请求需要执行，调度器调度该服务单元运行请求； [0014] S7, scheduler reminder service unit, there is a request needs to perform this service, the scheduler schedules the service unit operation request;

[0015] S8、服务单元运行请求后得到一个响应消息，该响应消息中包含了代理追踪栈，月艮务发送响应消息给请求代理，根据消息的追踪信息，该响应消息传递给消息的请求单元。 [0015] S8, to obtain a response message after the service unit operation request, the response message contains the agent stack trace, month that works to send a response message to the requesting agent, according to the tracking information message, the response message to the requesting unit message .

[0016] 作为本发明的进一步改进，所述S7步骤的响应消息是异步发送的消息，消息发送者在发送消息后不需要等待该消息的响应，该消息的请求者需要以异步的方式获取消息的响应。 [0016] As a further improvement of the present invention, the step S7 in response to the message is a message sent asynchronously, does not need to wait for a message sent in response to the message after sending a message, the message requester need to obtain information in an asynchronous manner the response to.

[0017] 作为本发明的进一步改进，若一个服务单元调用其他单元的服务，且其他单元的位置是通过本系统内的请求代理来确定的，其步骤为： [0017] As a further improvement of the present invention, if a service unit invoke other services unit and other units by the position requesting agent within the system to determine which steps of:

[0018] S10、服务单元发送对其他单元的调用请求消息给总线； [0018] S10, the service calling unit sends a request message to the other units of the bus;

[0020] S30、请求代理根据请求数据，填充代理追踪信息入栈，若请求本系统服务，传递消息到本地服务单元，并直接进入S50，若请求其他系统数据，则请求代理需要按照本地缓存的命名信息寻找第二子系统的命名服务，并发送给第二子系统的Gate处理该消息； [0020] S30, according to the request data requesting agent, filling agent stack trace information, if the requested service of the present system, passes the message to the local service unit, and directly to S50, if the request to other system data, the requesting agent requires a local cache in accordance with naming information to find the second subsystem naming service, and sent to the second subsystem Gate process the message;

[0021] S40、第二子系统的Gate收到请求消息，并重复SI到S4 ； [0021] S40, the second subsystem receives the Gate message request, and SI to S4 is repeated;

[0022] S50、其他单元收到请求消息后，令该消息进入本服务待处理队列； [0022] S50, the other unit receives the request message, so the message queue to be processed into the present service;

[0023] S60、服务单元提醒调度器，本服务有请求需要执行，调度器调度该服务单元运行请求； [0023] S60, scheduler reminder service unit, the need to perform the service there is a request, the scheduler schedules the service unit operation request;

[0024] S70、服务单元运行请求后得到一个响应消息，该响应消息中包含了代理追踪栈，服务发送响应消息给请求代理，根据消息的追踪信息，该响应消息会最终被传递给消息的请求单元。 [0024] S70, to give a response to the service unit operation request message, the response message contains the agent stack trace, the service sends a response message to the requesting agent, according to the tracking information message, the message will eventually be transmitted to the request message, the response unit.

[0025] 作为本发明的进一步改进，所述S8和S70具体包括以下步骤： [0025] As a further improvement of the present invention, the S8 and S70 includes the following steps:

[0026] S100、服务单元把运行请求后得到的响应消息，发送给系统所在的总线； [0026] S100, the operation unit after the service request is a response message sent to the bus system is located;

[0028] S300、请求代理单元按照消息中包含的代理追踪栈信息，分情况处理，如果该响应对应的请求在本服务器，则直接发送该响应消息给本服务器的请求单元，到此，本次请求响应的流程结束，否则进行S400 ； [0028] S300, the proxy request broker unit according stack trace information contained in the message, where sub-process, if the response corresponding to the request in the server, the response message is sent directly to the requesting unit of the present server, this, this request response process ends, otherwise perform S400;

[0029] S400、如过该响应的请求不在本服务器，请求代理需要按照本地缓存的命名信息寻找第一子系统的命名服务，并发送给第一子系统的Gate处理该响应消息； [0029] S400, as the response to the request through the server is not present, the need to find a first Request Broker subsystem named according to the naming service information in the local cache, and sends the first subsystem processes the response message Gate;

[0030] S500、第一子系统的Gate收到响应消息后，发送给总线处理，总线获取第一子系统上的请求代理单元处理该响应消息； After the [0030] S500, the first subsystem receives the Gate message response sent to the bus transaction, the bus acquisition request on the first sub-agent unit processes the response message;

[0031] S600、第一子系统上的请求代理，按照消息中包含的代理追踪栈信息，重复S300的处理，直到本次请求响应的流程结束。 [0031] S600, the requesting agent on the first subsystem, according to the proxy stack trace information contained in the message, the process S300 is repeated until a response to this request process ends.

[0032] 作为本发明的进一步改进，所述各单元间的交互是通过会话传递的，一个会话封装了单元和单元间通信的管道，该管道的底层实现可以是tcp或UdP或ipc三种方式，在会话中单元可以进行发送一个请求，响应一个请求，主动发送一个通知的操作。 [0032] As a further improvement of the present invention, the interaction between the units is transmitted through the session, a session between the package and a unit of the communication pipe, the bottom of the pipe may be achieved tcp or UdP or three ways ipc , in the unit may send a session request, a response to the request, sends a notification of the operation.

[0033] 由以上技术方案可以看出，本发明的异步分布式列对象请求代理系统能适应从小网络到大网络到超大网络的分布式层次监控要求，列对象数据压缩传输能有效的节约网络带宽，达成高效监控大网络的目的。 [0033] As can be seen from the above technical solutions, the present invention is an asynchronous distributed object request broker column system can adapt to distributed hierarchical network monitoring requirements from small to large networks to large networks, the transmission data compression column objects can effectively save network bandwidth , the purpose of efficient monitoring large networks.

[0034]【附图说明】 [0034] BRIEF DESCRIPTION

[0035] 图I是本发明一实施方式分布式子系统的单元图；CN 102355505 B [0035] Figure I is a view of an embodiment of the present invention, means of distributed subsystems; CN 102355505 B

书 book

明 Bright

说 Say

3/6页 Page 3/6

[0036] 图2是本发明一实施方式分布式子系统交互的示意图； [0036] FIG. 2 is a schematic view of a embodiment of the present invention distributed subsystem interaction;

[0037] 图3是本发明一实施方式异步分布式列对象请求代理系统的应用方法的流程图； [0037] FIG. 3 is an embodiment of the present invention the objects to asynchronous distributed flowchart of a method of application proxy system a request;

[0038] 图4是本发明另一实施方式异步分布式列对象请求代理系统的应用方法的流程图； [0038] FIG. 4 is another embodiment of the present invention the objects to asynchronous distributed flowchart of a method of application proxy system a request;

[0039] 图5是S8和S70的具体流程图。 [0039] FIG. 5 is a detailed flowchart of S8 and S70.

[0040]【具体实施方式】 [0040] DETAILED DESCRIPTION OF THE INVENTION

[0041] 为了使本发明的目的、技术方案和优点更加清楚，下面结合附图和具体实施例对本发明进行详细描述。 [0041] To make the objectives, technical solutions, and advantages of the invention more apparent, the accompanying drawings and specific embodiments of the present invention will be described in detail with.

[0042] 对批量监控数据本身的传输，需要使用列对象方式。 [0042] Bulk transfer of the monitoring data itself, requires the use of column object mode.因列对象传输只传递一个列名称和多个列数据来组成网络监控数据，且顺序、高度重复的数据可以产生更高的压缩比， 故本发明中的列对象本身也被设计为是一个具备高压缩比的数据集，本系统中各个服务单元的调用都是采用这个列对象来传递请求和响应消息。 Object Transfer only by passing a column name and column data columns consisting of a plurality of network monitoring data, and sequentially, highly repetitive data may be generated a higher compression ratio, it is an object of the present invention the column itself is designed to be provided with a high compression ratio of the data set, the system calls the respective service units are based on the list of objects to pass request and response messages.

[0043] 在此基础上构建的本分布式列对象请求代理系统中的单元或系统间调用的消息定义(包括请求消息，请求响应消息，通知消息）具备了高压缩比，可以快速传递的特性，能够有效的减小对监控网络的带宽需求。 Characteristics [0043] Based on this column constructed in accordance with a distributed object request message is defined between the agent units in the system or system call (including message request, request response message, the notification message) includes a high compression ratio, it can be quickly transferred can effectively reduce the bandwidth requirements for network monitoring.

[0044] 如图I所示，在本发明一实施方式中，异步分布式列对象请求代理系统由多个分布式子系统构成，每个分布式子系统包括： [0044] As shown in FIG I, in one embodiment of the present invention, the asynchronous distributed system is a distributed object request broker column consists of a plurality of subsystems, each of the distributed subsystem comprising:

[0046] 命名服务单元：用于负责系统间调用的命名解析，名字格式为“协议：//地址[: 端口] /单元名”，协议可选数据为tcpAidp/ipc,分别对应组件中的三种Gate,通过一个指定的命名即可以获得一个可供单元进行请求/响应或通知操作的会话。 [0046] Naming Service Unit: responsible for name resolution between the system call, the name of the form "protocol: // address [: Port] / unit name" optional protocol data tcpAidp / ipc, corresponding to three components species Gate, i.e. via a prescribed naming unit can be obtained for a request / response or notification operation session.

[0047] 软件总线：用于管理一个系统内所有可以提供服务的软件单元，每个软件单元注册到软件总线后，才可以对外提供服务，同时，只有该单元注册到软件总线后，才可以向其他单元请求服务。 [0047] Software Bus: After all the software used to manage the unit can provide services within a system, each software unit registered to the software bus, before they can provide services at the same time, the unit only to registered software bus before the other units requesting service.

[0048] 总线桩：每个接入到软件总线的单元，必须存在一个总线桩，总线桩负责单元和总线的交互，从其他服务器来得请求到达软件总线后，总线调度总线桩发送请求给单元，在单元处理完成后，单元发送相应给总线桩，由总线桩请求总线调度返回结果给请求服务器。 [0048] Pile bus: each access to the software bus unit, there must be a post bus, and the bus unit responsible for the interaction bus pile, the request comes from the other servers reaches the software bus, the bus scheduler sends a request to the bus pile unit, after the completion of the processing units, corresponding to the bus unit transmits the pile, the pile by a bus request bus scheduling request returns the results to the server.

[0049] 调度器：所有需要CPU执行的代码都必须通过调度器调度运行。 [0049] Scheduler: all the code executed by the CPU are required scheduler schedules must be run.调度器以负载均衡的方式实现任务按照优先级调度，以保障服务器稳定运行。 The scheduler way to achieve load balancing tasks according to priority scheduling, to ensure the stable operation of the server.

[0050] 请求代理单元：请求代理管理请求可以到达的对端，该对端可以是本机也可以是不是本机，甚至可以是多个层次嵌套下的主机，因此请求代理屏蔽了具体执行任务的机器的位置，对于一个原始请求来说，其只需要按照命名向具备请求代理的软件总线请求服务， 软件总线向请求代理发起请求后，请求代理按照命名情况决定转发请求到本总线对应的单元或其他机器上的对应单元，请求代理的存在使得灵活的部署多个层次的分布式服务器成为可能。 [0050] proxy unit requesting: requesting the peer proxy management request may reach the end of the machine may not be the machine may even be in a plurality of host-nested, thus shielding the concrete execution requesting agent position of the machine task for one of the original request, its only in accordance with the request to the proxy naming the bus request software services, software bus after initiating a request to the requesting agent, decided to forward the request to the requesting agent named in accordance with the present bus corresponding corresponding to the unit or units on other machines, there is a request such that the distributed proxy server hierarchy of the plurality of flexible deployment possible.

[0051] 以上单元间的交互是通过会话传递的，一个会话封装了单元和单元间通信的管道，该管道的底层实现可以是tcp/udp/ipc三种方式，在会话中单元可以进行发送一个请 [0051] The interaction between the above units is transmitted through the session, a session between the package and a unit of the communication pipe, the bottom of the pipe may be achieved tcp / udp / ipc three ways, a unit may be transmitted in the session please

6求,响应一个请求,主动发送一个通知的操作。 6 seeking, in response to a request, sends a notification of the operation.

[0052] 如图2、图3所示，在本发明一实施方式中，异步分布式列对象请求代理系统包括子系统A和子系统B，在分布式子系统A在Gate接收到一个Client请求消息后的对这个请求消息的处理流程： [0052] As shown in FIG 2, FIG. 3, in one embodiment of the present invention, the asynchronous distributed system comprising a column Object Request Broker subsystem A and subsystem B, subsystem distributed Client A receives a request message Gate after this processing flow request message:

[0053] SI、子系统A接收到符合本命名服务命名的消息，注意如果消息指定的命名不在本系统，则该消息不会被本系统接收； [0053] SI, subsystem A received message consistent with the naming service named, note that if the message is not specified in the naming system, the received message is not the present system;

[0054] S2、Gate把请求传递给软件总线处理，注意，此处传递的具体含义为创建一个会话，在会话中传输消息，后面每个步骤中的传递均为此处的含义，后面的步骤的描述直接使用传递； [0054] S2, Gate bus to pass the request to the software processing, it is noted here passed specific meaning to create a session, the step of transmitting a message in a conversation, are passed meaning later herein each step, back, It described directly transmitted;

[0056] S4、请求代理根据请求数据，填充代理追踪信息入栈，若请求本系统服务，传递消息到本地服务单元，并直接进入S6，若请求其他系统数据(示意图中为子系统B)，则请求代理需要按照本地缓存的命名信息寻找子系统B的命名服务，并发送给子系统B的Gate处理该消息； [0056] S4, according to the request data requesting agent, filling agent stack trace information, if the requested service of the present system, passes the message to the local service element, and direct access to S6, otherwise, a data request from another system (schematic subsystems B), requesting agent system B need to find named according to a naming service information in the local cache, the Gate system B sends the message processing;

[0057] S5、子系统B的Gate收到请求消息，类似的，子系统B的处理需要重复步骤中的SI到S4 ； [0057] S5, the Gate system B receives the request message, similar to the process of system B need to repeat steps S4 to the SI;

[0058] S6、服务单元收到请求消息后，令该消息进入本服务待处理队列； [0058] S6, after receiving the request message service unit, enabling the service message into the present pending queue;

[0059] S7、服务单元提醒调度器，本服务有请求需要执行。 [0059] S7, scheduler reminder service unit, this request requires services are performed.调度器会在合适的时候调度该服务单元运行请求； The scheduler will schedule the requested service units running at the right time;

[0060] S8、服务单元运行请求后得到一个响应消息，该响应消息中包含了代理追踪栈，月艮务发送响应消息给请求代理。 [0060] S8, the service unit is obtained after a run request response message, the response message contains the agent stack trace, month that works to send a response message to the requesting agent.根据消息的追踪信息，该响应消息会最终被传递给消息的请求单元。 The tracking information of the message, the response message will eventually be passed to the message requesting unit.

[0061] 需要指出的是，S7的响应消息是个异步发送的消息，消息发送者在发送消息后不需要等待该消息的响应，该消息的请求者需要以异步的方式获取消息的响应。 [0061] It should be noted that the response message is a message S7 asynchronous transmission, the sender does not need to wait for a response message to the message after sending a message, the message requester need to obtain a response message in an asynchronous manner.

[0062] 同样的，如图4所示，若一个服务单元(假设其为单元SA)如果调用其他单元的服务(假设其为单元SB)，该单元SB的位置是通过本系统内的请求代理来确定的，单元SA并不知道SB的具体位置是否和SA在同一系统内，其步骤为： [0062] Also, as shown, when a service unit (assumed to be unit SA) if the calling services of other units (assumed to be unit SB), the position of the SB cell within the system is by the requesting agent 4 determined, unit SA SB is not known whether the specific location and in the same SA system, comprising the steps of:

[0065] S30、请求代理根据请求数据，填充代理追踪信息入栈，若请求本系统服务，传递消息到本地服务单元，并直接进入S50，若请求其他系统数据(本图为子系统B)，则请求代理需要按照本地缓存的命名信息寻找子系统B的命名服务，并发送给子系统B的Gate处理该消息； [0065] S30, according to the request data requesting agent, filling agent stack trace information, if the requested service of the present system, passes the message to the local service unit, and directly to S50, if the data request from another system (the present sub-graph B), requesting agent system B need to find named according to a naming service information in the local cache, the Gate system B sends the message processing;

[0066] S40、子系统B的Gate收到请求消息，类似的，子系统B的处理应该重复SI到S4。 [0066] S40, Gate system B receives the request message, similar to the process should be repeated in the subsystem B SI to S4.

[0067] S50、服务单元B收到请求消息后，令该消息进入本服务待处理队列； [0067] S50, unit B receives the service request message, enabling the service message into the present pending queue;

[0068] S60、服务单元提醒调度器，本服务有请求需要执行。 [0068] S60, scheduler reminder service unit, the request requires services are performed.调度器会在合适的时候调度该服务单元运行请求；[0069] S70、服务单元运行请求后得到一个响应消息，该响应消息中包含了代理追踪栈，服务发送响应消息给请求代理。 The scheduler will schedule at the right time to run the service request unit; get a response message [0069] S70, the service request unit operates, the response message contains the agent stack trace, the service sends a response message to the requesting agent.根据消息的追踪信息，该响应消息会最终被传递给消息的请求单元。 The tracking information of the message, the response message will eventually be passed to the message requesting unit.

[0070] 进一步的，如图5所示，S8和S70,请求代理单元都在发送响应消息给请求的单元，假设该服务单元位于子系统B，其收到一个请求，并由调度器调度运行后产生了对应的响应，详细步骤如下： Units [0070] Further, as shown in FIG, S8, and S70 5, the units requesting agent sends a response message to the requesting subsystem assumed that the service unit is located at B, which receives a request, by the scheduler schedules run after generating a corresponding response, the detailed steps are as follows:

[0071] S100、服务单元把运行请求后得到的响应消息，发送给系统所在的总线； [0071] S100, the operation unit after the service request is a response message sent to the bus system is located;

[0073] S300、请求代理单元按照消息中包含的代理追踪栈信息，分情况处理，如果该响应对应的请求在本服务器，则直接发送该响应消息给本服务器的请求单元，到此，本次请求响应的流程结束。 [0073] S300, the proxy request broker unit according stack trace information contained in the message, where sub-process, if the response corresponding to the request in the server, the response message is sent directly to the requesting unit of the present server, this, this request response process ends.否则进行S400; Otherwise, S400;

[0074] S400、如过该响应的请求不在本服务器(假设请求单元在子系统A)，请求代理需要按照本地缓存的命名信息寻找子系统A的命名服务，并发送给子系统A的Gate处理该响应消息； [0074] S400, as the response to the request through the server is not present (assuming the request subsystem unit A), the requesting agent system A according to the need to find local cache named naming service information, and sends the processing subsystem Gate A, the response message;

[0075] S500、子系统A的Gate收到响应消息后，发送给总线处理。 [0075] S500, Gate A subsystem, after receiving the response message, sent to the bus transaction.总线获取子系统A上的请求代理单元处理该响应消息； Acquisition request on the bus subsystem A proxy unit processes the response message;

[0076] S600、子系统A上的请求代理，按照消息中包含的代理追踪栈信息，重复S300的处理，直到本次请求响应的流程结束。 [0076] S600, the subsystem requesting agent A, according to the agent stack trace information contained in the message, the process S300 is repeated until the process ends in response to this request.

[0077] 需要注意的是S300到S600的处理何时跳出，取决于系统的层次关系，分布式系统的层次如果为N层，则该循环至多循环NI次即可结束处理。 [0077] Note that when the processing of S600 to S300 out, depending on the system hierarchy, a hierarchical distributed system if N layer, the cycle times up to end the processing cycle NI.

[0078] 需要注意的是：本异步分布式列对象请求代理系统不需要区分Client和Server,实际上只要是采用本分布式对象请求代理体系结构的系统，即可以按照各自的命名互相访问，互为Client,互为Server。 [0078] Note that: this column asynchronous distributed object request broker system does not distinguish between Client and Server, in fact, as long as the present system is a distributed object request broker architecture, i.e., can visit each other according to their names, the mutual for the Client, mutually Server.

[0079] 异步分布式列对象请求代理系统的应用方法适用于如下几种情况： [0079] The method of application of asynchronous distributed column object request broker system is applicable to the following situations:

[0080] 第一种：所有的服务单元都在本端，这种形式适用于小网络，如校园网的监控，单服务器模式即可以完成网络的监控。 [0080] The first: All services end units are present, this form is suitable for small networks, such as the campus network monitor, i.e., single-server mode complete the monitoring of the network.这种部署可以很方便的修改为第二种应用方式。 This deployment can easily modify the way for the second application.

[0081] 第二种：分服务平行部署，不对服务器分层。 [0081] The second: Excellent service parallel deployment, the server does not hierarchical.即部分服务单元在一台服务器，另外部分服务单元在另外的服务器等，这种模式下，可以按照服务单元的多少切分为2个或更多的平行服务器。 That part of a service unit in the server, another portion of another server in the service unit, etc., this mode can be divided into two or more parallel server service according to how many cutting units.一个同样应用了本体系结构Client可以按照服务的命名向各平行服务器请求服务，这种模式可以适应更大规模的网络监控，如一些流量很大的校园网或企业网，这种模式下可以很方便的建立平行的服务集群。 An equally applied this architecture Client can follow the naming service to each parallel server requests a service, this model can be adapted to a larger network monitoring, such as some large flow of the campus network or enterprise network, this mode can be very easily create parallel service cluster.

[0083] 首先按照网络规模切分为N个子监控网络。 [0083] The network is first segmented into N sub-scale monitoring network.

[0084] 其次，在N个子网络上，可部署N个单机服务系统，在N个子网上可部署M个（M〈〈N)大网系统。 [0084] Next, in the sub-network N, the N may be deployed standalone service system can be deployed the M (M << N) system in a large network N subnet.优选地，还可以进一步对N个单机系统进一步切分，如每个单机切分成X个平行服务，则需要部署为N*X个平行子网络监控系统。 Preferably, a further cut can be further divided on the N single-server system, such as the single cut into each parallel service X, it is necessary to deploy * X N parallel sub-network monitoring system.

[0085] 最后，在M个大网络系统上可部署一个或多个顶层网络监控系统。 [0085] Finally, in a large network system M may deploy one or more top-level network monitoring system.

[0086] 同时，本方式的顶层系统，也可以应用为多个平行顶层系统，如监控全网络告警的顶层系统为一个单独的顶层监控子系统，监控性能的顶层系统为一个单独的顶层监控子系统。 [0086] Meanwhile, the top layer of the system according to the present embodiment may be applied as a top layer a plurality of parallel systems, such as alarm monitoring top-network system into a single top-level monitoring subsystem, to monitor the performance of a single top-level system monitoring sub-top system.

[0087] 为了描述的方便，描述以上装置时以功能分为各种单元分别描述。 [0087] For convenience of description, the description of the above device is divided into various functional units are described.当然，在实施本申请时可以把各单元的功能在同一个或多个软件和/或硬件中实现。 Of course, the function of each unit is implemented in one or more software and / or hardware at the time of application of the present embodiment.

[0088] 通过以上的实施方式的描述可知，本领域的技术人员可以清楚地了解到本申请可借助软件加必需的通用硬件平台的方式来实现。 [0088] By the above described embodiments can be seen, those skilled in the art can understand that the present application may be implemented by software plus a necessary universal hardware platform.基于这样的理解，本申请的技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来，该计算机软件产品可以存储在存储介质中，如R0M/RAM、磁碟、光盘等，包括若干指令用以使得一台计算机设备(可以是个人计算机，服务器，或者网络设备等）执行本申请各个实施方式或者实施方式的某些部分所述的方法。 Based on such understanding, the technical solutions of the present application or the nature of the part contributing to the prior art may be embodied in a software product, which computer software product may be stored in a storage medium, such as a R0M / RAM, magnetic disk, , an optical disc, and includes several instructions that enable a computer device (may be a personal computer, a server, or network device) to execute the methods of the various embodiments of the present application or embodiment of the.

[0089] 以上所描述的装置实施方式仅仅是示意性的，其中所述作为分离部件说明的单元可以是或者也可以不是物理上分开的，作为单元显示的部件可以是或者也可以不是物理单元，即可以位于一个地方，或者也可以分布到多个网络单元上。 [0089] The apparatus of the above-described embodiments are merely illustrative, as a unit wherein the separate parts may be or may not be physically separate, parts displayed as units may be or may not be physical units, i.e., it may be located in one place, or may be distributed to multiple network units.可以根据实际的需要选择其中的部分或者全部单元来实现本实施方式方案的目的。 Part or all of the units may be selected according to actual needs to achieve the object of the embodiment of the present embodiment.本领域普通技术人员在不付出创造性劳动的情况下，即可以理解并实施。 Those of ordinary skill in the art without creative efforts, can be understood and implemented.

[0091] 本申请可以在由计算机执行的计算机可执行指令的一般上下文中描述，例如程序单元。 [0091] The present application may be described in the general context of computer-executable instructions, executed by a computer, such as a program unit.一般地，程序单元包括执行特定任务或实现特定抽象数据类型的例程、程序、对象、组件、数据结构等等。 Generally, program unit comprising performing particular tasks or implement particular abstract data types routines, programs, objects, components, data structures, and the like.也可以在分布式计算环境中实践本申请，在这些分布式计算环境中，由通过通信网络而被连接的远程处理设备来执行任务。 This application may be practiced in a distributed computing environment, the distributed computing environments, where tasks are performed by remote processing devices that are linked through a communications network.在分布式计算环境中，程序单元可以位于包括存储设备在内的本地和远程计算机存储介质中。 In a distributed computing environment, program unit may be located in both local and remote computer storage media including memory storage devices in.

[0092] 应当理解，虽然本说明书按照实施方式加以描述，但并非每个实施方式仅包含一个独立的技术方案，说明书的这种叙述方式仅仅是为清楚起见，本领域技术人员应当将说明书作为一个整体，各实施方式中的技术方案也可以经适当组合，形成本领域技术人员可以理解的其他实施方式。 [0092] It should be understood that while the present specification be described in terms of embodiments, but not every embodiment contains only a separate aspect, this narrative description only for the sake of clarity, those skilled in the art should be used as a specification overall, the embodiments of the technical solutions may be suitably combined to form other embodiments of the present art can be appreciated in the art.

[0093] 上文所列出的一系列的详细说明仅仅是针对本发明的可行性实施方式的具体说明，它们并非用以限制本发明的保护范围，凡未脱离本发明技艺精神所作的等效实施方式或变更均应包含在本发明的保护范围之内。 [0093] A series of the detailed description set forth above is merely for the feasibility of specifically described embodiments of the present invention, they are not intended to limit the scope of the present invention, who have not departing from the spirit of the equivalent techniques of the present invention is made embodiment or changes be included within the scope of the present invention.

Claims (3)

Translated from Chinese

1. 一种异步分布式列对象请求代理系统的应用方法，其特征在于，当第一子系统在Gate接收到一个Client请求消息后,所述方法包括以下步骤： S1、第一子系统接收到符合本命名服务命名的消息； S2、Gate把请求传递给软件总线处理； S3、软件总线读取请求消息中请求信息，匹配在总线中注册的桩信息寻找请求代理单元的桩，并传递请求消息给请求代理； S4、请求代理根据请求数据，填充代理追踪信息入栈，若请求本系统服务，传递消息到本地服务单元，并直接进入S6，若请求其他系统数据，则请求代理需要按照本地缓存的命名信息寻找第二子系统的命名服务，并发送给第二子系统的Gate处理该消息； S5、第二子系统的Gate收到请求消息，并重复步骤中的SI到S4 ； S6、服务单元收到请求消息后，令该消息进入本服务待处理队列； S7、服务单元提醒调度器，本 An application method of the objects to asynchronous distributed proxy system requests, wherein, when the first subsystem receives the Gate message to a Client request, the method comprising the steps of: S1, a first subsystem receives the message consistent with the naming service named; S2, Gate the request to process the software bus; S3, software read bus request information request message, the pile matches the registered information in the bus request looking pile agent unit, and transmitting a request message to the requesting agent; S4, according to the request data requesting agent, filling agent stack trace information, if the requested service of the present system, passes the message to the local service element, and direct access to S6, otherwise, a data request from another system, the need to follow the local cache requesting agent naming the second information to find the naming service subsystem, the second subsystem sends Gate process the message; S5, the second subsystem receives the Gate message request, and repeat the step SI to S4; S6, service after receiving the request message unit, enabling the message to be processed into the present service queue; S7, scheduler reminder service unit, the present务有请求需要执行，调度器调度该服务单元运行请求；所述S7步骤的响应消息是异步发送的消息，消息发送者在发送消息后不需要等待该消息的响应，该消息的请求者需要以异步的方式获取消息的响应； S8、服务单元运行请求后得到一个响应消息，该响应消息中包含了代理追踪栈，服务发送响应消息给请求代理，根据消息的追踪信息，该响应消息传递给消息的请求单元； 若一个服务单元调用其他单元的服务，且其他单元的位置是通过本系统内的请求代理来确定的，其步骤为： S10、服务单元发送对其他单元的调用请求消息给总线； S20、软件总线读取请求消息中请求信息，匹配在总线中注册的桩信息寻找请求代理单元的桩信息,并传递请求消息给请求代理； S30、请求代理根据请求数据，填充代理追踪信息入栈，若请求本系统服务，传递消息到本地服 There needs to perform service request, the scheduler schedules the service unit operation request; response message to the step S7 a message is sent asynchronously, does not need to wait for a message sent in response to the message after sending a message, the message requester need to asynchronously fetch response message; S8, the operation of requesting the service unit to obtain a response message, the response message contains the agent stack trace, the service sends a response message to the requesting agent, according to the tracking information message, the response message to the message requesting unit; if one service call other service units, and other locations units by requests within the system agent determined, comprising the steps of: S10, the service unit sends a request message for calls to other units to the bus; S20, the software bus request information read request message, the matching information registered in the pile to find the bus request information pile agent unit, and transmitting a request message to the requesting agent; S30, according to the request data requesting agent, filling agent stack trace information , if the requested service of the present system, passes the message to the local server单元，并直接进入S50，若请求其他系统数据，则请求代理需要按照本地缓存的命名信息寻找第二子系统的命名服务，并发送给第二子系统的Gate处理该消息； S40、第二子系统的Gate收到请求消息，并重复SI到S4 ； S50、其他单元收到请求消息后，令该消息进入本服务待处理队列； S60、服务单元提醒调度器，本服务有请求需要执行，调度器调度该服务单元运行请求； S70、服务单元运行请求后得到一个响应消息，该响应消息中包含了代理追踪栈，服务发送响应消息给请求代理，根据消息的追踪信息，该响应消息会最终被传递给消息的请求单元。 Unit, and directly into the S50, if the requested data to other systems, the need to find a second requesting agent naming service subsystem named in accordance with information in the local cache, and sends the second message processing subsystem Gate; S40, a second sub- Gate system receives the request message, and repeats the SI to S4; S50, after receiving the request message the other units, enabling the message to be processed into the present service queue; the S60, scheduler reminder service unit, the need to perform the service there is a request, the scheduling schedules the service unit operation request; get a response message S70, the service unit operation request, the response message contains the agent stack trace, the service sends a response message to the requesting agent, according to the tracking information message, the response message will eventually be pass the request message to the unit.

2.如权利要求1所述的方法，其特征在于，所述S8和S70具体包括以下步骤： S100、服务单元把运行请求后得到的响应消息，发送给系统所在的总线； S200、总线获取请求代理桩信息后，发送该响应消息给请求代理单元； S300、请求代理单元按照消息中包含的代理追踪栈信息，分情况处理，如果该响应对应的请求在本服务器，则直接发送该响应消息给本服务器的请求单元，到此，本次请求响应的流程结束，否则进行S400; S400、如过该响应的请求不在本服务器，请求代理需要按照本地缓存的命名信息寻找第一子系统的命名服务，并发送给第一子系统的Gate处理该响应消息；S500、第一子系统的Gate收到响应消息后，发送给总线处理，总线获取第一子系统上的请求代理单元处理该响应消息；S600、第一子系统上的请求代理，按照消息中包含的代理追踪栈信息，重复S30 2. The method according to claim 1, wherein said S8 and S70 includes the following steps: S100, a response message after the service request is running the unit, and transmits to the bus system is located; S200, a bus acquisition request after proxy stub message, transmits the response message to the requesting agent unit; S300, request broker unit according agent stack trace information contained in the message, points process, if the response corresponding to the request in the server directly sends the response message to this request to the server unit, this, in response to this request process ends, otherwise perform S400; S400, as the response to the request through the server is not present, the need to find a first request Broker subsystem named according to the naming service information of the local cached and sends a first processing subsystem Gate the response message; after S500, the first subsystem receives the Gate message response sent to the bus transaction, the bus acquisition request on the first sub-agent unit processes the response message; S600, the requesting agent on the first subsystem, according to the tracking agent included in the message stack information S30 is repeated0的处理，直到本次请求响应的流程结束。 0 process until the process is completed in response to this request.

3.如权利要求1至2中任意一项所述的方法，其特征在于，所述各单元间的交互是通过会话传递的，一个会话封装了单元和单元间通信的管道，该管道的底层实现可以是tcp或udp或ipc三种方式,在会话中单元可以进行发送一个请求,响应一个请求,主动发送一个通知的操作。 3. The method as claimed in any one of claims 1 to 2 in the bottom of the pipe, characterized in that the interaction between the units is transmitted through the session, a session between the package and a unit of the communication pipe, implementation may be tcp or udp ipc or three ways, a unit may be transmitted in a session request, a response to the request, sends a notification of the operation.