KR102125354B1 - Supervisor system for managing streaming bigdata processing module using micro service architecture and method thereof - Google Patents
Supervisor system for managing streaming bigdata processing module using micro service architecture and method thereof Download PDFInfo
- Publication number
- KR102125354B1 KR102125354B1 KR1020180165524A KR20180165524A KR102125354B1 KR 102125354 B1 KR102125354 B1 KR 102125354B1 KR 1020180165524 A KR1020180165524 A KR 1020180165524A KR 20180165524 A KR20180165524 A KR 20180165524A KR 102125354 B1 KR102125354 B1 KR 102125354B1
- Authority
- KR
- South Korea
- Prior art keywords
- supervisor
- module
- micro
- micro service
- microservice
- Prior art date
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/30—Monitoring
- G06F11/3003—Monitoring arrangements specially adapted to the computing system or computing system component being monitored
- G06F11/3006—Monitoring arrangements specially adapted to the computing system or computing system component being monitored where the computing system is distributed, e.g. networked systems, clusters, multiprocessor systems
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F15/00—Digital computers in general; Data processing equipment in general
- G06F15/16—Combinations of two or more digital computers each having at least an arithmetic unit, a program unit and a register, e.g. for a simultaneous processing of several programs
- G06F15/163—Interprocessor communication
Abstract
Description
본 발명은 빅테이터 처리 시스템에 관한 것으로, 특히 마이크로 서비스 아키텍처를 이용한 빅데이터 처리 시스템에 관한 것이다.The present invention relates to a big data processing system, and more particularly to a big data processing system using a micro service architecture.
빅데이터는 단순히 많은 정도가 아니라 기존 데이터 처리 방식으로 처리가 불가능할 정도로 어마어마한 양의 데이터를 의미한다. 따라서 종래의 데이터 처리 방식과는 다른 처리 방식이 필요하다. 또한 실시간으로 빅데이터를 분석하고 비즈니스에 활용하려는 시장의 요구가 커짐에 따라 빅데이터의 처리 시스템의 실시간 처리 능력 또한 요구되고 있다.Big data is not just a lot, but a huge amount of data that cannot be processed using existing data processing methods. Therefore, a processing method different from the conventional data processing method is required. In addition, as the market demand for analyzing and using big data in real time increases, real-time processing capability of the big data processing system is also required.
빅데이터의 실시간 처리를 위해서 하나의 큰 어플리케이션을 여러 개의 작은 어플리케이션 모듈로 분리하여 처리하는 마이크로 서비스 아키텍처(MSA: Micro Service Architecture)에 대한 관심도 높아지고 있다. 마이크로 서비스 아키텍처는 작은(Micro) 어플리케이션의 조합에 의해 서비스를 구현함으로써 복잡도를 낮출 수 있고 어플리케이션 단위의 변경 및 조합이 용이한 장점이 있다. 마이크로 서비스 아키텍처의 적용으로 분리된 어플리케이션 모듈 간의 데이터 송수신은 스트리밍 방식을 이용하여 실시간 빅데이터 처리 시스템을 구성할 수 있다.For real-time processing of big data, interest in micro service architecture (MSA) that separates and processes one large application into several small application modules is also increasing. The micro service architecture can reduce complexity by implementing a service by a combination of micro (micro) applications, and has an advantage of easy change and combination of application units. With the application of micro-service architecture, data transmission/reception between separated application modules can be constructed in real-time big data processing system using streaming method.
데이터 스트리밍 방식의 실시간 빅데이터 처리 시스템은 스트리밍 데이터의 처리 안정성이 보장되어야 한다. 예를 들어 동영상 같은 미디어 콘텐츠의 스트리밍은 스트리밍 중 데이터 손실이 발생해도 순간적인 픽셀 뭉개짐이 발생하는 정도에 그쳐 전체 미디어 콘텐츠를 소비하는 데 큰 문제가 되지는 않는다. 하지만 비즈니스 서비스를 제공하기 위해 사용되는 빅데이터 처리 시스템은 데이터 손실로 인한 잘못된 분석이나 데이터 처리 에러 발생으로 시스템이 중지된다면 비즈니스 서비스에는 치명적인 상황이 될 수 있다.The real-time big data processing system of the data streaming method must guarantee the processing stability of the streaming data. For example, streaming of media content such as a video does not become a major problem in consuming the entire media content as it is only a moment when pixel loss occurs during streaming. However, a big data processing system used to provide a business service can be a fatal situation for a business service if the system is stopped due to an incorrect analysis or data processing error due to data loss.
종래기술 중 하나인 대한민국 등록특허 제10-1563064호 발명은 빅데이터를 분산하여 저장하고 처리하는 시스템을 개시하고 있으나 오류 상황에 대한 대책은 제시하지 못하고 있다.Republic of Korea Patent Registration No. 10-1563064, which is one of the prior art, discloses a system for distributing, storing, and processing big data, but has not provided a countermeasure for an error situation.
본 발명의 발명자들은 이처럼 빅데이터를 실시간으로 처리하면서 발생하는 오류에 효과적으로 대응할 수 있는 빅데이터 처리 시스템과 방법을 개발하기 위해 노력해 왔고, 마이크로 서비스 모듈을 이용하여 모듈 별 독립적으로 발생한 에러를 처리함으로써 전체 시스템에 영향을 미치지 않는 빅데이터 처리 시스템을 완성하기에 이르렀다.The inventors of the present invention have tried to develop a big data processing system and method capable of effectively responding to errors occurring while processing big data in real time, and by using micro service modules to process errors generated independently for each module as a whole. It has come to complete the big data processing system that does not affect the system.
본 발명의 목적은 마이크로 서비스 아키텍처를 적용한 데이터 스트리밍 기반의 빅데이터 처리 시스템에서 마이크로 서비스 모듈 단위의 에러 대응 방안과 전략을 마련함으로써 전체 시스템의 안정성을 확보하는 데 있다.An object of the present invention is to secure the stability of the entire system by preparing an error countermeasure and a strategy for each microservice module in a data streaming-based big data processing system using a microservice architecture.
마이크로 서비스 모듈 단위의 에러 대응을 위해서는 전체 마이크로 서비스 모듈의 데이터 프로세싱 상황을 감독하는 수퍼바이저(Supervisor) 시스템을 제공하는 것이 본 발명의 또 다른 목적이다.Another object of the present invention is to provide a supervisor system that supervises the data processing situation of the entire micro service module in order to respond to errors in the micro service module unit.
한편, 본 발명의 명시되지 않은 또 다른 목적들은 하기의 상세한 설명 및 그 효과로부터 용이하게 추론할 수 있는 범위 내에서 추가적으로 고려될 것이다.On the other hand, other objects not specified in the present invention will be additionally considered within a scope that can be easily deduced from the following detailed description and its effects.
본 발명은 스트리밍 빅데이터 처리 모듈 관리를 위한 수퍼바이저 시스템에 관한 것으로, The present invention relates to a supervisor system for managing a streaming big data processing module,
본 발명의 수퍼바이저 시스템은, 복수의 마이크로 서비스 모듈과, 상기 복수의 마이크로 서비스 모듈을 관리하는 수퍼바이저(Supervisor)를 포함하되, The supervisor system of the present invention includes a plurality of micro service modules and a supervisor that manages the plurality of micro service modules,
상기 수퍼바이저는 상기 마이크로 서비스 모듈에서 발생하는 에러를 감지하고, 상기 에러의 종류에 따라 미리 정의된 대응 방안과 대응 전략을 적용하여 발생한 에러를 처리하는 것을 특징으로 한다.The supervisor detects an error occurring in the microservice module and processes the error generated by applying a predefined countermeasure and a corresponding strategy according to the type of the error.
상기 대응 방안은 계속(resume), 정지(stop), 재시작(restart) 및 확대(escalate)를 포함한다.The countermeasures include resume, stop, restart and escalate.
또한, 상기 대응 전략은 에러가 발생한 마이크로 서비스 모듈에만 적용하는 하나만 적용 전략(OneForOne)과 상기 수퍼바이저가 관리하는 모든 마이크로 서비스 모듈에 적용하는 모두 적용 전략(AllForOne)을 포함하는 것을 특징으로 한다.In addition, the response strategy is characterized in that it includes only one application strategy (OneForOne) applied to only the microservice module in which the error occurred and all application strategies (AllForOne) applied to all microservice modules managed by the supervisor.
바람직하게는 상기 마이크로 서비스 모듈 각각과 대응하는 액터 레퍼런스(ActorRef)를 더 포함하고, 상기 수퍼바이저와 마이크로 서비스 모듈간 혹은 상기 각 마이크로 서비스 모듈간 통신은 상기 액터 레퍼런스를 통해 이루어지는 것이 좋다.Preferably, the microservice module further includes an actor reference (ActorRef) corresponding to each of the microservice modules, and communication between the supervisor and the microservice module or between the microservice modules is preferably performed through the actor reference.
위와 같은 본 발명의 과제해결수단에 의해서 본 발명은 각각의 마이크로 서비스 모듈을 독립적으로 관리할 수 있는 수퍼바이저 시스템에 의해 다수의 모듈을 효과적으로 관리할 수 있는 효과가 있고, 독립된 마이크로 서비스 모듈의 에러가 다른 모듈에 전달되지 않아 안정된 시스템을 운영할 수 있는 장점이 있다.By the above-described problem solving means of the present invention, the present invention has an effect of effectively managing multiple modules by a supervisor system capable of independently managing each micro service module, and errors of independent micro service modules are different. There is an advantage that a stable system can be operated because it is not transmitted to the module.
한편, 여기에서 명시적으로 언급되지 않은 효과라 하더라도, 본 발명의 기술적 특징에 의해 기대되는 이하의 명세서에서 기재된 효과 및 그 잠정적인 효과는 본 발명의 명세서에 기재된 것과 같이 취급됨을 첨언한다.On the other hand, even if the effects are not explicitly mentioned herein, it is noted that the effects described in the following specification expected by the technical features of the present invention and the potential effects thereof are treated as described in the specification of the present invention.
도 1은 본 발명의 바람직한 어느 실시예에 따른 마이크로 서비스 아키텍처를 사용하는 수퍼바이저 시스템의 개략적인 전체 구조도이다.
도 2는 본 발명의 바람직한 어느 실시예에 따른 수퍼바이저 시스템이 수행되는 컴퓨터 시스템의 한 예를 나타낸다.
도 3은 본 발명의 바람직한 어느 실시예에 따른 에러 발생시의 대응 구조의 개략적인 흐름도이다.
도 4는 본 발명의 바람직한 어느 실시예에 따라 서비스 모듈을 재시작하는 경우의 흐름도이다.
도 5는 본 발명의 바람직한 어느 실시예에 따라 전체 모듈을 재시작하는 경우의 흐름도이다.
도 6은 본 발명의 바람직한 어느 실시예에 따라 상위 수퍼바이저로 수행을 확장하는 경우의 흐름도이다.
도 7은 본 발명의 바람직한 어느 실시예에 따라 자식(children) 모듈이 있는 경우의 에러 처리 방법의 흐름도이다.
※ 첨부된 도면은 본 발명의 기술사상에 대한 이해를 위하여 참조로서 예시된 것임을 밝히며, 그것에 의해 본 발명의 권리범위가 제한되지는 아니한다.1 is a schematic overall structural diagram of a supervisor system using a microservices architecture according to any preferred embodiment of the present invention.
2 shows an example of a computer system in which a supervisor system according to any preferred embodiment of the present invention is performed.
3 is a schematic flowchart of a corresponding structure when an error occurs according to an exemplary embodiment of the present invention.
4 is a flowchart of restarting a service module according to an exemplary embodiment of the present invention.
5 is a flowchart of restarting an entire module according to a preferred embodiment of the present invention.
6 is a flow chart for extending performance to a higher supervisor according to any preferred embodiment of the present invention.
7 is a flowchart of an error handling method when there is a child module according to an exemplary embodiment of the present invention.
※ The accompanying drawings indicate that they are exemplified by reference for understanding of the technical idea of the present invention, and the scope of the present invention is not limited thereby.
이하, 도면을 참조하여 본 발명의 다양한 실시예가 안내하는 본 발명의 구성과 그 구성으로부터 비롯되는 효과에 대해 살펴본다. 본 발명을 설명함에 있어서 관련된 공지기능에 대하여 이 분야의 기술자에게 자명한 사항으로서 본 발명의 요지를 불필요하게 흐릴 수 있다고 판단되는 경우에는 그 상세한 설명을 생략한다.Hereinafter, a configuration of the present invention guided by various embodiments of the present invention and effects resulting from the configuration will be described with reference to the drawings. In the description of the present invention, if it is determined that the subject matter of the present invention may be unnecessarily obscured by those skilled in the art with respect to known functions related thereto, the detailed description thereof will be omitted.
도 1은 본 발명의 바람직한 어느 실시예에 따른 마이크로 서비스 아키텍처를 사용하는 수퍼바이저 시스템의 개략적인 전체 구조도이다1 is a schematic overall structural diagram of a supervisor system using a micro service architecture according to any preferred embodiment of the present invention
본 발명에 따른 수퍼바이저 시스템은 기본적으로 수퍼바이저(110), 마이크로 서비스 모듈(210, 220, 230) 및 액터 레퍼런스(310, 320, 330)를 포함하여 이루어진다.The supervisor system according to the present invention basically comprises a
수퍼바이저(110)는 자신에게 속한 모든 마이크로 서비스 모듈(210, 220, 230)들의 데이터 프로세싱을 감독하고, 바이크로 서비스 모듈에서 에러가 발생하면 미리 정의된 대응 방안과 대응 전략에 따라 에러를 처리한다. 수퍼바이저(110) 상위에는 또 다른 상위 수퍼바이저(120)가 있을 수 있다. 상위 수퍼바이저(120)는 수퍼바이저(110)가 에러를 처리할 수 없는 상황일 때 대응을 확장(escalate)하면 이를 처리한다.The
마이크로 서비스 모듈(210, 220, 230)은 스트리밍 데이터를 처리하는 모듈이다. 데이터 처리 도중 에러가 발생하면 수퍼바이저(110)에게 발생된 에러를 메시지 형태로 보고하고 수퍼바이저(110)의 응답에 따라 에러를 처리한다. The
액터 레퍼런스(310, 320, 330)는 마이크로 서비스 모듈(210, 220, 230) 각각과 대응하며 마이크로 서비스 모듈(210, 220, 230)이 다른 마이크로 서비스 모듈 또는 수퍼바이저와 직접 연결되지 않도록 하기 위해 사용된다. 에러가 다른 모듈로 확산되지 않도록 차단하고 모듈 정지 등의 라이프사이클 변동에 따른 영향이 다른 모듈에 미치지 않게 하기 위함이다. The actor references 310, 320, 330 correspond to each of the
액터 레퍼런스(310, 320, 330)와 연결되는 마이크로 서비스 모듈에서 처리해야 하는 메시지들은 액터 레퍼런스(310, 320, 330)의 메시지 큐를 통해 관리한다. 따라서 특정 마이크로 서비스 모듈이 다른 마이크로 서비스 모듈에 데이터를 전달하고자 할 때에는 타겟 모듈과 대응하는 액터 레퍼런스에 메시지를 전달함으로써 원하는 마이크로 서비스 모듈에 메시지를 전달할 수 있다.The messages to be processed in the micro service module connected to the actor reference (310, 320, 330) are managed through the message queue of the actor reference (310, 320, 330). Therefore, when a specific micro service module wants to transmit data to another micro service module, a message can be delivered to a desired micro service module by transmitting a message to an actor reference corresponding to the target module.
도 2는 본 발명의 마이크로 서비스 모듈을 사용하는 수퍼바이저 시스템이 수행되는 컴퓨터 시스템의 한 예를 나타낸다.2 shows an example of a computer system in which a supervisor system using the microservice module of the present invention is performed.
시스템에는 통신 유닛(12), 프로세서 유닛(14), 메모리 유닛(16) 및 데이터베이스(18)가 포함될 수 있다.The system may include a
본 발명에 따른 수퍼바이저 시스템은 통신 유닛(12)을 통해 처리해야할 데이터 스트림을 주고받을 수 있고, 수신한 데이터 스트림을 프로세서 유닛(14)에 의해 처리한다.The supervisor system according to the present invention can exchange data streams to be processed through the
메모리(16)는 다수의 프로그램 모듈과 데이터를 저장하는 기능을 제공한다. 다수의 프로그램 모듈은 운영체제, 하나 이상의 애플리케이션 프로그램, 기타 프로그램 모듈 등을 포함할 수 있다. 특히 본 발명에서는 상기 프로세서 유닛(14)에 의해 실행되어 상기 프로세서 유닛(14)으로 하여금 마이크로 서비스 모듈과 수퍼바이저 기능을 수행하는 컴퓨터 실행가능 명령어들을 저장하는 컴퓨터 판독가능 기록 매체가 메모리(16)에 포함된다. 이러한 기록 매체는 하드디스크, 이동식 자기 디스크, 이동식 광 디스크 및 데이터를 저장할 수 있는 기타 유형의 컴퓨터 판독가능 매체가 사용될 수 있다. 그런 예로는 플래시 메모리 카드, RAM, ROM을 포함한다.The
수퍼바이저 시스템은 스트리밍 데이터 저장을 위한 데이터베이스(18)를 포함할 수 있다. 데이터베이스(18)는 수퍼바이저 시스템 내부에 포함될 수도 있고 외부 서버에 포함되어 네트워크를 통해 접속하도록 할 수 있다.The supervisor system can include a
도 3은 본 발명의 바람직한 어느 실시예에 따라 마이크로 서비스 모듈에서 발생한 에러를 수퍼바이저에서 처리하는 개략적인 흐름도를 나타낸다.Figure 3 shows a schematic flow diagram of processing in the supervisor the error occurred in the micro-service module according to any preferred embodiment of the present invention.
마이크로 서비스 모듈(210)에서 에러가 발생하면 이를 액터 레퍼런스(310)로 전송한다(S310).If an error occurs in the
액터 레퍼런스(310)는 에러 메시지를 수퍼바이저(110)로 전달한다(S320).The
수퍼바이저(110)는 에러의 종류에 따라 미리 정해진 대응 방안과 대응 전략에 의해 에러를 처리하게 된다. 에러에 대한 응답(response)를 액터 레퍼런스(310)에 전달하고(S330), 액터 레퍼런스(310)는 다시 마이크로 서비스 모듈(210)에 전달하여 에러를 처리하게 된다.The
에러에 대한 응답이 '계속(Resume)'인 경우 에러를 유발한 메시지를 무시하고 마이크로 서비스 모듈(210)은 다음 작업을 계속한다.If the response to the error is'Resume', the message causing the error is ignored and the
에러에 대한 응답이 '정지(Stop)'인 경우에는 에러가 발생한 마이크로 서비스 모듈(210)은 동작을 멈추게 되며, 에러 확산을 막기 위해 액터 레퍼런스(310)와의 연결도 끊기게 된다. 액터 레퍼런스(310)도 함께 정지되는 것은 아니므로 다른 모듈이나 수퍼바이저(110)에서 오는 메시지는 액터 레퍼런스(310)의 메시지 큐에 계속 쌓이게 된다. 쌓인 메시지들은 정지된 마이크로 서비스 모듈(210)을 대체하는 다른 마이크로 서비스 모듈이 시작되어 액터 레퍼런스(310)와 다시 연결되면 새로 시작된 마이크로 서비스에서 처리된다. 따라서 특정 마이크로 서비스 모듈이 정지되어도 전체 시스템이 정지되는 일은 발생하지 않는다.When the response to the error is'Stop', the
도 4는 본 발명의 바람직한 어느 실시예에 따라 마이크로 서비스 모듈을 재시작하는 경우의 개략적인 흐름도이다.4 is a schematic flowchart of restarting a micro service module according to an exemplary embodiment of the present invention.
마이크로 서비스 모듈(210)에서 발생한 에러 메시지는(S410) 액터 레퍼런스(310)를 통해 수퍼바이저(110)에 전달된다.The error message generated in the
수퍼바이저(110)는 에러에 따라 대응 방안으로 '재시작(Restart)'을 명령하게 되고, 에러에 대한 응답으로 액터 레퍼런스(310)를 거쳐(S430), 마이크로 서비스 모듈(210)에 전달되고, 새로운 마이크로 서비스 모듈(212)이 실행된다(S440).The
에러가 발생한 마이크로 서비스 모듈(210)은 정지되어 대응하는 액터 레퍼런스(310)와의 연결이 끊어지고, 새로운 마이크로 서비스 모듈(212)이 정지된 마이크로 서비스 모듈(210)의 역할을 수행한다. 이 과정에서 에러를 유발한 메시지는 폐기되거나 액터 레퍼런스(310)의 메시지 큐 맨 마지막에 다시 추가될 수도 있다.The
도 5는 본 발명의 바람직한 어느 실시예에 따라 수퍼바이저가 '모두 적용(AllForOne)' 대응 전략으로 대응 방안을 지시한 경우의 개략적인 흐름도이다.5 is a schematic flowchart of a case in which a supervisor instructs a countermeasure with a'AllForOne' response strategy according to a preferred embodiment of the present invention.
앞서 예에서는 수퍼바이저가 에러가 발생한 마이크로 소프트 모듈에만 적용되는 '하나만 적용(OneForOne)' 대응 전략에 의해 대응을 지시한 경우이다.In the previous example, the supervisor instructed the response by the “OneForOne” response strategy applied only to the errored Microsoft module.
에러에 대한 대응으로 '계속', '정지' 또는 '재시작'을 지시하는 경우 에러가 발생한 마이크로 서비스 모듈에만 대응이 적용되고 다른 마이크로 서비스 모듈들은 영향을 받지 않는 것이 '하나만 적용' 대응 전략이다.In response to an error, if'continue','stop', or'restart' is instructed, the response strategy is applied only to the microservice module in which the error occurred and the other microservice modules are not affected.
이에 반해 '모두 적용' 대응 전략은 에러가 발생한 마이크로 서비스 모듈뿐 아니라 수퍼바이저가 관리하는 모든 마이크로 서비스 모듈에 지시가 전달되어 수행되는 것이다.On the other hand, the response strategy of'apply to all' is that the instructions are delivered to all the microservice modules managed by the supervisor as well as the microservice module in error.
제3 마이크로 서비스 모듈(230)에서 발생한 에러가 액터 레퍼런스(330)를 거쳐(S510) 수퍼바이저(110)로 전달되면, 수퍼바이저(110)는 '모두 적용' 대응 전략으로 모든 마이크로 서비스 모듈(210, 220, 230)에 '재시작'명령을 전달할 수 있다. '재시작' 명령을 전달받은 기존 마이크로 서비스 모듈(210, 220, 230)들은 모두 작동이 정지되고, 새로운 마이크로 서비스 모듈(212, 222, 232)들의 동작이 시작된다(S534, S535, S536). 이 때 '모두 적용'에 따라 '재시작'이 적용되는 마이크로 서비스 모듈은 에러가 발생한 제3 마이크로 서비스 모듈(230)과 동일한 깊이(Depth)에 존재하는 제1 마이크로 서비스 모듈(210)과 제2 마이크로 서비스 모듈(220)이다.When an error generated in the third
도 6은 본 발명의 바람직한 어느 실시예에 따라 '확장' 명령이 적용되는 경우의 개략적인 흐름도를 나타낸다.Figure 6 shows a schematic flow diagram when the'extend' command is applied according to any preferred embodiment of the present invention.
마이크로 서비스 모듈(220)에서 발생한 에러 메시지는 액터 레퍼런스를 통해 제1 수퍼바이저(110)로 전달된다(S510, S520).The error message generated in the
제1 수퍼바이저(110)는 에러를 자체적으로 처리하지 못하는 경우 자신보다 상위의 수퍼바이저인 제2 수퍼바이저(120)에 '확장(Escalate)' 전달하고(S530, S540), 제2 수퍼바이저(120)는 에러에 대한 대응을 제1 수퍼바이저(110)를 거쳐 마이크로 서비스 모듈(220)에 전달하는 것이다. 도 6은 '하나만 적용'인 경우의 대응 방법을 나타내고, '모두 적용' 전략인 경우에는 제2 마이크로 서비스 모듈(220)과 같은 깊이에 있고 제1 수퍼바이저(110)의 관리하에 있는 모든 마이크로 서비스 모듈들에 적용될 수 있을 것이다.If the
도 7은 에러가 발생한 마이크로 서비스 모듈의 하위에 자식 마이크로 서비스 모듈이 있는 경우의 에러 대응 방안 흐름도를 나타낸다.7 is a flowchart illustrating an error response method when there is a child micro service module below a micro service module in which an error has occurred.
제2 마이크로 서비스 모듈(220)에 발생한 에러는 액터 레퍼런스(320)를 거쳐 수퍼바이저(110)에 전달되고(S610, S620), 수퍼바이저(110)는 이에 대한 응답으로 지시를 제2 마이크로 서비스 모듈(220)에 전달한다.The error generated in the second
제2 마이크로 서비스 모듈(220)에 전달된 수퍼바이저의 지시는 제2 마이크로 서비스 모듈(220)의 자식 마이크로 서비스 모듈들(240, 250, 260)에도 동일하게 적용된다(S651, S652, S653, S654, S655, S656)The instruction of the supervisor transmitted to the second
본 발명에 따른 스트리밍 빅데이터 처리를 위한 마이크로 서비스 아키텍처 관리를 위한 수퍼바이저 시스템 및 방법에 의하면 마이크로 서비스 모듈에서 발생하는 다양한 에러상황을 독립적으로 효과적으로 관리할 수 있으므로, 일무 마이크로 서비스 모듈의 에러가 전체 시스템에 영향을 주지 않는 안정적인 시스템의 구현이 가능한 장점이 있다.According to the supervisor system and method for managing a micro service architecture for processing streaming big data according to the present invention, various error conditions occurring in a micro service module can be effectively and independently managed. There is an advantage that it is possible to implement a stable system that does not affect.
참고로, 본 발명의 일 실시예에 따른 스트리밍 빅데이터 처리 모듈 관리를 위한 수퍼바이저 관리 방법은 다양한 컴퓨터 수단을 통하여 수행될 수 있는 프로그램 명령 형태로 구현되어 컴퓨터 판독가능매체에 기록될 수 있다. 상기 컴퓨터 판독가능매체는 프로그램 명령, 데이터 파일, 데이터 구조 등을 단독으로 또는 조합하여 포함할 수 있다. 상기 매체에 기록되는 프로그램 명령은 본 발명을 위하여 특별히 설계되고 구성된 것들이거나 컴퓨터 소프트웨어 당업자에게 공지되어 사용 가능한 것일 수도 있다. For reference, a supervisor management method for managing a streaming big data processing module according to an embodiment of the present invention may be recorded in a computer readable medium by being implemented in the form of program instructions that can be performed through various computer means. The computer-readable medium may include program instructions, data files, data structures, or the like alone or in combination. The program instructions recorded on the medium may be specially designed and configured for the present invention, or may be known and usable by those skilled in computer software.
컴퓨터 판독가능매체의 예에는 하드 디스크, 플로피 디스크 및 자기 테이프와 같은 자기 매체, CD-ROM, DVD와 같은 광기록 매체, 플롭티컬 디스크(floptical disk)와 같은 자기-광 매체, 및 ROM, RAM, 플래시 메모리 등과 같은 프로그램 명령을 저장하고 수행하도록 특별히 구성된 하드웨어 장치가 포함될 수 있다. 프로그램 명령의 예에는 컴파일러에 의해 만들어지는 것과 같은 기계어코드뿐만 아니라 인터프리터 등을 사용해서 컴퓨터에 의해서 실행될 수 있는 고급언어코드를 포함한다. 상술한 하드웨어 장치는 본 발명의 동작을 수행하기 위해 하나 이상의 소프트웨어 모듈로서 작동하도록 구성될 수 있으며, 그 역도 마찬가지이다Examples of computer-readable media include magnetic media such as hard disks, floppy disks and magnetic tapes, optical recording media such as CD-ROMs, DVDs, magnetic-optical media such as floptical disks, and ROM, RAM, Hardware devices specifically configured to store and execute program instructions, such as flash memory, may be included. Examples of program instructions include high-level language codes that can be executed by a computer using an interpreter, as well as machine codes such as those produced by a compiler. The above-described hardware device may be configured to operate as one or more software modules to perform the operation of the present invention, and vice versa.
본 발명의 보호범위가 이상에서 명시적으로 설명한 실시예의 기재와 표현에 제한되는 것은 아니다. 또한, 본 발명이 속하는 기술분야에서 자명한 변경이나 치환으로 말미암아 본 발명이 보호범위가 제한될 수도 없음을 다시 한 번 첨언한다.The scope of protection of the present invention is not limited to the description and expression of the embodiments explicitly described above. In addition, it is once again pointed out that the scope of the present invention may not be limited by the obvious changes or substitutions in the technical field to which the present invention pertains.
Claims (4)
상기 수퍼바이저는 자기에 속한 모든 마이크로 서비스 모듈의 데이터 프로세싱을 감독하며 상기 마이크로 서비스 모듈에서 발생하는 에러를 감지하고, 상기 에러의 종류에 따라 미리 정의된 대응 방안과 대응 전략을 적용하여 발생한 에러를 처리하며,
상기 마이크로 서비스 모듈 각각과 대응하는 액터 레퍼런스(ActorRef)를 더 포함하고, 상기 수퍼바이저와 마이크로 서비스 모듈간 혹은 상기 각 마이크로 서비스 모듈간 통신은 상기 액터 레퍼런스를 통해 이루어짐으로써 에러가 다른 마이크로 서비스 모듈로 확산되지 않도록 차단하는, 스트리밍 빅데이터 처리 모듈 관리를 위한 수퍼바이저 시스템.
It includes a plurality of micro-service module, and a supervisor (Supervisor) for managing the plurality of micro-service module,
The supervisor supervises the data processing of all micro service modules belonging to it, detects errors occurring in the micro service module, and processes errors generated by applying predefined countermeasures and countermeasures according to the type of the error. ,
The microservice module further includes an actor reference (ActorRef) corresponding to each of the microservice modules, and communication between the supervisor and the microservice module or between the microservice modules is performed through the actor reference so that errors are not spread to other microservice modules. Supervisor system for management of streaming big data processing module, which prevents blocking.
상기 대응 방안은 계속(resume), 정지(stop), 재시작(restart) 및 확대(escalate)를 포함하는 것을 특징으로 하는, 스트리밍 빅데이터 처리 모듈 관리를 위한 수퍼바이저 시스템.
According to claim 1,
The countermeasure is characterized in that it includes (resume), stop (stop), restart (restart) and escalate (escalate), supervisor system for streaming big data processing module management.
상기 대응 전략은 에러가 발생한 마이크로 서비스 모듈에만 적용하는 하나만 적용 전략(OneForOne)과 상기 수퍼바이저가 관리하는 모든 마이크로 서비스 모듈에 적용하는 모두 적용 전략(AllForOne)을 포함하는 것을 특징으로 하는, 스트리밍 빅데이터 처리 모듈 관리를 위한 수퍼바이저 시스템.
According to claim 1,
The response strategy includes one application strategy (OneForOne) applied only to the microservice module in which the error occurred, and all application strategy (AllForOne) applied to all microservice modules managed by the supervisor, streaming big data processing Supervisor system for module management.
Priority Applications (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR1020180165524A KR102125354B1 (en) | 2018-12-19 | 2018-12-19 | Supervisor system for managing streaming bigdata processing module using micro service architecture and method thereof |
AU2019100085A AU2019100085A4 (en) | 2018-12-19 | 2019-01-25 | Supervisor system for managing streaming big data processing module using micro-service architecture and method thereof |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR1020180165524A KR102125354B1 (en) | 2018-12-19 | 2018-12-19 | Supervisor system for managing streaming bigdata processing module using micro service architecture and method thereof |
Publications (1)
Publication Number | Publication Date |
---|---|
KR102125354B1 true KR102125354B1 (en) | 2020-06-22 |
Family
ID=65441160
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
KR1020180165524A KR102125354B1 (en) | 2018-12-19 | 2018-12-19 | Supervisor system for managing streaming bigdata processing module using micro service architecture and method thereof |
Country Status (2)
Country | Link |
---|---|
KR (1) | KR102125354B1 (en) |
AU (1) | AU2019100085A4 (en) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR102554445B1 (en) * | 2022-09-07 | 2023-07-11 | 주식회사 브로넥스 | Artificial intelligence-based metaverse and blockchain mixed education system |
Families Citing this family (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN112685261B (en) * | 2021-01-05 | 2022-10-04 | 武汉长江通信智联技术有限公司 | Micro-service operation state monitoring method based on observer mode |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR20160109300A (en) * | 2015-03-10 | 2016-09-21 | 한국전자통신연구원 | Method and Apparatus for managing distributed cloud |
KR20170085072A (en) * | 2014-11-11 | 2017-07-21 | 아마존 테크놀로지스, 인크. | System for managing and scheduling containers |
KR101807806B1 (en) * | 2017-05-02 | 2017-12-11 | 나무기술 주식회사 | Application containerization method on cloud platform |
KR101835431B1 (en) * | 2016-09-01 | 2018-03-09 | 주식회사 시큐아이 | Data update method of containers in virtual system and apparatus thereof |
JP2018518762A (en) * | 2015-05-28 | 2018-07-12 | オラクル・インターナショナル・コーポレイション | Automatic anomaly detection and resolution system |
-
2018
- 2018-12-19 KR KR1020180165524A patent/KR102125354B1/en active IP Right Grant
-
2019
- 2019-01-25 AU AU2019100085A patent/AU2019100085A4/en not_active Ceased
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR20170085072A (en) * | 2014-11-11 | 2017-07-21 | 아마존 테크놀로지스, 인크. | System for managing and scheduling containers |
KR20160109300A (en) * | 2015-03-10 | 2016-09-21 | 한국전자통신연구원 | Method and Apparatus for managing distributed cloud |
JP2018518762A (en) * | 2015-05-28 | 2018-07-12 | オラクル・インターナショナル・コーポレイション | Automatic anomaly detection and resolution system |
KR101835431B1 (en) * | 2016-09-01 | 2018-03-09 | 주식회사 시큐아이 | Data update method of containers in virtual system and apparatus thereof |
KR101807806B1 (en) * | 2017-05-02 | 2017-12-11 | 나무기술 주식회사 | Application containerization method on cloud platform |
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR102554445B1 (en) * | 2022-09-07 | 2023-07-11 | 주식회사 브로넥스 | Artificial intelligence-based metaverse and blockchain mixed education system |
KR102613069B1 (en) * | 2022-09-07 | 2023-12-12 | 주식회사 브로넥스 | Block chain network based failure response process management system |
WO2024053789A1 (en) * | 2022-09-07 | 2024-03-14 | 주식회사 브로넥스 | Process management system using micro-service architecture based on blockchain network |
Also Published As
Publication number | Publication date |
---|---|
AU2019100085A4 (en) | 2019-02-28 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP5656799B2 (en) | Appropriate alert delivery method, system and computer program | |
US9201759B2 (en) | Debugging applications in the cloud | |
US9117019B2 (en) | Debugging remote software applications across WAN connections | |
US20200074329A1 (en) | Intelligent adaptor service in unified automation platforms for robotic process automation | |
WO2021203979A1 (en) | Operation and maintenance processing method and apparatus, and computer device | |
US20100153482A1 (en) | Cloud-Based Automation of Resources | |
US20190286736A1 (en) | Resource-efficient record processing in unified automation platforms for robotic process automation | |
US20120331485A1 (en) | Flexible Event Data Content Management For Relevant Event And Alert Analysis Within A Distributed Processing System | |
KR102125354B1 (en) | Supervisor system for managing streaming bigdata processing module using micro service architecture and method thereof | |
US10592296B2 (en) | Maintaining state information in a multi-component, event-driven state machine | |
US20140304553A1 (en) | Grouping Failure Events with Adaptive Polling and Sliding Window Buffering | |
WO2019242455A1 (en) | Method and apparatus for user request forwarding, reverse proxy and computer readable storage medium | |
US8973002B1 (en) | Business rules batch processor | |
CN102970330B (en) | Mutual between a kind of browser realize method and apparatus | |
US10986112B2 (en) | Method for collecting cyber threat intelligence data and system thereof | |
CN111526049B (en) | Operation and maintenance system, operation and maintenance method, electronic device and storage medium | |
US10122602B1 (en) | Distributed system infrastructure testing | |
CN111917814B (en) | Data publishing method, data subscribing method, data publishing device, data subscribing system and readable storage medium | |
US20180302486A1 (en) | Proxy apparatus and method for data collection | |
US20210334185A1 (en) | Task based service management platform | |
CN113259493B (en) | Ukey information acquisition method, device, equipment and storage medium based on Ukey cabinet | |
US8275882B2 (en) | System and method for goal driven threshold setting in distributed system management | |
US9959133B2 (en) | Identification and removal of zombie virtual machines | |
CN109324892B (en) | Distributed management method, distributed management system and device | |
US20080016192A1 (en) | System and Method for Performing an Administrative Task upon the Occurrence of a Triggering Event |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
E701 | Decision to grant or registration of patent right | ||
GRNT | Written decision to grant |