WO2024048858A1 - 분산 메시징 서버를 통한 데이터 처리 방법, 및 이를 포함하는 분산 메시징 시스템 - Google Patents
분산 메시징 서버를 통한 데이터 처리 방법, 및 이를 포함하는 분산 메시징 시스템 Download PDFInfo
- Publication number
- WO2024048858A1 WO2024048858A1 PCT/KR2022/019786 KR2022019786W WO2024048858A1 WO 2024048858 A1 WO2024048858 A1 WO 2024048858A1 KR 2022019786 W KR2022019786 W KR 2022019786W WO 2024048858 A1 WO2024048858 A1 WO 2024048858A1
- Authority
- WO
- WIPO (PCT)
- Prior art keywords
- data
- distributed messaging
- messaging server
- server
- agent
- Prior art date
Links
- 238000003672 processing method Methods 0.000 title claims abstract description 63
- 238000000034 method Methods 0.000 claims abstract description 99
- 238000013480 data collection Methods 0.000 claims abstract description 81
- 238000012544 monitoring process Methods 0.000 claims abstract description 31
- 238000007726 management method Methods 0.000 claims description 75
- 238000012545 processing Methods 0.000 claims description 52
- 230000008569 process Effects 0.000 claims description 43
- 230000005540 biological transmission Effects 0.000 claims description 33
- 238000013500 data storage Methods 0.000 claims description 4
- 238000010586 diagram Methods 0.000 description 14
- 230000006870 function Effects 0.000 description 11
- 238000004891 communication Methods 0.000 description 5
- 230000002159 abnormal effect Effects 0.000 description 3
- 230000004044 response Effects 0.000 description 3
- 101000927793 Homo sapiens Neuroepithelial cell-transforming gene 1 protein Proteins 0.000 description 1
- 101001124937 Homo sapiens Pre-mRNA-splicing factor 38B Proteins 0.000 description 1
- 101000631937 Homo sapiens Sodium- and chloride-dependent glycine transporter 2 Proteins 0.000 description 1
- 101000639975 Homo sapiens Sodium-dependent noradrenaline transporter Proteins 0.000 description 1
- 102100028886 Sodium- and chloride-dependent glycine transporter 2 Human genes 0.000 description 1
- 230000005856 abnormality Effects 0.000 description 1
- 238000004458 analytical method Methods 0.000 description 1
- 230000008859 change Effects 0.000 description 1
- 238000013523 data management Methods 0.000 description 1
- 238000011161 development Methods 0.000 description 1
- 238000005516 engineering process Methods 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 238000005192 partition Methods 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G05—CONTROLLING; REGULATING
- G05B—CONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
- G05B19/00—Programme-control systems
- G05B19/02—Programme-control systems electric
- G05B19/418—Total factory control, i.e. centrally controlling a plurality of machines, e.g. direct or distributed numerical control [DNC], flexible manufacturing systems [FMS], integrated manufacturing systems [IMS] or computer integrated manufacturing [CIM]
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06Q—INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
- G06Q10/00—Administration; Management
- G06Q10/06—Resources, workflows, human or project management; Enterprise or organisation planning; Enterprise or organisation modelling
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06Q—INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
- G06Q50/00—Information and communication technology [ICT] specially adapted for implementation of business processes of specific business sectors, e.g. utilities or tourism
- G06Q50/10—Services
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L45/00—Routing or path finding of packets in data switching networks
- H04L45/12—Shortest path evaluation
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L51/00—User-to-user messaging in packet-switching networks, transmitted according to store-and-forward or real-time protocols, e.g. e-mail
- H04L51/21—Monitoring or handling of messages
-
- 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/01—Protocols
- H04L67/10—Protocols in which an application is distributed across nodes in the network
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L9/00—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
- H04L9/06—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols the encryption apparatus using shift registers or memories for block-wise or stream coding, e.g. DES systems or RC4; Hash functions; Pseudorandom sequence generators
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L9/00—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
- H04L9/40—Network security protocols
Definitions
- the present invention relates to a data processing method through a distributed messaging server, and a distributed messaging system including the same, and more specifically, to settings for the method of collecting data input from a user through a monitoring server, the scope of data collection, and the data processing method.
- a data processing method through a distributed messaging server that sets the agent of each system according to the settings, transmits the data collected and processed according to the settings to the target system through the distributed messaging server, and stores it in a desired location within the target system, and It relates to a distributed messaging system including:
- the technical problem to be achieved by the present invention is to set the agent of each system according to the settings for the data collection method, data collection range, and data processing method input from the user through the monitoring server, and to collect and process the data according to the settings.
- the present invention provides a data processing method through a distributed messaging server that transmits data to a target system through a distributed messaging server and stores it in a desired location within the target system, and a distributed messaging system including the same.
- a data processing method through a distributed messaging server includes the steps of a management server receiving settings for a data collection method, data collection range, and data processing method from a user through a monitoring server, the management server A, setting a first agent installed in the first system according to the input settings for the data collection method and the data collection range, the collected data collected in the first system through the set first agent 1
- the management server processes the collected data according to the input settings for the data processing method to generate target information and processing result data
- the management server may include transmitting the processing result data to a second agent installed in the second system corresponding to the target information through the first distributed messaging server.
- the data collection method may be a database access data collection method, a memory access data collection method, an API (Application Programming Interface) type data collection method, or a data collection method through a web crawler.
- API Application Programming Interface
- the data collection range may be a new data range, a changed data range, or a data range stored in a specific folder.
- the target information may include address information about the second system and information about the target data storage space within the second system.
- the data processing method through the distributed messaging server further includes the step of the management server periodically generating an encryption key and distributing it to the first agent, the second agent, and the monitoring server,
- the first agent may encrypt the collected data with the encryption key and transmit the encrypted collected data to the management server through the first distributed messaging server.
- the step of transmitting the processing result data to the second agent installed in the second system includes the management server sending the processing result data to the second agent installed in the second system corresponding to the target information through a second distributed messaging server. It can be sent to the agent.
- the first system configures the first distributed messaging server and a first network
- the second system configures the second distributed messaging server and a second network
- the first system includes the first network.
- the first system and the second system included in the second network may be geographically separated.
- the data processing method through the distributed messaging server includes a specific process in which the management server is processed through the first agent or the second agent according to the user's control input through the monitoring server. It may further include controlling or transmitting a command to the first agent or the second agent.
- control of the process may be control for stopping the process, interrupting the process, or restarting the process.
- the command may be a command supported by an operating system (OS) in which the first agent or the second agent is installed.
- OS operating system
- the data processing method through the distributed messaging server may include the management server, based on the data collection method input from the user, the data collection range, and the data processing method, the first distributed messaging The method may further include calculating a cost for each candidate transmission path of distributed messages to be delivered through the server and selecting a transmission path with the minimum cost according to the calculated cost.
- the cost may be determined based on the total transmission time and message throughput according to the candidate transmission path of the distributed messages to be delivered.
- the data processing method through the distributed messaging server further includes assigning an optimal management server based on the data collection method input from the user, the data collection range, and the data processing method. It can be included.
- the step of allocating the optimal management server is based on the data collection method, the data collection range, and the data processing method, and the traffic status of each of the plurality of management servers. Any one of the servers may be assigned as the optimal management server.
- the management server receives settings for the data collection method, data collection range, and data processing method input from the user through the monitoring server, and configures the input data collection method and data collection range.
- the agent setting module sets the first agent installed in the first system, and when the collected data collected from the first system through the set first agent is received through the first distributed messaging server, the input
- the data processing module and the management server that process the collected data according to the settings for the data processing method to generate target information and processing result data, and the management server, transmit the processing result data to the target information through the first distributed messaging server. It may include transmitting to a second agent installed in the corresponding second system.
- users can easily determine the data collection method and data collection range through a monitoring server in accordance with the requirements for collection and processing of interconnected data between existing systems that wish to interconnect data. , you can set the data processing method.
- data interworking between multiple systems can be processed quickly and effectively by utilizing a distributed messaging server in the entire process of setup procedures and data collection, processing, and transmission.
- data interconnection is performed between agents, thereby maintaining security and enabling scalability when interconnecting data with other company systems.
- FIG. 1 is a conceptual diagram of a distributed messaging system according to an embodiment of the present invention.
- FIG. 2 is a block diagram according to an embodiment of the distributed messaging server shown in FIG. 1.
- FIG. 3 is a diagram showing the data flow in the agent setting process of the distributed messaging system shown in FIG. 1.
- FIG. 4 is a diagram showing data flow during data collection, processing, and transmission within the distributed messaging system shown in FIG. 1.
- FIG. 5 is a block diagram according to an embodiment of the management server shown in FIG. 1.
- Figure 6 is a conceptual diagram of a distributed messaging system according to another embodiment of the present invention.
- FIG. 7 is a diagram showing data flow during data collection, processing, and transmission within the distributed messaging system shown in FIG. 6.
- Figure 8 is a flowchart of a data processing method through a distributed messaging server according to an embodiment of the present invention.
- unit refers to a unit that processes at least one function or operation, which refers to a processor, micro Processor (Micro Processer), Micro Controller, CPU (Central Processing Unit), GPU (Graphics Processing Unit), APU (Accelerate Processor Unit), DSP (Drive Signal Processor), ASIC (Application Specific Integrated Circuit), FPGA It may be implemented as hardware or software, such as a Field Programmable Gate Array, or a combination of hardware and software, and may also be implemented in a form combined with a memory that stores data necessary for processing at least one function or operation. .
- each component is responsible for. That is, two or more components, which will be described below, may be combined into one component, or one component may be divided into two or more components for more detailed functions.
- each of the components described below may additionally perform some or all of the functions handled by other components, and some of the main functions handled by each component may be performed by other components. Of course, it can also be carried out exclusively by .
- FIG. 1 is a conceptual diagram of a distributed messaging system according to an embodiment of the present invention.
- FIG. 2 is a block diagram according to an embodiment of the distributed messaging server shown in FIG. 1.
- the distributed messaging system 10 includes a plurality of agents (100-1 to 100-5), a distributed messaging server 200, a monitoring server 250, and a plurality of agents (100-1 to 100-5). may include management servers (300-1 to 300-3).
- Each of the plurality of agents may be installed in a specific system (not shown) and perform the function of collecting data within the system.
- an agent may be installed individually for each system.
- a plurality of agents that collect data in separate areas or collect data in different ways may be installed within one system.
- one agent may collect data in multiple systems.
- the distributed messaging server 200 may operate based on a publish-subscribe model.
- the distributed messaging server 200 receives data collected from each of the plurality of agents 100-1 to 100-5 in the form of a message, and can divide the message and process or transmit it in a distributed form.
- the distributed messaging server 200 may be implemented with Apache Kafka, and the distributed messaging server 200 may refer to a Kafka cluster consisting of a plurality of Kafka servers.
- the distributed messaging server 200 includes a zookeeper cluster consisting of a plurality of zookeepers (zookeepers, 210-1 to 210-3) and a plurality of brokers (brokers, 220-1 to 220- 3) It can be configured as a Kafka server cluster.
- Multiple zookeepers (210-1 to 210-3) can manage multiple brokers (220-1 to 220-3), and multiple brokers (220-1 to 220-3) can be managed as one It can perform the function of coordinating with a cluster.
- one of the plurality of zookeepers 210-1 to 210-3 within the distributed messaging server 200 may operate as the leader of the Kafka cluster, and the remaining zookeepers may operate as followers ( It can operate as a follower. In this case, if the leader Zookeeper fails, the follower Zookeeper can replace its function.
- Each of the plurality of brokers (220-1 to 220-3) may represent a Kafka server.
- each of the plurality of brokers 220-1 to 220-3 may form part of a transmission path through which distributed messages are transmitted.
- a plurality of topics which are standard units for data management, may be operated within the distributed messaging server 200, and each topic may be composed of a plurality of partitions, which are units for distributed data processing. .
- the monitoring server 250 monitors the status of a plurality of agents (100-1 to 100-5) or the installed agents (100-1 to 100-5) through the distributed messaging server 200.
- the status of the system can be monitored, or the status of the distributed messaging server 200 itself can be monitored.
- the monitoring server 250 may communicate directly with a plurality of management servers 300-1 to 300-3 to perform monitoring.
- the monitoring server 250 may monitor the performance of the system in which each of the plurality of agents (100-1 to 100-5) is installed.
- the monitoring server 250 monitors the status of the distributed messaging server 200, for example, specific processes of Zookeepers (210-1 to 210-3) and Brokers (220-1 to 220-3). You can.
- the monitoring server 250 may receive settings for the data collection method, data collection range, and data processing method from the user, and transmit setting information according to the input settings to the management server 300.
- the detailed agent setting process will be described later with reference to FIG. 3.
- Each of the plurality of management servers 300-1 to 300-3 may store monitoring data of the monitoring server 250 and manage abnormal situations according to the monitoring results.
- each of the plurality of management servers may detect abnormal situations (e.g., CPU usage exceeding the standard, memory usage exceeding the standard) of the system on which each of the plurality of agents (100-1 to 100-5) is installed.
- abnormal situations e.g., CPU usage exceeding the standard, memory usage exceeding the standard
- a command can be generated and sent to the system where the agent (100-1 to 100-5) where the abnormal situation occurred is installed.
- Each of the plurality of management servers 300-1 to 300-3 may process and convert the data collected by each of the plurality of agents 100-1 to 100-5.
- Each of the plurality of management servers processes and converts data into linked databases (e.g., redis, Oracle, MS-SQL, My-SQL, Mongo DB, Maria DB, etc.) It can be saved to suit each purpose.
- linked databases e.g., redis, Oracle, MS-SQL, My-SQL, Mongo DB, Maria DB, etc.
- FIG. 3 is a diagram showing the data flow in the agent setting process of the distributed messaging system shown in FIG. 1.
- each of the first system 110-1 and the second system 110-1 may broadly refer to an existing system and may be referred to as a legacy system.
- FIG. 3 for convenience of explanation, the actual management operations of the first agent (100-1) and the second agent (100-2) among the plurality of management servers (300-1 to 300-3) shown in FIG. 1 are shown.
- the one performing the operation is shown as the management server 300.
- the monitoring server 250 manages setting information corresponding to the input settings through the distributed messaging server 200. It can be transmitted to the server 300 side.
- the management server 300 receives setting information regarding settings for the data collection method, data collection range, and data processing method, and responds to the received setting information through the distributed messaging server 200 to the first system 110.
- the first agent (100-1) installed in -1) and the second agent (100-2) installed in the second system (110-2) can each be set.
- the management server 300 may set the data collection method and data collection range of the first agent 100-1.
- the management server 300 may perform a setting process for the data processing method of the data processing module (336 in FIG. 5) in the management server 300, which will be described later, in response to the received setting information.
- the data collection method may be a database access data collection method, a memory access data collection method, an API (Application Programming Interface) type data collection method, or a data collection method through a web crawler.
- API Application Programming Interface
- the data collection range may be a new data range, a changed data range, or a data range stored in a specific folder.
- FIG. 4 is a diagram showing data flow during data collection, processing, and transmission within the distributed messaging system shown in FIG. 1.
- data in the first system 110-1 is collected through the first agent 100-1 set according to setting information input through the monitoring server 250, and , the data flow of processing the collected data in the management server 300 and transmitting it to the second agent 100-2 installed in the second system 110-1 is shown.
- the first agent 100-1 collects data in the first system 110-1 according to the data collection method and data collection range set through the management server 300, and sends the collected data to the distributed messaging server 200. It can be transmitted to the management server 300 through .
- the management server 300 may process the received collected data to generate target system information and processing result data according to the data processing method setting among the setting information input through the monitoring server 250.
- the target system information includes address information for the second system 110-2 and target data storage space (e.g., target folder, target database, etc.) in the second system 110-2. May contain information.
- target data storage space e.g., target folder, target database, etc.
- processing result data may mean data generated as a result of processing (eg, processing or converting) collected data according to a data processing method according to user settings.
- the management server 300 may transmit the processing result data to the second agent 100-2 installed in the second system 110-2 corresponding to the target system information through the distributed messaging server 200.
- the second agent 100-2 may store the received processing result data in a target data storage space (eg, target folder, target database, etc.) within the second system 110-2.
- a target data storage space eg, target folder, target database, etc.
- FIG. 5 is a block diagram according to an embodiment of the management server shown in FIG. 1.
- the management server 300 may include a communication interface 310, a memory 320, and a processor 330.
- the communication interface 310 can interface communication between the management server 300 and the distributed messaging server 200, and can process data or signals transmitted and received during the interfacing process.
- the memory 320 may store data required during the processing of the processor 330 to perform the function of the management server 300, and data generated during or after the processing of the processor 330 is completed.
- the memory 320 may store a program including program code for performing a data processing method through a distributed messaging server according to an embodiment of the present invention, and the memory 320 includes the processor 330 and When combined, the above program can be executed.
- memory 320 may be implemented as a variety of means capable of storing data, such as a database.
- the processor 330 may include an agent setting module 332, a transmission path setting module 334, a data processing module 336, and an encryption module 338.
- the agent setting module 332, the transmission path setting module 334, the data processing module 336, and the encryption module 338 include program code and hardware resources capable of executing the program code. It can be divided into logical units or sets, and each does not necessarily mean physically connected code or one type of hardware.
- the setting module 332, the transmission path setting module 334, the data processing module 336, and the encryption module 338 are separated to indicate that they can be separated functionally and logically, and must be separately configured. This does not mean that it is a separate physical device or written in separate code.
- the agent setting module 332 receives setting information corresponding to the settings for data collection method, data collection range, and data processing method input from the user through the monitoring server 250, and responds to each setting information in response to the received setting information. You can create commands to set up agents (eg, 100-1, 100-2).
- the command generated by the agent setting module 332 may be a command corresponding to settings for the data collection method and data collection range.
- the generated command may be transmitted to each agent (eg, 100-1, 100-2) through the distributed messaging server 200.
- the agent setting module 332 configures agents (e.g., 100-1, 100-2) according to control input from the user through the monitoring server 250.
- agents e.g., 100-1, 100-2
- control of the process may be control for stopping the process, stopping the process, or restarting the process.
- the command may be a command supported by an operating system (OS) in which an agent (eg, 100-1, 100-2) is installed.
- OS operating system
- the transmission path setting module 334 calculates the cost according to the candidate transmission path of distributed messages to be delivered through the distributed messaging server 200 based on the data collection method, data collection range, and data processing method input from the user, The transmission path can be selected according to the calculated cost.
- the cost may be determined based on the total transmission time and required message throughput along the candidate transmission path of the distributed messages to be delivered. For example, the longer the total transmission time along the candidate transmission path, the greater the cost, and the greater the required message throughput, the greater the cost.
- the transmission path setting module 334 may select the candidate transmission path with the minimum cost as the transmission path to actually transmit the distributed message.
- the transmission path may include a broker (eg, 220-1, 220-2, or 220-3) in charge of message transmission within the distributed messaging server 200.
- a broker eg, 220-1, 220-2, or 220-3 in charge of message transmission within the distributed messaging server 200.
- the transmission path setting module 334 may be configured to allocate an optimal management server based on the data collection method, data collection range, and data processing method input from the user. Depending on the embodiment, the final allocation of the optimal management server may be performed through Zookeeper clusters 210-1 to 210-3 within the distributed messaging server 200.
- the selected transmission path may include a management server (eg, 300-1, 300-2, or 330-3) responsible for data processing.
- the transmission path setting module 334 is based on the data collection method, data collection range, and data processing method input from the user, and the traffic of the plurality of management servers 300-1 to 300-3. , it can also be set to allocate the optimal management server.
- the data processing module 336 may process data collected by an agent (eg, 100-1) based on a data processing method input from the user.
- an agent eg, 100-1
- the data processing module 336 may process data through a process having a sequence.
- the data processing module 336 may process the collected data and convert it into API (Application Programming Interface) parameters of another system (eg, the second system 110-2).
- API Application Programming Interface
- the data processing module 336 may process collected data and convert it to be linked to the interface of another system (eg, the second system 110-2).
- the data processing module 336 may process collected data and convert it into analysis data.
- the encryption module 338 may periodically generate encryption keys and distribute them to each agent (eg, 100-1 and 100-2) and the monitoring server 250.
- the agent on the side collecting the data e.g., the first agent 100-1 encrypts the collected data with the distributed encryption key and sends the encrypted data to the management server 300 through the distributed messaging server 200. Can be transmitted.
- the encryption key distributed by the encryption module 338 may be an encryption key according to the Advanced Encryption Standard (AES).
- AES Advanced Encryption Standard
- FIG. 6 is a conceptual diagram of a distributed messaging system according to another embodiment of the present invention.
- FIG. 7 is a diagram showing data flow during data collection, processing, and transmission within the distributed messaging system shown in FIG. 6.
- the distributed messaging system 10A is different from the distributed messaging system 10 of FIG. 1 in that it is a system composed of multiple networks (NET1, NET#2).
- Figure 6 illustrates an example where each network includes five agents and one management server, but the number of agents or management servers can be varied.
- the first network (NET#1) and the second network (NET#2) may be formed in locations that are geographically separated from each other.
- the agents 100A-1 to 100A-5 included in the first network (NET#1) communicate with each other through the first distributed messaging server 200A-1, or the first distributed messaging server 200A It is possible to communicate with the first management server (300A-1) through -1).
- Agents (100A-6 to 100A-10) included in the second network (NET#2) communicate with each other through the second distributed messaging server (200A-2) or the second distributed messaging server (200A-2). It is possible to communicate with the second management server (300A-2) through .
- Data transmission and reception is required between agents (100A-1 to 100A-5) included in the first network (NET#1) and agents (100A-6 to 100A-10) included in the second network (NET#2).
- data is transmitted through communication between the first management server 300A-1 and the second distributed messaging server 200A-2 or through communication between the second management server 300A-2 and the first distributed messaging server 200A-1. can be transmitted.
- each of the first system (110A-1) and the second system (110A-1) can broadly refer to an existing system and can be referred to as a legacy system.
- the first system (100A-1) configures the first distributed messaging server (200A-1) and the first network (NET#1)
- the second system (100A-2) configures the second distributed messaging server (200A-1).
- 200A-2) and a second network (NET#2) can be configured, and the first system (100A-1) and the second system (100A-2) can be geographically separated.
- the first agent (100A-1) collects data in the first system (100A-1) and sends the collected data to the first management server (300A-1) through the first distributed messaging server (200A-1). It can be sent to .
- the first management server (300A-1) processes the collected data according to the data processing method input by the user, and sends the processing result data to the second system (100A-2) through the second distributed messaging server (200A-2). It can be transmitted to the sixth agent (100A-6).
- Figure 8 is a flowchart of a data processing method through a distributed messaging server according to an embodiment of the present invention.
- the data processing method through a distributed messaging server includes a method of collecting data from users through a monitoring server (e.g., 250, 250A-1, 250A-2), and data You can enter settings for collection scope and data processing method (S10).
- a monitoring server e.g. 250, 250A-1, 250A-2
- S10 collection scope and data processing method
- the data processing method through a distributed messaging server is a first system (e.g., 110-1, 110A-1) according to the data collection method and data processing range settings entered through step S10.
- the first agent eg, 100-1, 100A-1) installed can be set (S20).
- a data processing method through a distributed messaging server is a first system (e.g., 110-1, 110A-1) through a first agent (e.g., 100-1, 100A-1) set in step S20. ) can be received through the first distributed messaging server (eg, 200, 200A-1) (S30).
- a first system e.g., 110-1, 110A-1
- a first agent e.g., 100-1, 100A-1 set in step S20.
- the first distributed messaging server eg, 200, 200A-1) (S30).
- the data processing method through a distributed messaging server processes the collected data received in step S30 according to the settings for the data processing method input in step S10 to generate target system information and processing result data. (S40).
- the data processing method through a distributed messaging server processes the processing result data generated in step S40 to a second system (e.g., 110-1) through the first distributed messaging server (e.g., 200, 200A-1). 2, 110A-2) can be transmitted to the second agent (eg, 100-2, 100A-6) (S50).
- a second system e.g., 110-1
- the first distributed messaging server e.g., 200, 200A-1
- 2, 110A-2 can be transmitted to the second agent (eg, 100-2, 100A-6) (S50).
Landscapes
- Engineering & Computer Science (AREA)
- Business, Economics & Management (AREA)
- Signal Processing (AREA)
- Computer Networks & Wireless Communication (AREA)
- Computer Security & Cryptography (AREA)
- General Physics & Mathematics (AREA)
- Physics & Mathematics (AREA)
- Tourism & Hospitality (AREA)
- Economics (AREA)
- Human Resources & Organizations (AREA)
- Strategic Management (AREA)
- Quality & Reliability (AREA)
- Theoretical Computer Science (AREA)
- Entrepreneurship & Innovation (AREA)
- General Business, Economics & Management (AREA)
- Marketing (AREA)
- Automation & Control Theory (AREA)
- Operations Research (AREA)
- Game Theory and Decision Science (AREA)
- Educational Administration (AREA)
- Health & Medical Sciences (AREA)
- General Health & Medical Sciences (AREA)
- Primary Health Care (AREA)
- Development Economics (AREA)
- Manufacturing & Machinery (AREA)
- General Engineering & Computer Science (AREA)
- Computer And Data Communications (AREA)
Abstract
본 발명의 실시 예에 따른 분산 메시징 서버를 통한 데이터 처리 방법은 모니터링 서버를 통해 사용자로부터 입력된 데이터 수집 방식, 데이터 수집 범위, 및 데이터 처리 방법에 대한 설정에 따라 각 시스템의 에이전트를 설정하고, 설정에 따라 수집된 데이터를 분산 메시징 서버를 통하여 타겟 시스템으로 전송하여 타겟 시스템 내의 원하는 위치에 저장할 수 있도록 한다.
Description
본 발명은 분산 메시징 서버를 통한 데이터 처리 방법, 및 이를 포함하는 분산 메시징 시스템에 관한 것으로, 보다 상세하게는 모니터링 서버를 통해 사용자로부터 입력된 데이터 수집 방식, 데이터 수집 범위, 및 데이터 처리 방법에 대한 설정에 따라 각 시스템의 에이전트를 설정하고, 설정에 따라 수집, 처리된 데이터를 분산 메시징 서버를 통하여 타겟 시스템으로 전송하여 타겟 시스템 내의 원하는 위치에 저장할 수 있도록 하는 분산 메시징 서버를 통한 데이터 처리 방법, 및 이를 포함하는 분산 메시징 시스템에 관한 것이다.
기존의 에이전트(agent)는 특정 상황에 특정된 데이터를 수집하기 위해 시스템에 설치되었기 때문에, 시스템마다 각 시스템의 환경에 맞는 형태로 개별적으로 개발되어야 했다. 또한, 동일한 시스템 내에서도 에이전트가 설치된 시스템의 환경이 변경될 때마다, 이에 맞추어 에이전트의 설정을 변경하기 위해 추가적인 개발과정을 거쳐야하는 불편함이 존재했다.
본 발명이 이루고자 하는 기술적 과제는 모니터링 서버를 통해 사용자로부터 입력된 데이터 수집 방식, 데이터 수집 범위, 및 데이터 처리 방법에 대한 설정에 따라 각 시스템의 에이전트를 설정하고, 설정에 따라 수집, 처리된 데이터를 분산 메시징 서버를 통하여 타겟 시스템으로 전송하여 타겟 시스템 내의 원하는 위치에 저장할 수 있도록 하는 분산 메시징 서버를 통한 데이터 처리 방법, 및 이를 포함하는 분산 메시징 시스템을 제공하는 것이다.
본 발명의 일 실시 예에 따른 분산 메시징 서버를 통한 데이터 처리 방법은 관리 서버가, 모니터링 서버를 통하여 사용자로부터 데이터 수집 방식, 데이터 수집 범위, 및 데이터 처리 방법에 대한 설정을 입력받는 단계, 상기 관리 서버가, 입력된 상기 데이터 수집 방식과 상기 데이터 수집 범위에 대한 설정에 따라, 제1시스템에 설치된 제1에이전트를 설정하는 단계, 설정된 상기 제1에이전트를 통하여 상기 제1시스템에서 수집된 수집데이터가 제1분산 메시징 서버를 통하여 상기 관리 서버로 전송되면, 상기 관리 서버는 상기 입력된 상기 데이터 처리 방법에 대한 설정에 따라 상기 수집데이터를 처리하여, 타겟 정보와 처리결과 데이터를 생성하는 단계 및 상기 관리 서버는, 상기 처리결과 데이터를 상기 제1분산 메시징 서버를 통하여 상기 타겟 정보에 상응하는 제2시스템에 설치된 제2에이전트로 전송하는 단계를 포함할 수 있다.
실시 예에 따라, 상기 데이터 수집 방식은, 데이터베이스 접근 데이터 수집 방식, 메모리 접근 데이터 수집 방식, API(Application Programming Interface) 형태의 데이터 수집 방식, 또는 웹크롤러(web crawler)를 통한 데이터 수집 방식일 수 있다.
실시 예에 따라, 상기 데이터 수집 범위는, 새로운 데이터 범위, 변경된 데이터 범위, 또는 특정 폴더에 저장된 데이터 범위일 수 있다.
실시 예에 따라, 상기 타겟 정보는, 상기 제2시스템에 대한 어드레스 정보 및 상기 제2시스템 내의 목표 데이터 저장 공간에 대한 정보를 포함할 수 있다.
실시 예에 따라, 상기 분산 메시징 서버를 통한 데이터 처리 방법은, 상기 관리 서버가 주기적으로 암호화키를 생성하여 상기 제1에이전트, 상기 제2에이전트, 및 상기 모니터링 서버로 배포하는 단계를 더 포함하며, 상기 제1에이전트는 상기 수집 데이터를 상기 암호화키로 암호화하여 암호화된 수집 데이터를 상기 제1분산 메시징 서버를 통하여 상기 관리 서버로 전송할 수 있다.
실시 예에 따라, 상기 제2시스템에 설치된 제2에이전트로 전송하는 단계는, 상기 관리 서버가, 상기 처리결과 데이터를 제2분산 메시징 서버를 통하여 상기 타겟 정보에 상응하는 제2시스템에 설치된 제2에이전트로 전송할 수 있다.
실시 예에 따라, 상기 제1시스템은 상기 제1분산 메시징 서버와 제1네트워크를 구성하며, 상기 제2시스템은 상기 제2분산 메시징 서버와 제2네트워크를 구성하되, 상기 제1네트워크에 포함된 제1시스템과 상기 제2네트워크에 포함된 상기 제2시스템은 지역적으로 이격되어 있을 수 있다.
실시 예에 따라, 상기 분산 메시징 서버를 통한 데이터 처리 방법은, 상기 관리 서버가, 상기 모니터링 서버를 통한 상기 사용자의 제어 입력에 따라, 상기 제1에이전트 또는 상기 제2에이전트를 통하여 처리되고 있는 특정 프로세스를 제어하거나, 상기 제1에이전트 또는 상기 제2에이전트로 명령을 전달하는 단계를 더 포함할 수 있다.
실시 예에 따라, 상기 프로세스의 제어는, 프로세스의 중지, 프로세스의 중단, 또는 프로세스의 재시작을 위한 제어일 수 있다.
실시 예에 따라, 상기 명령은, 상기 제1에이전트 또는 상기 제2에이전트가 설치된 OS(Operating System)에서 지원되는 명령일 수 있다.
실시 예에 따라, 상기 분산 메시징 서버를 통한 데이터 처리 방법은, 상기 관리 서버가, 상기 사용자로부터 입력된 상기 데이터 수집 방식, 상기 데이터 수집 범위, 및 상기 데이터 처리 방법에 기초하여, 상기 제1분산 메시징 서버를 통하여 전달될 분산 메시지들의 후보 전송 경로별 비용을 계산하고, 계산된 비용에 따라 최소 비용의 전송 경로를 선택하는 단계를 더 포함할 수 있다.
실시 예에 따라, 상기 비용은, 상기 전달될 분산 메시지들의 후보 전송 경로에 따른 총 전송 시간과 메시지 처리량에 기초하여 결정될 수 있다.
실시 예에 따라, 상기 분산 메시징 서버를 통한 데이터 처리 방법은, 상기 사용자로부터 입력된 상기 데이터 수집 방식, 상기 데이터 수집 범위, 및 상기 데이터 처리 방법에 기초하여, 최적의 관리 서버가 할당되는 단계를 더 포함할 수 있다.
실시 예에 따라, 상기 최적의 관리 서버가 할당되는 단계는, 상기 데이터 수집 방식, 상기 데이터 수집 범위, 및 상기 데이터 처리 방법 및, 복수의 관리 서버들 각각의 트래픽 상태에 기초하여, 상기 복수의 관리 서버들 중의 어느 하나의 관리 서버가 최적의 관리 서버로 할당될 수 있다.
본 발명의 실시 예에 따른 관리 서버는, 모니터링 서버를 통하여 사용자로부터 입력된 데이터 수집 방식, 데이터 수집 범위, 및 데이터 처리 방법에 대한 설정을 수신하고, 입력된 상기 데이터 수집 방식과 상기 데이터 수집 범위에 대한 설정에 따라, 제1시스템에 설치된 제1에이전트를 설정하는 에이전트 설정 모듈, 설정된 상기 제1에이전트를 통하여 상기 제1시스템에서 수집된 수집데이터가 제1분산 메시징 서버를 통하여 수신되면, 상기 입력된 상기 데이터 처리 방법에 대한 설정에 따라 상기 수집데이터를 처리하여, 타겟 정보와 처리결과 데이터를 생성하는 데이터 처리 모듈 및 상기 관리 서버는, 상기 처리결과 데이터를 상기 제1분산 메시징 서버를 통하여 상기 타겟 정보에 상응하는 제2시스템에 설치된 제2에이전트로 전송하는 단계를 포함할 수 있다.
본 발명의 실시 예에 따른 방법과 장치에 따르면 데이터를 연동하고자 하는 기존 시스템들 간에 연동 데이터의 수집과 처리에 요구되는 요구사항에 맞추어 사용자는 모니터링 서버를 통하여 손쉽게 데이터의 수집 방식, 데이터의 수집 범위, 데이터의 처리 방법에 대해 설정할 수 있다.
본 발명의 실시 예에 따른 방법과 장치에 따르면 설정 절차와 데이터 수집, 처리, 전송의 전 과정에 분산 메시징 서버를 활용함으로써, 여러 시스템들 간의 데이터 연동을 빠르고 효과적으로 처리할 수 있다.
본 발명의 실시 예에 따른 방법과 장치에 따르면 데이터 연동을 에이전트와 에이전트 간에 수행함으로써 보안성을 유지하면서도 타 회사 시스템과 데이터 연동시 확장성을 가질 수 있다.
본 발명의 상세한 설명에서 인용되는 도면을 보다 충분히 이해하기 위하여 각 도면의 간단한 설명이 제공된다.
도 1은 본 발명의 일 실시 예에 따른 분산 메시징 시스템의 개념도이다.
도 2는 도 1에 도시된 분산 메시징 서버의 일 실시 예에 따른 블록도이다.
도 3은 도 1에 도시된 분산 메시징 시스템의 에이전트 설정 과정에서의 데이터 플로우를 나타낸 도면이다.
도 4는 도 1에 도시된 분산 메시징 시스템 내에서 데이터 수집, 처리, 전송 과정에서의 데이터 플로우를 나타낸 도면이다.
도 5는 도 1에 도시된 관리 서버의 일 실시 예에 따른 블록도이다.
도 6은 본 발명의 다른 실시 예에 따른 분산 메시징 시스템의 개념도이다.
도 7은 도 6에 도시된 분산 메시징 시스템 내에서 데이터 수집, 처리, 전송 과정에서의 데이터 플로우를 나타낸 도면이다.
도 8은 본 발명의 일 실시 예에 따른 분산 메시징 서버를 통한 데이터 처리 방법의 플로우차트이다.
본 발명의 기술적 사상은 다양한 변경을 가할 수 있고 여러 가지 실시 예를 가질 수 있는 바, 특정 실시 예들을 도면에 예시하고 이를 상세히 설명하고자 한다. 그러나, 이는 본 발명의 기술적 사상을 특정한 실시 형태에 대해 한정하려는 것이 아니며, 본 발명의 기술적 사상의 범위에 포함되는 모든 변경, 균등물 내지 대체물을 포함하는 것으로 이해되어야 한다.
본 발명의 기술적 사상을 설명함에 있어서, 관련된 공지 기술에 대한 구체적인 설명이 본 발명의 요지를 불필요하게 흐릴 수 있다고 판단되는 경우 그 상세한 설명을 생략한다. 또한, 본 명세서의 설명 과정에서 이용되는 숫자(예를 들어, 제1, 제2 등)는 하나의 구성요소를 다른 구성요소와 구분하기 위한 식별기호에 불과하다.
또한, 본 명세서에서, 일 구성요소가 다른 구성요소와 "연결된다" 거나 "접속된다" 등으로 언급된 때에는, 상기 일 구성요소가 상기 다른 구성요소와 직접 연결되거나 또는 직접 접속될 수도 있지만, 특별히 반대되는 기재가 존재하지 않는 이상, 중간에 또 다른 구성요소를 매개하여 연결되거나 또는 접속될 수도 있다고 이해되어야 할 것이다.
또한, 본 명세서에 기재된 "~부", "~기", "~자", "~모듈" 등의 용어는 적어도 하나의 기능이나 동작을 처리하는 단위를 의미하며, 이는 프로세서(Processor), 마이크로 프로세서(Micro Processer), 마이크로 컨트롤러(Micro Controller), CPU(Central Processing Unit), GPU(Graphics Processing Unit), APU(Accelerate Processor Unit), DSP(Drive Signal Processor), ASIC(Application Specific Integrated Circuit), FPGA(Field Programmable Gate Array) 등과 같은 하드웨어나 소프트웨어 또는 하드웨어 및 소프트웨어의 결합으로 구현될 수 있으며, 적어도 하나의 기능이나 동작의 처리에 필요한 데이터를 저장하는 메모리(memory)와 결합되는 형태로 구현될 수도 있다.
그리고 본 명세서에서의 구성부들에 대한 구분은 각 구성부가 담당하는 주기능 별로 구분한 것에 불과함을 명확히 하고자 한다. 즉, 이하에서 설명할 2개 이상의 구성부가 하나의 구성부로 합쳐지거나 또는 하나의 구성부가 보다 세분화된 기능별로 2개 이상으로 분화되어 구비될 수도 있다. 그리고 이하에서 설명할 구성부 각각은 자신이 담당하는 주기능 이외에도 다른 구성부가 담당하는 기능 중 일부 또는 전부의 기능을 추가적으로 수행할 수도 있으며, 구성부 각각이 담당하는 주기능 중 일부 기능이 다른 구성부에 의해 전담되어 수행될 수도 있음은 물론이다.
도 1은 본 발명의 일 실시 예에 따른 분산 메시징 시스템의 개념도이다. 도 2는 도 1에 도시된 분산 메시징 서버의 일 실시 예에 따른 블록도이다.
도 1을 참조하면, 본 발명의 일 실시 예에 따른 분산 메시징 시스템(10)은 복수의 에이전트들(100-1~100-5), 분산 메시징 서버(200), 모니터링 서버(250), 및 복수의 관리 서버들(300-1~300-3)을 포함할 수 있다.
도 1에서는 설명의 편의를 위하여 5개의 에이전트들(100-1~100-5)과, 3개의 관리 서버들(300-1~300-3)을 예시적으로 도시하고 있으나, 에이전트들의 개수나 관리 서버들의 개수는 다양한 변경이 가능하다.
복수의 에이전트들(100-1~100-5) 각각은 특정 시스템(미도시) 내에 설치되어 해당 시스템 내에서 데이터를 수집하는 기능을 수행할 수 있다.
실시 예에 따라, 시스템마다 개별적으로 에이전트가 설치되어 있을 수 있다.
다른 실시 예에 따라, 하나의 시스템 내에도 서로 구분된 영역의 데이터를 수집하거나, 서로 다른 방식으로 데이터를 수집하는 복수의 에이전트들이 설치될 수 있다.
또 다른 실시 예에 따라, 하나의 에이전트가 복수의 시스템 내의 데이터를 수집할 수도 있다.
분산 메시징 서버(200)는 발행-구독(publish-subscribe) 모델을 기반으로 동작할 수 있다.
분산 메시징 서버(200)는 복수의 에이전트들(100-1~100-5) 각각으로부터 수집된 데이터를 메시지 형태로 수신하며, 메시지를 분할하여 분산된 형태로 처리 또는 전송할 수 있다.
실시 예에 따라, 분산 메시징 서버(200)는 아파치 카프카(apache kafka)로 구현될 수 있으며, 분산 메시징 서버(200)는 복수의 카프카 서버들로 구성된 카프카 클러스터(kafka cluster)를 의미할 수 있다.
도 2를 함께 참조하면, 분산 메시징 서버(200)는 복수의 주키퍼들(zookeepers, 210-1~210-3)로 구성된 주피커 클러스터와, 복수의 브로커들(broker, 220-1~220-3)로 카프카 서버 클러스터로 구성될 수 있다.
복수의 주키퍼들(210-1~210-3)은 복수의 브로커들(220-1~220-3)을 관리할 수 있으며, 복수의 브로커들(220-1~220-3)을 하나의 클러스터로 코디네이팅(cordinationg)하는 기능을 수행할 수 있다.
실시 예에 따라, 분산 메시징 서버(200) 내에서 복수의 주키퍼들(210-1~210-3) 중에서 어느 하나는 카프카 클러스터의 리더(leader)로 동작할 수 있으며, 나머지 주키퍼들은 팔로워(follower)로 동작할 수 있다. 이 경우 리더 주키퍼에 장애가 생긴 경우, 팔로워 주키퍼가 그 기능을 대체할 수 있다.
복수의 브로커들(220-1~220-3) 각각은 카프카 서버를 의미할 수 있다.
실시 예에 따라, 복수의 브로커들(220-1~220-3) 각각은 분산 메시지들이 전송되는 전송 경로의 일 부분을 구성할 수 있다.
데이터 관리를 위한 기준 단위인 복수의 토픽들(topics)이 분산 메시징 서버(200) 내에서 운영될 수 있으며, 각 토픽은 데이터를 분산 처리하는 단위인 복수의 파티션들(partitions)로 구성될 수 있다.
도 1로 돌아와서, 모니터링 서버(250)는 분산 메시징 서버(200)를 통하여 복수의 에이전트들(100-1~100-5)의 상태 또는 복수의 에이전트들(100-1~100-5)가 설치된 시스템의 상태를 모니터링하거나, 분산 메시징 서버(200) 자체의 상태를 모니터링할 수 있다.
실시 예에 따라, 모니터링 서버(250)는 모니터링을 수행하기 위하여 복수의 관리 서버들(300-1~300-3)과 직접 통신을 수행할 수도 있다.
실시 예에 따라, 모니터링 서버(250)는 복수의 에이전트들(100-1~100-5) 각각이 설치된 시스템의 성능을 모니터링할 수 있다.
실시 예에 따라, 모니터링 서버(250)는 분산 메시징 서버(200)의 상태, 예컨대, 주키퍼(210-1~210-3)와 브로커(220-1~220-3)의 특정 프로세스를 모니터링할 수 있다.
모니터링 서버(250)는 사용자로부터 데이터 수집 방식, 데이터 수집 범위, 및 데이터 처리 방법에 대한 설정을 입력받고, 입력된 설정에 따른 설정 정보를 관리 서버(300)로 전달할 수 있다. 에이전트의 세부적인 설정 과정은 도 3을 참조하여 후술하도록 한다.
복수의 관리 서버들(300-1~300-3) 각각은 모니터링 서버(250)의 모니터링 데이터들을 저장하고, 모니터링 결과에 따라 이상 상황을 관리할 수 있다.
실시 예에 따라, 복수의 관리 서버들(300-1~300-3) 각각은 복수의 에이전트들(100-1~100-5) 각각이 설치된 시스템의 이상 상황(예컨대, CPU 기준 사용량 초과, 메모리 기준 사용량 초과, I/O 기준 사용량 초과, 특정 프로세스 상태 이상 등)에 대응하여, 명령을 생성하여 이상 상황이 발생한 에이전트(100-1~100-5)가 설치된 시스템 측으로 전송할 수 있다.
복수의 관리 서버들(300-1~300-3) 각각은 복수의 에이전트들(100-1~100-5) 각각이 수집한 데이터를 가공 처리, 변환 처리할 수 있다.
복수의 관리 서버들(300-1~300-3) 각각은 가공 처리, 변환 처리된 데이터를 연계된 데이터베이스들(예컨대, redis, Oracle, MS-SQL, My-SQL, Mongo DB, Maria DB 등) 각각의 목적에 맞도록 저장할 수 있다.
복수의 관리 서버들(300-1~300-3) 각각이 수집한 데이터를 처리, 변환하여 전송하는 세부적인 데이터 플로우에 대해서는 도 4와 도 5를 참조하여 후술하도록 한다.
도 3은 도 1에 도시된 분산 메시징 시스템의 에이전트 설정 과정에서의 데이터 플로우를 나타낸 도면이다.
도 1과 도 3을 참조하면, 제1에이전트(100-1)는 제1시스템(110-1)에 설치되고, 제2에이전트(100-2)는 제2시스템(110-2)에 설치된 경우에, 모니터링 서버(250)를 통한 사용자 입력에 따라, 제1에이전트(100-1)와 제2에이전트(100-2)를 설정하기 위한 데이터 플로우가 도시된다. 이 때, 제1시스템(110-1)과 제2시스템(110-1) 각각은 기존에 구축되어 있는 시스템을 폭 넗게 의미할 수 있으며, 레거시 시스템(legacy system)으로 일컬어 질 수 있다.
도 3에서는 설명의 편의를 위하여 도 1에 도시된 복수의 관리 서버들(300-1~300-3) 중에서 제1에이전트(100-1)와 제2에이전트(100-2)의 관리 동작을 실제 수행하는 어느 하나를 관리 서버(300)로 도시하였다.
모니터링 서버(250)를 통해 데이터 수집 방식, 데이터 수집 범위, 및 데이터 처리 방법에 대한 설정이 입력되면, 모니터링 서버(250)는 입력된 설정에 상응하는 설정 정보를 분산 메시징 서버(200)를 통하여 관리 서버(300) 측으로 전송할 수 있다.
관리 서버(300)는 데이터 수집 방식, 데이터 수집 범위, 및 데이터 처리 방법에 대한 설정에 관한 설정 정보를 수신하고, 수신된 설정 정보에 대응하여, 분산 메시징 서버(200)를 통하여 제1시스템(110-1)에 설치된 제1에이전트(100-1)와 제2시스템(110-2)에 설치된 제2에이전트(100-2) 각각을 설정할 수 있다.
실시 예에 따라, 제1에이전트(100-1)가 데이터 수집을 하는 상황이라면, 관리 서버(300)는 제1에이전트(100-1)의 데이터 수집 방식과 데이터 수집 범위를 설정할 수 있다.
실시 예에 따라, 관리 서버(300)는 수신된 설정 정보에 대응하여 후술할 관리 서버(300) 내의 데이터 처리 모듈(도 5의 336)의 데이터 처리 방법에 대한 설정 과정을 수행할 수 있다.
실시 예에 따라, 데이터 수집 방식은 데이터베이스 접근 데이터 수집 방식, 메모리 접근 데이터 수집 방식, API(Application Programming Interface) 형태의 데이터 수집 방식, 또는 웹크롤러(web crawler)를 통한 데이터 수집 방식 등일 수 있다.
실시 예에 따라, 데이터 수집 범위는 새로운 데이터 범위, 변경된 데이터 범위, 또는 특정 폴더에 저장된 데이터 범위일 수 있다.
도 4는 도 1에 도시된 분산 메시징 시스템 내에서 데이터 수집, 처리, 전송 과정에서의 데이터 플로우를 나타낸 도면이다.
도 1, 도 3, 및 도 4를 참조하면, 모니터링 서버(250)를 통해 입력된 설정정보에 따라 설정된 제1에이전트(100-1)를 통해 제1시스템(110-1) 내의 데이터를 수집하고, 수집된 데이터를 관리 서버(300)에서 처리하여, 제2시스템(110-1)에 설치된 제2에이전트(100-2)로 전송하는 과정의 데이터 플로우가 도시된다.
제1에이전트(100-1)는 관리 서버(300)를 통해 설정된 데이터 수집 방식과 데이터 수집 범위에 따라 제1시스템(110-1) 내의 데이터를 수집하고, 수집된 데이터를 분산 메시징 서버(200)를 통해 관리 서버(300) 측으로 전송할 수 있다.
관리 서버(300)는 모니터링 서버(250)를 통해 입력된 설정 정보 중 데이터 처리 방법에 대한 설정에 따라, 수신된 수집데이터를 처리하여 타겟 시스템 정보와 처리결과 데이터를 생성할 수 있다.
실시 예에 따라, 타겟 시스템 정보는 제2시스템(110-2)에 대한 어드레스(address) 정보 및 제2시스템(110-2) 내의 목표 데이터 저장 공간(예컨대, 목표 폴더, 목표 데이터베이스 등)에 대한 정보를 포함할 수 있다.
실시 예에 따라, 처리결과 데이터는 사용자 설정에 따른 데이터 처리 방법에 따라 수집 데이터를 처리(예컨대, 가공 또는 변환)한 결과로 생성된 데이터를 의미할 수 있다.
관리 서버(300)는 처리결과 데이터를 분산 메시징 서버(200)를 통하여 타겟 시스템 정보에 상응하는 제2시스템(110-2)에 설치된 제2에이전트(100-2)로 전송할 수 있다.
실시 예에 따라, 제2에이전트(100-2)는 수신된 처리결과 데이터를 제2시스템(110-2) 내의 목표 데이터 저장 공간(예컨대, 목표 폴더, 목표 데이터베이스 등)에 저장할 수 있다.
도 5는 도 1에 도시된 관리 서버의 일 실시 예에 따른 블록도이다.
도 1 내지 도 5를 참조하면, 관리 서버(300)는 통신 인터페이스(310), 메모리(320), 및 프로세서(330)를 포함할 수 있다.
통신 인터페이스(310)는 관리 서버(300)와 분산 메시징 서버(200) 간의 통신을 인터페이싱할 수 있으며, 인터페이싱 과정에서 송수신 되는 데이터 또는 신호를 처리할 수 있다.
메모리(320)는 관리 서버(300)의 기능 수행을 위해 프로세서(330)의 처리 과정에서 필요한 데이터, 프로세서(330)의 처리 과정 중 또는 처리 완료 후에 생성된 데이터를 저장할 수 있다.
실시 예에 따라, 메모리(320)에는 본 발명의 실시 예에 따른 분산 메시징 서버를 통한 데이터 처리 방법을 수행하기 위한 프로그램 코드를 포함하는 프로그램을 저장할 수 있으며, 메모리(320)는 프로세서(330)와 결합되어 상기 프로그램을 실행시킬 수 있다.
메모리(320)는 그 용어에도 불구하고 데이터를 저장할 수 있는 다양한 수단, 예컨대 데이터베이스 등으로 구현될 수 있다.
프로세서(330)는 에이전트 설정 모듈(332), 전송경로 설정 모듈(334), 데이터 처리 모듈(336), 및 암호화 모듈(338)을 포함할 수 있다.
실시 예에 따라, 에이전트 설정 모듈(332), 전송경로 설정 모듈(334), 데이터 처리 모듈(336), 및 암호화 모듈(338)은 프로그램 코드와 상기 프로그램 코드를 수행할 수 있는 하드웨어 리소스(resource)의 논리적 단위 또는 집합으로 구분될 수 있으며, 각각이 반드시 물리적으로 연결된 코드를 의미하거나 한 종류의 하드웨어를 의미하는 것은 아니다. 또한, 설정 모듈(332), 전송경로 설정 모듈(334), 데이터 처리 모듈(336), 및 암호화 모듈(338)은 기능 및 논리적으로 분리될 수 있음을 나타내기 위하여 구분된 것이며, 반드시 구성들 각각이 별도의 물리적 장치로 구분되거나 별도의 코드로 작성됨을 의미하는 것은 아니다.
에이전트 설정 모듈(332)은 모니터링 서버(250)를 통하여 사용자로부터 입력된 데이터 수집 방식, 데이터 수집 범위, 및 데이터 처리 방법에 대한 설정에 상응하는 설정 정보를 수신하고, 수신된 설정 정보에 대응하여 각 에이전트(예컨대, 100-1, 100-2)를 설정하기 위한 명령을 생성할 수 있다.
실시 예에 따라, 에이전트 설정 모듈(332)에서 생성하는 명령은, 데이터 수집 방식과 데이터 수집 범위에 대한 설정에 상응하는 명령일 수 있다.
생성된 명령은 분산 메시징 서버(200)를 통하여 각 에이전트(예컨대, 100-1, 100-2)로 전송될 수 있다.
에이전트 설정 모듈(332)은 데이터 수집 방식, 데이터 수집 범위, 및 데이터 처리 방법 이외에도, 모니터링 서버(250)를 통하여 사용자로부터 입력된 제어 입력에 따라, 에이전트(예컨대, 100-1, 100-2)를 통해 처리되고 있는 특정 프로세스를 제어하거나, 에이전트(예컨대, 100-1, 100-2)로 명령을 전달할 수 있다. 예컨대, 상기 프로세스의 제어는, 프로세스의 중지, 프로세스의 중단, 또는 프로세스의 재시작을 위한 제어일 수 있다. 예컨대, 상기 명령은 에이전트(예컨대, 100-1, 100-2)가 설치된 OS(Operating System)에서 지원되는 명령일 수 있다.
전송경로 설정 모듈(334)은 사용자로부터 입력된 데이터 수집 방식, 데이터 수집 범위, 및 데이터 처리 방법에 기초하여 분산 메시징 서버(200)를 통하여 전달될 분산 메시지들의 후보 전송 경로에 따른 비용을 계산하고, 계산된 비용에 따라 전송 경로를 선택할 수 있다.
실시 예에 따라, 상기 비용은, 전달될 분산 메시지들의 후보 전송 경로에 따른 총 전송 시간과 요구되는 메시지 처리량에 기초하여 결정될 수 있다. 예컨대, 후보 전송 경로에 따른 총 전송 시간이 길어질수록 비용은 커지고, 요구되는 메시지 처리량이 커질수록 비용도 커질 수 있다. 전송경로 설정 모듈(334)은 비용이 최소인 후보 전송 경로를 실제 분산 메시지를 전송할 전송 경로로 선택할 수 있다.
실시 예에 따라, 상기 전송 경로에는 분산 메시징 서버(200) 내에서 메시지 전송을 담당할 브로커(예컨대, 220-1, 220-2, 또는 220-3)가 포함될 수 있다.
전송경로 설정 모듈(334)은 사용자로부터 입력된 데이터 수집 방식, 데이터 수집 범위, 및 데이터 처리 방법에 기초하여, 최적의 관리 서버를 할당하도록 설정할 수도 있다. 실시 예에 따라, 최적의 관리 서버의 최종적인 할당은 분산 메시징 서버(200) 내의 주키퍼 클러스터(210-1~210-3)를 통해서 수행될 수도 있다. 이 경우, 선택된 전송 경로에는 데이터 처리를 담당할 관리 서버(예컨대, 300-1, 300-2, 또는 330-3)가 포함될 수 있다.
실시 예에 따라, 전송경로 설정 모듈(334)은 사용자로부터 입력된 데이터 수집 방식, 데이터 수집 범위, 및 데이터 처리 방법과, 복수의 관리 서버들(300-1~300-3)의 트래픽에 기초하여, 최적의 관리 서버를 할당하도록 설정할 수도 있다.
데이터 처리 모듈(336)은 사용자로부터 입력된 데이터 처리 방법에 기초하여, 에이전트(예컨대, 100-1)에 의해 수집된 데이터를 처리할 수 있다.
실시 예에 따라, 데이터 처리 모듈(336)은 시퀀스를 가지는 프로세스를 통해 데이터를 가공할 수 있다.
실시 예에 따라, 데이터 처리 모듈(336)은 수집 데이터를 처리하여 타 시스템(예컨대, 제2시스템(110-2))의 API(Application Programming Interface) 파라미터로 변환할 수 있다.
실시 예에 따라, 데이터 처리 모듈(336)은 수집 데이터를 처리하여 타 시스템(예컨대, 제2시스템(110-2))의 인터페이스에 연동되도록 변환할 수 있다.
실시 예에 따라, 데이터 처리 모듈(336)은 수집 데이터를 처리하여 분석 데이터로 변환할 수 있다.
암호화 모듈(338)은 주기적으로 암호화키를 생성하여 각 에이전트(예컨대, 100-1, 100-2)와 모니터링 서버(250)로 배포할 수 있다. 이 경우, 데이터를 수집하는 측의 에이전트(예컨대, 제1에이전트(100-1))는 배포받은 암호화키로 수집 데이터를 암호화하여 암호화된 데이터를 분산 메시징 서버(200)를 통하여 관리 서버(300) 측으로 전송할 수 있다.
실시 예에 따라, 암호화 모듈(338)이 배포하는 암호화키는 AES(Advanced Encryption Standard)에 따른 암호화키일 수 있다.
도 6은 본 발명의 다른 실시 예에 따른 분산 메시징 시스템의 개념도이다. 도 7은 도 6에 도시된 분산 메시징 시스템 내에서 데이터 수집, 처리, 전송 과정에서의 데이터 플로우를 나타낸 도면이다.
도 6을 참조하면 분산 메시징 시스템(10A)은 복수의 네트워크(NET1, NET#2)로 구성된 시스템이라는 점에서 도 1의 분산 메시징 시스템(10)과 차이가 있다.
도 6에서는 설명의 편의를 위하여 네트워크별로 5개의 에이전트들과, 1개의 관리 서버를 포함하는 경우를 예시적으로 도시하고 있으나, 에이전트들의 개수나 관리 서버들의 개수는 다양한 변경이 가능하다.
제1네트워크(NET#1)와 제2네트워크(NET#2)는 서로 지역적으로 이격된 위치에서 망을 구성될 수 있다.
이 경우, 제1네트워크(NET#1)에 포함된 에이전트들(100A-1~100A-5)은 제1분산 메시징 서버(200A-1)를 통하여 상호 간에 통신하거나, 제1분산 메시징 서버(200A-1)를 통하여 제1관리 서버(300A-1)와 통신할 수 있다. 제2네트워크(NET#2)에 포함된 에이전트들(100A-6~100A-10)은 제2분산 메시징 서버(200A-2)를 통하여 상호 간에 통신하거나, 제2분산 메시징 서버(200A-2)를 통하여 제2관리 서버(300A-2)와 통신할 수 있다.
제1네트워크(NET#1)에 포함된 에이전트들(100A-1~100A-5)와 제2네트워크(NET#2)에 포함된 에이전트들(100A-6~100A-10) 간에 데이터 송수신이 필요한 경우, 제1관리 서버(300A-1)와 제2분산 메시징 서버(200A-2)와의 통신 또는 제2관리 서버(300A-2)와 제1분산 메시징 서버(200A-1)와의 통신을 통하여 데이터가 전달될 수 있다.
도 7을 함께 참조하면, 제1네트워크(NET#1)에 포함된 제1에이전트(100A-1)가 설치된 제1시스템(100A-1)에서 수집된 데이터가, 제2네트워크(NET#2)에 포함된 제6에이전트(100A-6)가 설치된 제2시스템(100A-2)으로 전송되는 경우를 예시적으로 도시하고 있다. 이 때, 제1시스템(110A-1)과 제2시스템(110A-1) 각각은 기존에 구축되어 있는 시스템을 폭 넗게 의미할 수 있으며, 레거시 시스템(legacy system)으로 일컬어 질 수 있다.
이 경우, 제1시스템(100A-1)은 제1분산 메시징 서버(200A-1)와 제1네트워크(NET#1)를 구성하고, 제2시스템(100A-2)은 제2분산 메시징 서버(200A-2)와 제2네트워크(NET#2)를 구성할 수 있으며, 제1시스템(100A-1)과 제2시스템(100A-2)은 지역적으로 이격 될 수 있다.
이 경우, 제1에이전트(100A-1)는 제1시스템(100A-1) 내의 데이터를 수집하여, 수집 데이터를 제1분산 메시징 서버(200A-1)를 통하여 제1관리 서버(300A-1)로 전송할 수 있다. 제1관리 서버(300A-1)는 수집 데이터를 사용자에 의해 입력된 데이터 처리 방법에 따라 처리하고, 처리 결과 데이터를 제2분산 메시징 서버(200A-2)를 통하여 제2시스템(100A-2)의 제6에이전트(100A-6) 측으로 전송할 수 있다.
도 8은 본 발명의 일 실시 예에 따른 분산 메시징 서버를 통한 데이터 처리 방법의 플로우차트이다.
도 1 내지 도 8을 참조하면, 본 발명의 실시 예에 따른 분산 메시징 서버를 통한 데이터 처리 방법은, 모니터링 서버(예컨대, 250, 250A-1, 250A-2)를 통해 사용자로부터 데이터 수집 방식, 데이터 수집 범위, 및 데이터 처리 방법에 대한 설정을 입력받을 수 있다(S10).
본 발명의 실시 예에 따른 분산 메시징 서버를 통한 데이터 처리 방법은, S10 단계를 통하여 입력된 데이터 수집 방식과 데이터 처리 범위에 대한 설정에 따라, 제1시스템(예컨대, 110-1, 110A-1)에 설치된 제1에이전트(예컨대, 100-1, 100A-1)를 설정할 수 있다(S20).
본 발명의 실시 예에 따른 분산 메시징 서버를 통한 데이터 처리 방법은, S20 단계에서 설정된 제1에이전트(예컨대, 100-1, 100A-1)를 통하여 제1시스템(예컨대, 110-1, 110A-1)에서 수집된 수집 데이터를 제1분산 메시징 서버(예컨대, 200, 200A-1)를 통하여 수신할 수 있다(S30).
본 발명의 실시 예에 따른 분산 메시징 서버를 통한 데이터 처리 방법은, S10 단계에서 입력된 데이터 처리 방법에 대한 설정에 따라 S30 단계에서 수신된 수집 데이터를 처리하여 타겟 시스템 정보와 처리결과 데이터를 생성할 수 있다(S40).
본 발명의 실시 예에 따른 분산 메시징 서버를 통한 데이터 처리 방법은, S40 단계에서 생성된 처리결과 데이터를 제1분산 메시징 서버(예컨대, 200, 200A-1)를 통하여 제2시스템(예컨대, 110-2, 110A-2)의 제2에이전트(예컨대, 100-2, 100A-6)로 전송할 수 있다(S50).
이상, 본 발명을 바람직한 실시 예를 들어 상세하게 설명하였으나, 본 발명은 상기 실시 예에 한정되지 않고, 본 발명의 기술적 사상 및 범위 내에서 당 분야에서 통상의 지식을 가진 자에 의하여 여러가지 변형 및 변경이 가능하다.
Claims (15)
- 관리 서버가, 모니터링 서버를 통하여 사용자로부터 데이터 수집 방식, 데이터 수집 범위, 및 데이터 처리 방법에 대한 설정을 입력받는 단계;상기 관리 서버가, 입력된 상기 데이터 수집 방식과 상기 데이터 수집 범위에 대한 설정에 따라, 제1시스템에 설치된 제1에이전트를 설정하는 단계;설정된 상기 제1에이전트를 통하여 상기 제1시스템에서 수집된 수집데이터가 제1분산 메시징 서버를 통하여 상기 관리 서버로 전송되면, 상기 관리 서버가 상기 입력된 상기 데이터 처리 방법에 대한 설정에 따라 상기 수집데이터를 처리하여, 타겟 정보와 처리결과 데이터를 생성하는 단계; 및상기 관리 서버가, 상기 처리결과 데이터를 상기 제1분산 메시징 서버를 통하여 상기 타겟 정보에 상응하는 제2시스템에 설치된 제2에이전트로 전송하는 단계를 포함하는, 분산 메시징 서버를 통한 데이터 처리 방법.
- 제1항에 있어서,상기 데이터 수집 방식은,데이터베이스 접근 데이터 수집 방식, 메모리 접근 데이터 수집 방식, API(Application Programming Interface) 형태의 데이터 수집 방식, 또는 웹크롤러(web crawler)를 통한 데이터 수집 방식인, 분산 메시징 서버를 통한 데이터 처리 방법.
- 제1항에 있어서,상기 데이터 수집 범위는,새로운 데이터 범위, 변경된 데이터 범위, 또는 특정 폴더에 저장된 데이터 범위인, 분산 메시징 서버를 통한 데이터 처리 방법.
- 제1항에 있어서,상기 타겟 정보는,상기 제2시스템에 대한 어드레스 정보 및 상기 제2시스템 내의 목표 데이터 저장 공간에 대한 정보를 포함하는, 분산 메시징 서버를 통한 데이터 처리 방법.
- 제1항에 있어서,상기 분산 메시징 서버를 통한 데이터 처리 방법은,상기 관리 서버가 주기적으로 암호화키를 생성하여 상기 제1에이전트, 상기 제2에이전트, 및 상기 모니터링 서버로 배포하는 단계를 더 포함하며,상기 제1에이전트는 상기 수집 데이터를 상기 암호화키로 암호화하여 암호화된 수집 데이터를 상기 제1분산 메시징 서버를 통하여 상기 관리 서버로 전송하는, 분산 메시징 서버를 통한 데이터 처리 방법.
- 제1항에 있어서,상기 제2시스템에 설치된 제2에이전트로 전송하는 단계는,상기 관리 서버가, 상기 처리결과 데이터를 제2분산 메시징 서버를 통하여 상기 타겟 정보에 상응하는 제2시스템에 설치된 제2에이전트로 전송하는, 분산 메시징 서버를 통한 데이터 처리 방법.
- 제1항에 있어서,상기 제1시스템은 상기 제1분산 메시징 서버와 제1네트워크를 구성하며, 상기 제2시스템은 상기 제2분산 메시징 서버와 제2네트워크를 구성하되,상기 제1네트워크에 포함된 제1시스템과 상기 제2네트워크에 포함된 상기 제2시스템은 지역적으로 이격되어 있는, 분산 메시징 서버를 통한 데이터 처리 방법.
- 제1항에 있어서,상기 분산 메시징 서버를 통한 데이터 처리 방법은,상기 관리 서버가, 상기 모니터링 서버를 통한 상기 사용자의 제어 입력에 따라, 상기 제1에이전트 또는 상기 제2에이전트를 통하여 처리되고 있는 특정 프로세스를 제어하거나, 상기 제1에이전트 또는 상기 제2에이전트로 명령을 전달하는 단계를 더 포함하는, 분산 메시징 서버를 통한 데이터 처리 방법.
- 제8항에 있어서,상기 프로세스의 제어는,프로세스의 중지, 프로세스의 중단, 또는 프로세스의 재시작을 위한 제어인, 분산 메시징 서버를 통한 데이터 처리 방법.
- 제8항에 있어서,상기 명령은,상기 제1에이전트 또는 상기 제2에이전트가 설치된 OS(Operating System)에서 지원되는 명령인, 분산 메시징 서버를 통한 데이터 처리 방법.
- 제1항에 있어서,상기 분산 메시징 서버를 통한 데이터 처리 방법은,상기 관리 서버가, 상기 사용자로부터 입력된 상기 데이터 수집 방식, 상기 데이터 수집 범위, 및 상기 데이터 처리 방법에 기초하여, 상기 제1분산 메시징 서버를 통하여 전달될 분산 메시지들의 후보 전송 경로별 비용을 계산하고, 계산된 비용에 따라 최소 비용의 전송 경로를 선택하는 단계를 더 포함하는, 분산 메시징 서버를 통한 데이터 처리 방법.
- 제11항에 있어서,상기 비용은,상기 전달될 분산 메시지들의 후보 전송 경로에 따른 총 전송 시간과 메시지 처리량에 기초하여 결정되는, 분산 메시징 서버를 통한 데이터 처리 방법.
- 제1항에 있어서,상기 분산 메시징 서버를 통한 데이터 처리 방법은,상기 사용자로부터 입력된 상기 데이터 수집 방식, 상기 데이터 수집 범위, 및 상기 데이터 처리 방법에 기초하여, 최적의 관리 서버가 할당되는 단계를 더 포함하는, 분산 메시징 서버를 통한 데이터 처리 방법.
- 제13항에 있어서,상기 최적의 관리 서버가 할당되는 단계는,상기 데이터 수집 방식, 상기 데이터 수집 범위, 및 상기 데이터 처리 방법 및, 복수의 관리 서버들 각각의 트래픽 상태에 기초하여, 상기 복수의 관리 서버들 중의 어느 하나의 관리 서버가 최적의 관리 서버로 할당되는, 분산 메시징 서버를 통한 데이터 처리 방법.
- 모니터링 서버를 통하여 사용자로부터 입력된 데이터 수집 방식, 데이터 수집 범위, 및 데이터 처리 방법에 대한 설정을 수신하고, 입력된 상기 데이터 수집 방식과 상기 데이터 수집 범위에 대한 설정에 따라, 제1시스템에 설치된 제1에이전트를 설정하는 에이전트 설정 모듈;설정된 상기 제1에이전트를 통하여 상기 제1시스템에서 수집된 수집데이터가 제1분산 메시징 서버를 통하여 수신되면, 상기 입력된 상기 데이터 처리 방법에 대한 설정에 따라 상기 수집데이터를 처리하여, 타겟 정보와 처리결과 데이터를 생성하는 데이터 처리 모듈; 및상기 처리결과 데이터를 상기 제1분산 메시징 서버를 통하여 상기 타겟 정보에 상응하는 제2시스템에 설치된 제2에이전트로 전송하는 단계를 포함하는, 관리 서버.
Applications Claiming Priority (4)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR10-2022-0111610 | 2022-09-02 | ||
KR20220111610 | 2022-09-02 | ||
KR1020220131450A KR102553672B1 (ko) | 2022-10-13 | 2022-10-13 | 분산 메시징 서버를 통한 데이터 처리 방법, 및 이를 포함하는 분산 메시징 시스템 |
KR10-2022-0131450 | 2022-10-13 |
Publications (1)
Publication Number | Publication Date |
---|---|
WO2024048858A1 true WO2024048858A1 (ko) | 2024-03-07 |
Family
ID=90098088
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
PCT/KR2022/019786 WO2024048858A1 (ko) | 2022-09-02 | 2022-12-07 | 분산 메시징 서버를 통한 데이터 처리 방법, 및 이를 포함하는 분산 메시징 시스템 |
Country Status (1)
Country | Link |
---|---|
WO (1) | WO2024048858A1 (ko) |
Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2003049368A2 (en) * | 2001-12-03 | 2003-06-12 | Skinkers Limited | Message processing system |
KR20040106681A (ko) * | 2003-06-11 | 2004-12-18 | 이범우 | 이동 통신기기의 메시지 송수신 서비스를 이용한 정보제공시스템 및 정보제공 방법 |
KR20090052882A (ko) * | 2006-08-18 | 2009-05-26 | 아카마이 테크놀로지스, 인크. | 분산 네트워크에서의 데이터 수집 방법 |
US10313257B1 (en) * | 2014-06-12 | 2019-06-04 | Tripwire, Inc. | Agent message delivery fairness |
US10587551B1 (en) * | 2017-07-13 | 2020-03-10 | Whatsapp Inc. | Techniques for multi-agent messaging |
KR102417742B1 (ko) * | 2021-09-08 | 2022-07-06 | 비엠텍시스템 주식회사 | Api 데이터 수집시스템 및 그에 관한 방법 |
-
2022
- 2022-12-07 WO PCT/KR2022/019786 patent/WO2024048858A1/ko unknown
Patent Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2003049368A2 (en) * | 2001-12-03 | 2003-06-12 | Skinkers Limited | Message processing system |
KR20040106681A (ko) * | 2003-06-11 | 2004-12-18 | 이범우 | 이동 통신기기의 메시지 송수신 서비스를 이용한 정보제공시스템 및 정보제공 방법 |
KR20090052882A (ko) * | 2006-08-18 | 2009-05-26 | 아카마이 테크놀로지스, 인크. | 분산 네트워크에서의 데이터 수집 방법 |
US10313257B1 (en) * | 2014-06-12 | 2019-06-04 | Tripwire, Inc. | Agent message delivery fairness |
US10587551B1 (en) * | 2017-07-13 | 2020-03-10 | Whatsapp Inc. | Techniques for multi-agent messaging |
KR102417742B1 (ko) * | 2021-09-08 | 2022-07-06 | 비엠텍시스템 주식회사 | Api 데이터 수집시스템 및 그에 관한 방법 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP3640187B2 (ja) | マルチプロセッサシステムの障害処理方法、マルチプロセッサシステム及びノード | |
WO2020162680A1 (ko) | 마이크로서비스 시스템 및 방법 | |
CN101361046B (zh) | 远程复原无响应计算系统 | |
WO2014038835A1 (ko) | 네트워크 백업 장치 및 이를 구비한 네트워크 시스템 | |
CN111258780A (zh) | 基于前置机进行数据交换的系统及方法 | |
WO2018135742A1 (ko) | 중앙 집중식 제어 구조 서버를 갖는 포그 컴퓨팅 운용을 위한 시스템 및 그의 제어 방법 | |
WO2013094847A1 (ko) | 클라우드 시스템에서의 웹 방화벽 서비스 장치 및 방법 | |
WO2013176431A1 (ko) | 단말을 서버에 할당하고 단말로의 효율적인 메시징을 위한 시스템 및 방법 | |
WO2024048858A1 (ko) | 분산 메시징 서버를 통한 데이터 처리 방법, 및 이를 포함하는 분산 메시징 시스템 | |
WO2021215756A1 (ko) | 네트워크 슬라이스 자원 할당 및 시각화 방법 | |
WO2016024807A1 (ko) | 동적 멀티 도메인 환경에서 가상 회선 보호를 위한 시스템 및 방법 | |
WO2014010794A1 (ko) | 셀 재구성에 따른 무선 망 제공 시스템 및 방법 | |
WO2001063850A1 (en) | Multiple network fault tolerance via redundant network control | |
WO2013069886A1 (en) | Facilities control system and operating method of the same | |
WO2020222407A1 (ko) | 머신 러닝 플랫폼 관리 시스템 및 방법 | |
WO2021242000A1 (ko) | 데이터 적재 및 처리 시스템 및 그 방법 | |
KR102553672B1 (ko) | 분산 메시징 서버를 통한 데이터 처리 방법, 및 이를 포함하는 분산 메시징 시스템 | |
WO2019035499A1 (ko) | 사용자 수요 기반의 saas 결합 서비스 플랫폼에서 자동 스케일링을 이용한 saas 결합 서비스 처리 시스템 및 방법 | |
WO2012157939A2 (ko) | 망 부하 감소를 위한 푸시 서비스 제공 시스템 및 방법 | |
WO2016028014A1 (ko) | 전력설비 고유번호 관리 장치 및 방법 | |
CN109901954B (zh) | 存储设备和资源管理方法 | |
JP4303791B2 (ja) | 容易に構成可能な監視制御を備える電気通信交換システム | |
WO2022124467A1 (ko) | 오케스트레이터 환경에서의 프로세스 마이그레이션을 위한 컨테이너 관리 장치 및 관리 방법 | |
WO2022102858A1 (ko) | 방송 통합 모니터링 시스템 및 그 방법 | |
WO2021010632A1 (ko) | Gnb 재할당을 통한 고가용성 서비스 제공 방법 및 이를 위한 장치 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
121 | Ep: the epo has been informed by wipo that ep was designated in this application |
Ref document number: 22957535 Country of ref document: EP Kind code of ref document: A1 |