KR20240145125A - 다중화 및 절체 기능을 수행하는 미들웨어 관리 시스템 및 동작 방법 - Google Patents
다중화 및 절체 기능을 수행하는 미들웨어 관리 시스템 및 동작 방법 Download PDFInfo
- Publication number
- KR20240145125A KR20240145125A KR1020230039514A KR20230039514A KR20240145125A KR 20240145125 A KR20240145125 A KR 20240145125A KR 1020230039514 A KR1020230039514 A KR 1020230039514A KR 20230039514 A KR20230039514 A KR 20230039514A KR 20240145125 A KR20240145125 A KR 20240145125A
- Authority
- KR
- South Korea
- Prior art keywords
- middleware
- node
- middleware node
- message queue
- active mode
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Pending
Links
- 238000000034 method Methods 0.000 title claims description 13
- 230000006870 function Effects 0.000 title description 19
- 238000004891 communication Methods 0.000 claims abstract description 20
- 238000011017 operating method Methods 0.000 claims description 8
- 238000012544 monitoring process Methods 0.000 description 8
- 238000005516 engineering process Methods 0.000 description 5
- 238000010586 diagram Methods 0.000 description 4
- 238000005259 measurement Methods 0.000 description 3
- 238000012545 processing Methods 0.000 description 3
- 230000005540 biological transmission Effects 0.000 description 2
- 238000004146 energy storage Methods 0.000 description 2
- 230000001360 synchronised effect Effects 0.000 description 2
- 238000003491 array Methods 0.000 description 1
- 230000001413 cellular effect Effects 0.000 description 1
- 230000008859 change Effects 0.000 description 1
- 238000005520 cutting process Methods 0.000 description 1
- 230000001934 delay Effects 0.000 description 1
- 238000000605 extraction Methods 0.000 description 1
- 239000000835 fiber Substances 0.000 description 1
- 230000015654 memory Effects 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 230000003287 optical effect Effects 0.000 description 1
- 238000010248 power generation Methods 0.000 description 1
- 230000008569 process Effects 0.000 description 1
- 230000007704 transition Effects 0.000 description 1
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L41/00—Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
- H04L41/06—Management of faults, events, alarms or notifications
- H04L41/0654—Management of faults, events, alarms or notifications using network fault recovery
- H04L41/0663—Performing the actions predefined by failover planning, e.g. switching to standby network elements
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L41/00—Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
- H04L41/06—Management of faults, events, alarms or notifications
- H04L41/0695—Management of faults, events, alarms or notifications the faulty arrangement being the maintenance, administration or management system
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L43/00—Arrangements for monitoring or testing data switching networks
- H04L43/10—Active monitoring, e.g. heartbeat, ping or trace-route
-
- H—ELECTRICITY
- H02—GENERATION; CONVERSION OR DISTRIBUTION OF ELECTRIC POWER
- H02J—CIRCUIT ARRANGEMENTS OR SYSTEMS FOR SUPPLYING OR DISTRIBUTING ELECTRIC POWER; SYSTEMS FOR STORING ELECTRIC ENERGY
- H02J3/00—Circuit arrangements for AC mains or AC distribution networks
- H02J3/38—Arrangements for parallely feeding a single network by two or more generators, converters or transformers
-
- Y—GENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y04—INFORMATION OR COMMUNICATION TECHNOLOGIES HAVING AN IMPACT ON OTHER TECHNOLOGY AREAS
- Y04S—SYSTEMS INTEGRATING TECHNOLOGIES RELATED TO POWER NETWORK OPERATION, COMMUNICATION OR INFORMATION TECHNOLOGIES FOR IMPROVING THE ELECTRICAL POWER GENERATION, TRANSMISSION, DISTRIBUTION, MANAGEMENT OR USAGE, i.e. SMART GRIDS
- Y04S40/00—Systems for electrical power generation, transmission, distribution or end-user application management characterised by the use of communication or information technologies, or communication or information technology specific aspects supporting them
- Y04S40/12—Systems for electrical power generation, transmission, distribution or end-user application management characterised by the use of communication or information technologies, or communication or information technology specific aspects supporting them characterised by data transport means between the monitoring, controlling or managing units and monitored, controlled or operated electrical equipment
- Y04S40/124—Systems for electrical power generation, transmission, distribution or end-user application management characterised by the use of communication or information technologies, or communication or information technology specific aspects supporting them characterised by data transport means between the monitoring, controlling or managing units and monitored, controlled or operated electrical equipment using wired telecommunication networks or data transmission busses
Landscapes
- Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Health & Medical Sciences (AREA)
- Cardiology (AREA)
- General Health & Medical Sciences (AREA)
- Power Engineering (AREA)
- Hardware Redundancy (AREA)
Abstract
실시예에 따르면, 에너지 관리 시스템을 구성하는 모듈간의 데이터 통신을 관리하는 미들웨어 관리 시스템에 있어서, 복수개의 미들웨어 노드를 통하여 상기 모듈과 데이터 통신을 수행하여 메시지를 송수신하며, 상기 복수개의 미들웨어 노드를 관리하는 관리부; 활성 모드로 동작하며, 제1메시지 큐를 생성하여 상기 모듈로 송수신되는 메시지를 관리하는 제1미들웨어 노드; 활성 모드로 동작하며, 제2메시지 큐를 생성하여 상기 모듈로 송수신되는 메시지를 관리하는 제2미들웨어 노드; 및 대기 모드로 동작하며, 상기 제1미들웨어 노드 또는 상기 제2미들웨어 노드에서 장애 발생시 활성 모드로 전환 동작하여, 제3메시지 큐를 생성하고 상기 모듈로 송수신되는 메시지를 관리하는 제3미들웨어 노드를 포함하는 미들웨어 관리 시스템을 제공한다.
Description
본 발명의 일실시예는 다중화 및 절체 기능을 포함하는 미들웨어 관리 시스템 및 동작 방법에 관한 것으로, 보다 구체적으로는 마이크로 그리드 에너지 관리 시스템에 적용될 수 있는 다중화 및 절체 기능을 수행하는 미들웨어 관리 시스템 및 동작 방법에 관한 것이다.
마이크로 그리드 에너지 관리 시스템(MG-EMS)은 시스템 내에 다양한 이기종의 디바이스와 플랫폼, 통신환경이 존재하며, 분산 환경에서 다양한 통신 개체가 동적으로 통신에 참여하여 데이터를 주고받는 구조를 갖는다.
또한, 마이크로그리드(MG) 내에는 발전, 배전, 판매 등 다양한 전력분야 영역의 시스템을 포함하며, 한 가지 영역 내에서도 필드 디바이스에서부터 운영시스템에 이르기까지 수많은 통신단말이 존재하며, 이를 통합운영하고 상호 운용성 있는 통신을 하기 위한 통신 미들웨어가 필요하다.
최근에는 국내 신재생 에너지 및 그린 뉴딜 정책에 따라 전력 에너지와 ICT기술의 융합이 요구되고 관련 기술이 계속 증가하는 추세이다. 따라서, 마이크로 그리드, 신재생 에너지 수요의 증가에 따라 에너지 관리 시스템에서 필요로 하는 데이터의 종류가 증가하고, 실시간 대용량의 현장 계측 데이터 연계 기술이 꾸준히 요구되는 상황이다. 마이크로 그리드 전력 관리 시스템은 그 특성상 시스템 장애, 데이터 유실에 따른 피해가 크기 때문에 이를 방지하기 위한 기술들이 요구된다.
본 발명이 이루고자 하는 기술적 과제는 다중화 및 절체 기능을 수행하는 미들웨어 관리 시스템 및 동작 방법을 제공하는데 있다.
실시예에 따르면, 에너지 관리 시스템을 구성하는 모듈간의 데이터 통신을 관리하는 미들웨어 관리 시스템에 있어서, 복수개의 미들웨어 노드를 통하여 상기 모듈과 데이터 통신을 수행하여 메시지를 송수신하며, 상기 복수개의 미들웨어 노드를 관리하는 관리부; 활성 모드로 동작하며, 제1메시지 큐를 생성하여 상기 모듈로 송수신되는 메시지를 관리하는 제1미들웨어 노드; 활성 모드로 동작하며, 제2메시지 큐를 생성하여 상기 모듈로 송수신되는 메시지를 관리하는 제2미들웨어 노드; 및 대기 모드로 동작하며, 상기 제1미들웨어 노드 또는 상기 제2미들웨어 노드에서 장애 발생시 활성 모드로 전환 동작하여, 제3메시지 큐를 생성하고 상기 모듈로 송수신되는 메시지를 관리하는 제3미들웨어 노드를 포함하는 미들웨어 관리 시스템을 제공한다.
상기 제1미들웨어 노드 및 상기 제2미들웨어 노드는 활성 모드에서 상기 모듈로 송수신되는 동일한 메시지에 대한 동일한 메시지 큐를 각각 생성하여 관리할 수 있다.
상기 제3미들웨어 노드는 활성 모드로 전환 동작하여, 장애가 발생하지 않은 미들웨어 노드와 상기 모듈로 송수신되는 동일한 메시지에 대한 동일한 메시지 큐를 각각 생성하여 관리할 수 있다.
상기 제3미들웨어 노드는 상기 제1미들웨어 노드에서 장애 발생시 상기 제2미들웨어 노드와 메시지 큐 동기화 기능을 수행하여 활성 모드로 전환 동작하며, 상기 제2미들웨어 노드에서 장애 발생시 상기 제1미들웨어 노드와 메시지 큐 동기화 기능을 수행하여 활성 모드로 전환 동작할 수 있다.
상기 제1미들웨어 노드, 상기 제2미들웨어 노드 및 상기 제3미들웨어 노드는 상호간 하트비트(heartbeat) 메시지를 교환하여 상태를 확인할 수 있다.
상기 제3미들웨어 노드는 상기 제1미들웨어 노드 또는 상기 제2미들웨어 노드로부터 일정 횟수동안 하트비트 신호를 수신하지 못하는 경우 상기 관리부의 제어에 따라 활성 모드로 전환 동작할 수 있다.
장애가 복구된 상기 제1미들웨어 노드 또는 상기 제2미들웨어 노드는 대기 모드로 동작할 수 있다.
실시에에 따르면, 에너지 관리 시스템을 구성하는 모듈간의 데이터 통신을 관리하는 미들웨어 동작 방법에 있어서, 제1미들웨어 노드가 활성 모드로 동작하여 제1메시지 큐를 생성하며, 상기 모듈로 송수신되는 메시지를 관리하는 단계; 제2미들웨어 노드가 활성 모드로 동작하여 제2메시지 큐를 생성하며, 상기 모듈로 송수신되는 메시지를 관리하는 단계; 및 제3미들웨어 노드가 대기 모드로 동작하며 상기 제1미들웨어 노드 또는 상기 제2미들웨어 노드의 장애를 감지하는 단계; 상기 제3미들웨어 노드가 활성 모드로 전환 동작하여, 제3메시지 큐를 생성하고 상기 모듈로 송수신되는 메시지를 관리하는 단계를 포함하는 미들웨어 동작 방법을 제공한다.
상기 제1미들웨어 노드 및 상기 제2미들웨어 노드는 활성 모드에서 상기 모듈로 송수신되는 동일한 메시지에 대한 동일한 메시지 큐를 각각 생성하여 관리할 수 있다.
상기 제3미들웨어 노드는 활성 모드로 전환 동작하여, 장애가 발생하지 않은 미들웨어 노드와 상기 모듈로 송수신되는 동일한 메시지에 대한 동일한 메시지 큐를 각각 생성하여 관리할 수 있다.
상기 장애를 감지하는 단계는, 상기 제1미들웨어 노드, 상기 제2미들웨어 노드 및 상기 제3미들웨어 노드는 상호간 하트비트(heartbeat) 메시지를 교환하여 상태를 확인하는 단계; 및 상기 제3미들웨어 노드가 상기 제1미들웨어 노드 또는 상기 제2미들웨어 노드로부터 일정 횟수동안 하트비트 신호를 수신하지 못하는 경우 해당 미들웨어 노드에 장애가 발생한 것으로 감지하는 단계를 포함할 수 있다.
장애가 복구된 상기 제1미들웨어 노드 또는 상기 제2미들웨어 노드가 대기 모드로 동작하는 단계를 더 포함할 수 있다.
실시에에 따르면, 전술한 방법을 컴퓨터에 실행시키기 위한 프로그램이 기록되어 있는 컴퓨터에서 판독 가능한 기록매체를 제공한다.
본 발명인 다중화 및 절체 기능을 수행하는 미들웨어 관리 시스템 및 동작 방법은 장애 발생시 데이터 유실을 방지할 수 있다.
또한, 절체 과정에서 발생하는 동작 지연을 방지할 수 있다.
도 1은 실시예에 따른 마이크로 그리드 에너지 관리 시스템의 개념도이다.
도2는 실시예에 따른 미들웨어 관리 시스템의 개념도이다.
도3 및 도4는 실시예에 따른 미들웨어 관리 시스템의 동작을 설명하기 위한 도면이다.
도5는 실시예에 따른 미들웨어 동작 방법의 순서도이다.
도2는 실시예에 따른 미들웨어 관리 시스템의 개념도이다.
도3 및 도4는 실시예에 따른 미들웨어 관리 시스템의 동작을 설명하기 위한 도면이다.
도5는 실시예에 따른 미들웨어 동작 방법의 순서도이다.
이하, 첨부된 도면을 참조하여 본 발명의 바람직한 실시예를 상세히 설명한다.
다만, 본 발명의 기술 사상은 설명되는 일부 실시 예에 한정되는 것이 아니라 서로 다른 다양한 형태로 구현될 수 있고, 본 발명의 기술 사상 범위 내에서라면, 실시 예들간 그 구성 요소들 중 하나 이상을 선택적으로 결합, 치환하여 사용할 수 있다.
또한, 본 발명의 실시예에서 사용되는 용어(기술 및 과학적 용어를 포함)는, 명백하게 특별히 정의되어 기술되지 않는 한, 본 발명이 속하는 기술분야에서 통상의 지식을 가진 자에게 일반적으로 이해될 수 있는 의미로 해석될 수 있으며, 사전에 정의된 용어와 같이 일반적으로 사용되는 용어들은 관련 기술의 문맥상의 의미를 고려하여 그 의미를 해석할 수 있을 것이다.
또한, 본 발명의 실시예에서 사용된 용어는 실시예들을 설명하기 위한 것이며 본 발명을 제한하고자 하는 것은 아니다.
본 명세서에서, 단수형은 문구에서 특별히 언급하지 않는 한 복수형도 포함할 수 있고, "A 및(와) B, C 중 적어도 하나(또는 한 개 이상)"로 기재되는 경우 A, B, C로 조합할 수 있는 모든 조합 중 하나 이상을 포함할 수 있다.
또한, 본 발명의 실시 예의 구성 요소를 설명하는 데 있어서, 제1, 제2, A, B, (a), (b) 등의 용어를 사용할 수 있다.
이러한 용어는 그 구성 요소를 다른 구성 요소와 구별하기 위한 것일 뿐, 그 용어에 의해 해당 구성 요소의 본질이나 차례 또는 순서 등으로 한정되지 않는다.
그리고, 어떤 구성 요소가 다른 구성요소에 '연결', '결합' 또는 '접속'된다고 기재된 경우, 그 구성 요소는 그 다른 구성 요소에 직접적으로 연결, 결합 또는 접속되는 경우뿐만 아니라, 그 구성 요소와 그 다른 구성 요소 사이에 있는 또 다른 구성 요소로 인해 '연결', '결합' 또는 '접속' 되는 경우도 포함할 수 있다.
또한, 각 구성 요소의 "상(위) 또는 하(아래)"에 형성 또는 배치되는 것으로 기재되는 경우, 상(위) 또는 하(아래)는 두 개의 구성 요소들이 서로 직접 접촉되는 경우뿐만 아니라 하나 이상의 또 다른 구성 요소가 두 개의 구성 요소들 사이에 형성 또는 배치되는 경우도 포함한다. 또한, "상(위) 또는 하(아래)"으로 표현되는 경우 하나의 구성 요소를 기준으로 위쪽 방향뿐만 아니라 아래쪽 방향의 의미도 포함할 수 있다.
이하, 첨부된 도면을 참조하여 실시예를 상세히 설명하되, 도면 부호에 관계없이 동일하거나 대응하는 구성 요소는 동일한 참조 번호를 부여하고 이에 대한 중복되는 설명은 생략하기로 한다.
도 1은 실시예에 따른 마이크로 그리드 에너지 관리 시스템의 개념도이다.
도 1을 참조하면, 실시예에 따른 마이크로 그리드 에너지 관리 시스템(1)은, 상위 어플리케이션부(10), 미들웨어 관리부(100), FEP(20) 및 하위 단말장치부(30)를 포함할 수 있다.
실시예에서, 마이크로그리드 에너지 관리 시스템(1)은 일반적인 광역적(global) 전력 시스템으로부터 독립된 분산전원을 중심으로 한 국소적인(local) 전력 공급 시스템으로서, 일정지역 내에서 태양광 전원, 풍력발전기 등 신재생 에너지원과 에너지 저장장치(Energy Storage System, 'ESS') 등을 에너지 관리시스템(Energy Management System, 'EMS')으로 제어하여 외부의 전력망에 연결하거나 독립적으로 운전할 수 있는 소규모 전력망을 의미할 수 있다. 실시예의 경우 마이크로그리드 에너지 관리 시스템(1)에 DDS 미들웨어를 이용한 데이터분산서비스(Data Distribution Service, 'DDS')가 적용될 수 있다.
상위 어플리케이션부(10)는 상위 시스템에 해당하는 응용(application) 기기들인 MG 운영서버(11), HMI(12) 및 외부 연계서버(13)를 포함할 수 있다.
미들웨어 관리 시스템(100)은 일정 지역(local)에 설치된 하위 단말장치부(30)의 전력기기들(이를테면, 부하(31), 인버터(32), 배터리(33), 풍력 발전소(34), 태양광 발전소(35), 디젤 발전소(36) 등)로부터 각종 데이터들을 프론트 엔드 프로세싱을 수행하는 FEP(Front-End Processor, 20)과 DDS(Data Distribution Service) 통신을 수행할 수 있다. 각종 데이터들은 상위 어플리케이션부(10)의 응용기기들(이를테면, MG 운영서버(11), HMI(12), 외부 연계서버(13) 등)과 연계되어 활용될 수 있다.
DDS(Data Distribution Service)는 OMG(Object Management Group)에서 국제 표준으로 제정한 데이터 중심의 발간-구독(Publish-Subscribe) 방식의 통신 미들웨어로써, 미리 약속된 데이터 타입인 토픽(Topic)을 통해 데이터를 송수신할 수 있다.
FEP(Front-End Processor, 20)는 일정 지역(local)에 설치된 하위 단말장치부(30)의 전력기기들(이를테면, 부하(31), 인버터(32), 배터리(33), 풍력 발전소(34), 태양광 발전소(35), 디젤 발전소(36) 등)과 프론트 엔드 프로세싱을 수행하여 각종 데이터들을 수집할 수 있다.
하위 단말장치부(30)는 일정 지역(local)에 설치된 전력기기들(이를테면, 부하(31), 인버터(32), 배터리(33), 풍력 발전소(34), 태양광 발전소(35), 디젤 발전소(36) 등)을 포함하며, 이들 각각이 생성 및 계측한 데이터들은 일정한 통신방식(이를테면, 802.xx, Fiber, Celular/WiMAX, Serial 통신 등)을 통해 FEP(Front-End Processor, 20)로 전송될 수 있다.
도2는 실시예에 따른 미들웨어 관리 시스템의 개념도이다.
도1 및 도2를 참조하면, 실시예에서 미들웨어 관리 시스템(100)은 마이크로 에너지 관리 시스템(1)을 구성하는 FEP(20), MG 운영서버(11), HMI(12), 외부 연계서버(13) 등의 모듈간의 메시지 또는 데이터를 송수신 하고 관리해주는 장치로써, 에너지 관리 시스템(1)의 운영을 위해 각 모듈의 기능 수행에 필요한 데이터 통신을 관리할 수 있다.
실시예에서 미들웨어 관리 시스템(100)은 관리부(110), 제1미들웨어 노드(120), 제2미들웨어 노드(130), 제3미들웨어 노드(140) 및 데이터 베이스(150)를 포함할 수 있다. 실시예에서, 제1미들웨어 노드(120), 제2미들웨어 노드(130) 및 제3미들웨어 노드(140)는 하나의 미들웨어 노드 그룹으로 그룹화되어 동작할 수 있다. 관리부(110)는 적어도 하나의 미들웨어 노드 그룹을 관리하도록 동작할 수 있다. 동일한 미들웨어 노드 그룹에 포함된 미들웨어 노드들은 활성 모드로 동작시, 동일한 메시지에 대하여 동일한 메시지 큐를 각각 생성하여 관리하도록 동작할 수 있다.
관리부(110)는 복수개의 미들웨어 노드를 통하여 모듈과 데이터 통신을 수행하여 메시지를 송수신하며, 복수개의 미들웨어 노드를 관리할 수 있다.
관리부(110)는 메시지 송수신부(111), 노드 상태 관리부(112), 부하 분산 관리부(113) 및 노드 설정 관리부(114)를 포함할 수 있다
메시지 송수신부(111)는 에너지 관리 시스템(1)을 구성하는 FEP(20), MG 운영서버(11), HMI(12), 외부 연계서버(13) 등의 모듈이 보낸 메시지 및 데이터를 수신하거나 각 모듈로 메시지를 송신하는 기능을 수행할 수 있다.
예를 들면, 메시지 송수신부(111)는 FEP(20)에서 취득하는 현장 계측/계량 데이터, MG운영 서버(11)에서 발생하는 알람/이벤트/제어 명령, HMI(12)의 화면에 표출할 데이터 등의 메시지 및 데이터를 송수신하는 기능을 수행할 수 있다. 실시예에서, 메시지와 데이터는 동일한 의미로 사용될 수 있다.
메시지 송수신부(111)는 활성 모드로 동작하는 미들웨어 노드의 메시지 큐 관리부(121~141)를 통하여, 메시지 큐에 메시지를 적재하거나 추출하여 각 모듈로 메시지를 보내는 기능을 수행할 수 있다.
노드 상태 관리부(112)는 각 미들웨어 노드의 상태를 관리할 수 있다. 노드 상태 관리부(112)는 각 미들웨어 노드(120~140)가 활성 모드로 동작하는지 또는 대기 모드로 동작하는지를 모니터링 할 수 있다. 또한, 노드 상태 관리부(112)는 각 미들웨어 노드(120~140)의 메시지 큐(121~141)의 부하상태, 미들웨어 노드(120~140)의 정상 작동 여부, 미들웨어 노드(120~140)의 장애발생 상황을 모니터링 할 수 있다. 노드 상태 관리부(112)는 미들웨어 노드(120~140)에서 장애 발생시, 장애가 발생하지 않은 미들웨어 노드로부터 장애 발생 정보를 수신할 수 있다. 장애 발생 정보는 장애가 발생한 미들웨어 노드의 ID, 장애 발생 시간 정보 등을 포함할 수 있다.
노드 상태 관리부(112)는 특정 미들웨어 노드(120~140)에서 장애 발생 시 대기 모드로 동작하는 미들웨어 노드로 활성 모드 전환 동작 명령을 전송할 수 있다.
부하 분산 관리부(113)는 활성 모드로 동작하는 미들웨어 노드(120~140)의 부하를 관리할 수 있다. 부하 분산 관리부(113)는 활성 모드로 동작하는 미들웨어 노드(120~140)의 상태, 성능에 따라 송수신되는 메시지를 분산 처리함으로써, 각 미드웨어 노드 그룹의 부하를 관리할 수 있다.
노드 설정 관리부(114)는 미들웨어 노드(120~140)의 설정 정보를 데이터베이스(150)를 통해 관리할 수 있다. 노드 설정 관리부(1140)는 각 미들웨어 노드(120~140)의 설정정보를 노드 상태 관리부(112)에 전달하여 미들웨어 노드(120~140)의 모니터링 및 전환 동작을 수행할 수 있도록 한다.
각 미들웨어 노드(120~140)는 메시지 큐 관리부(121~141), 노드 상태 감시부(122~142) 및 메시지 큐 동기화부(123~143)를 포함할 수 있다.
메시지 큐 관리부(121~141)는 메시지 큐(124~144)를 통하여 각 모듈에 송수신되는 메시지를 관리하는 기능을 수행할 수 있다. 메시지 큐 관리부(121~141)는 메시지 큐(124~144)의 생성/해제, 적재/추출, 발행자/수신자 관리 등의 기능을 수행할 수 있다. 메시지 큐 관리부(121~141)는 동일한 미들웨어 노드 그룹에 포함된 미들웨어 노드 중 활성 모드로 동작하는 미들웨어 노드와 동일한 메시지에 대하여 동일한 메시지 큐(124~144)를 생성하여 관리할 수 있다.
노드 상태 감시부(122~142)는 미들웨어 노드의 상태 감시를 위해, 다른 미들웨어 노드의 노드 상태 감시부(122~142)와 하트비트(heartbeat) 신호를 교환할 수 있다. 노드 상태 감시부(122~142)는 동일한 미들웨어 노드 그룹에 포함된 다른 미들웨어 노드와 주기적으로 하트비트 신호를 교환할 수 있다. 노드 상태 감시부(122~142)는 하트비트 신호의 수신 여부에 따라 다른 미들웨어 노드의 상태 변화를 주기적으로 확인할 수 있다.
노드 상태 감시부(122~142)는 미들웨어 노드 그룹내 하트비트 신호 교환 결과를 노드 상태 관리부(112)에 송신하여 노드 상태 관리부(112)가 각 미들웨어 노드의 상태를 모니터링할 수 있게 한다.
메시지 큐 동기화부(123~143)는 메시지 큐(124~144)를 다른 미들웨어 노드의 메시지 큐(124~144)와 동기화하는 기능을 수행할 수 있다. 메시지 큐 동기화부(123~143)는 노드 상태 관리부(112)의 명령에 따라, 대기 모드에서 활성 모드로 전환 동작하는 다른 미들웨어 노드와 메시지 큐(124~144)가 동기화되도록 동작할 수 있다. 또는 메시지 큐 동기화부(123~143)는 노드 상태 관리부(112)의 명령에 따라, 대기 모드에서 활성 모드로 전환 동작할 때, 활성 모드로 유지되는 다른 미들웨어 노드와 메시지 큐(124~144)가 동기화되도록 동작할 수 있다.
메시지 큐 동기화부(123~143)는 메시지 큐(124~144)에 적재되어 있는 메시지, 발행자/수신자 정보 등을 복제할 수 있다.
도3 및 도4는 실시예에 따른 미들웨어 관리 시스템의 동작을 설명하기 위한 도면이다.
도3을 참조하면, 제1미들웨어 노드(120)는 활성 모드로 동작하며, 제1메시지 큐(124)를 생성하여 모듈로 송수신되는 메시지를 관리할 수 있다.
또한, 제2미들웨어 노드(130)는 활성 모드로 동작하며, 제2메시지 큐(134)를 생성하여 모듈로 송수신되는 메시지를 관리할 수 있다.
이 때, 제1미들웨어 노드(120) 및 제2미들웨어 노드(130)는 활성 모드에서 모듈로 송수신되는 동일한 메시지에 대한 동일한 메시지 큐(124,134)를 각각 생성하여 관리할 수 있다.
제3미들웨어 노드(140)는 대기 모드로 동작할 수 있다. 대기 모드 상태에서 제3미들웨어 노드(140)는 메시지 큐를 생성하지 않으며, 모듈로 송수신되는 메시지는 제1미들웨어 노드(120)와 제2미들웨어 노드(130)를 통하여 이루어진다.
제1미들웨어 노드(120), 제2미들웨어 노드(130) 및 제3미들웨어 노드(140)는 상호간 하트비트 메시지를 교환하여 상호간의 상태를 확인할 수 있다.
제3미들웨어 노드(140)는 제1미들웨어 노드(120) 또는 제2미들웨어 노드(130)로부터 일정 횟수동안 하트비트 신호를 수신하지 못하는 경우, 관리부(110)에 장애 발생 정보를 전송할 수 있다.
또는, 제1미들웨어 노드(120)는 제2미들웨어 노드(130) 또는 제3미들웨어 노드(140)로부터 일정 횟수동안 하트비트 신호를 수신하지 못하는 경우, 관리부(110)에 장애 발생 정보를 전송할 수 있다.
또는, 제2미들웨어 노드(130)는 제1미들웨어 노드(120) 또는 제3미들웨어 노드(140)로부터 일정 횟수동안 하트비트 신호를 수신하지 못하는 경우, 관리부(110)에 장애 발생 정보를 전송할 수 있다.
장애 발생 정보는 장애가 발생한 미들웨어 노드의 ID, 장애 발생 시간 정보 등을 포함할 수 있다.
관리부(110)는 제1미들웨어 노드(120) 또는 제2미들웨어 노드(130)에서 장애 발생 시 대기 모드로 동작하는 제3미들웨어 노드(140)로 활성 모드 전환 동작 명령을 전송할 수 있다.
제3미들웨어 노드(140)는 관리부(110)의 전환 동작 명령에 따라 활성 모드로 전환 동작하여, 제3메시지 큐(144)를 생성하고 모듈로 송수신되는 메시지를 관리할 수 있다. 제3미들웨어 노드(140)는 활성 모드로 전환 동작하여, 장애가 발생하지 않은 미들웨어 노드(102 또는 130)와 모듈로 송수신되는 동일한 메시지에 대한 동일한 메시지 큐를 각각 생성하여 관리할 수 있다.
이 때, 제3미들웨어 노드(140)는 제1미들웨어 노드(120)에서 장애 발생시 제2미들웨어 노드(130)와 메시지 큐 동기화 기능을 수행하여 활성 모드로 전환 동작하며, 제2미들웨어 노드(130)에서 장애 발생시 제1미들웨어 노드(120)와 메시지 큐 동기화 기능을 수행하여 활성 모드로 전환 동작할 수 있다.
장애가 복구된 제1미들웨어 노드(120) 또는 제2미들웨어 노드(130)는 활성 모드에서 대기 모드로 전환하여 동작할 수 있다.
이후, 제1미들웨어 노드(120), 제2미들웨어 노드(130) 및 제3미들웨어 노드(140)는 상호간 하트비트 메시지를 교환하여 상호간의 상태를 확인하여, 활성 모드의 미들웨어 노드에서 장애 발생시, 대기 모드의 제1미들웨어 노드(120)를 활성 모드로 전환하여 동작시킬 수 있다.
도5는 실시예에 따른 미들웨어 동작 방법의 순서도이다.
도5를 참조하면, 먼저 제1미들웨어 노드는 활성 모드로 동작하여 제1메시지 큐를 생성하며, 모듈로 송수신되는 메시지를 관리한다(S501).
다음으로, 제2미들웨어 노드는 활성 모드로 동작하여 제2메시지 큐를 생성하며, 모듈로 송수신되는 메시지를 관리한다(S502).
제1미들웨어 노드 및 제2미들웨어 노드는 활성 모드에서 모듈로 송수신되는 동일한 메시지에 대한 동일한 메시지 큐를 각각 생성하여 관리하게 된다.
다음으로, 제3미들웨어 노드는 대기 모드로 동작한다(S503).
제1미들웨어 노드, 제2미들웨어 노드, 제3미들웨어 노드의 동작은 순서와 관계없이 동시에 이루어질 수 있다.
다음으로, 제3미들웨어 노드는 제1미들웨어 노드 또는 제2미들웨어 노드의 장애를 감지한다. 제1미들웨어 노드, 제2미들웨어 노드 및 제3미들웨어 노드는 상호간 하트비트 메시지를 주기적으로 교환하여 상대방의 상태를 확인하고, 제3미들웨어 노드는 제1미들웨어 노드 또는 제2미들웨어 노드로부터 일정 횟수동안 하트비트 신호를 수신하지 못하는 경우 해당 미들웨어 노드에 장애가 발생한 것으로 감지한다. 이 때, 제1미들웨어 노드와 제2미들웨어 노드도 다른 미들웨어 노트의 장애를 감지하는 기능을 수행한다(S504~507).
다음으로, 제3미들웨어 노드는 노드 상태 관리부에 장애 발생 정보를 전송한다(S508).
노드 상태 관리부는 제3미들웨어 노드로 활성 모드 전환 동작 명령을 전송한다(S509).
제3미들웨어 노드는 활성 모드로 전환 동작하여, 제3메시지 큐를 생성하고 모듈로 송수신되는 메시지를 관리한다. 이 때, 제3미들웨어 노드는 장애가 발생하지 않은 미들웨어 노드와 메시지 큐 동기화 기능을 수행하여 활성 모드로 전환 동작할 수 있다(S510).
다음으로, 제3미들웨어 노드는 장애가 발생하지 않은 미들웨어 노드와 모듈로 송수신되는 동일한 메시지에 대한 동일한 메시지 큐를 각각 생성하여 관리할 수 있다(S511).
다음으로, 장애가 복구된 미들웨어 노드는 노드 상태 관리부의 제어에 따라 대기 모드로 동작한다(S512~514).
실시예에 따른 방법은 다양한 컴퓨터 수단을 통하여 수행될 수 있는 프로그램 명령 형태로 구현되어 컴퓨터 판독 가능 기록 매체에 기록될 수 있다. 이때, 매체는 컴퓨터로 실행 가능한 프로그램을 계속 저장하거나, 실행 또는 다운로드를 위해 임시 저장하는 것일 수도 있다. 또한, 매체는 단일 또는 수 개의 하드웨어가 결합된 형태의 다양한 기록수단 또는 저장수단일 수 있는데, 어떤 컴퓨터 시스템에 직접 접속되는 매체에 한정되지 않고, 네트워크 상에 분산 존재하는 것일 수도 있다. 매체의 예시로는, 하드 디스크, 플로피 디스크 및 자기 테이프와 같은 자기 매체, CD-ROM 및 DVD와 같은 광기록 매체, 플롭티컬 디스크(floptical disk)와 같은 자기-광 매체(magneto-optical medium), 및 ROM, RAM, 플래시 메모리 등을 포함하여 프로그램 명령어가 저장되도록 구성된 것이 있을 수 있다. 또한, 다른 매체의 예시로, 어플리케이션을 유통하는 앱 스토어나 기타 다양한 소프트웨어를 공급 내지 유통하는 사이트, 서버 등에서 관리하는 기록매체 내지 저장매체도 들 수 있다.
본 실시예에서 사용되는 '~부'라는 용어는 소프트웨어 또는 FPGA(field-programmable gate array) 또는 ASIC과 같은 하드웨어 구성요소를 의미하며, '~부'는 어떤 역할들을 수행한다. 그렇지만 '~부'는 소프트웨어 또는 하드웨어에 한정되는 의미는 아니다. '~부'는 어드레싱할 수 있는 저장 매체에 있도록 구성될 수도 있고 하나 또는 그 이상의 프로세서들을 재생시키도록 구성될 수도 있다. 따라서, 일 예로서 '~부'는 소프트웨어 구성요소들, 객체지향 소프트웨어 구성요소들, 클래스 구성요소들 및 태스크 구성요소들과 같은 구성요소들과, 프로세스들, 함수들, 속성들, 프로시저들, 서브루틴들, 프로그램 코드의 세그먼트들, 드라이버들, 펌웨어, 마이크로코드, 회로, 데이터, 데이터베이스, 데이터 구조들, 테이블들, 어레이들, 및 변수들을 포함한다. 구성요소들과 '~부'들 안에서 제공되는 기능은 더 작은 수의 구성요소들 및 '~부'들로 결합되거나 추가적인 구성요소들과 '~부'들로 더 분리될 수 있다. 뿐만 아니라, 구성요소들 및 '~부'들은 디바이스 또는 보안 멀티미디어카드 내의 하나 또는 그 이상의 CPU들을 재생시키도록 구현될 수도 있다.
상기에서는 본 발명의 바람직한 실시예를 참조하여 설명하였지만, 해당 기술 분야의 숙련된 당업자는 하기의 특허 청구의 범위에 기재된 본 발명의 사상 및 영역으로부터 벗어나지 않는 범위 내에서 본 발명을 다양하게 수정 및 변경시킬 수 있음을 이해할 수 있을 것이다.
100: 미들웨어 관리 시스템
110: 관리부
111: 메시지 송수신부
112: 노드 상태 관리부
113: 부하 분산 관리부
114: 노드 설정 관리부
120~140: 미들웨어 노드
121~141: 메시지 큐 관리부
122~142: 노드 상태 감시부
123~143: 메시지 큐 동기화부
124~144: 메시지 큐
150: 데이터 베이스
110: 관리부
111: 메시지 송수신부
112: 노드 상태 관리부
113: 부하 분산 관리부
114: 노드 설정 관리부
120~140: 미들웨어 노드
121~141: 메시지 큐 관리부
122~142: 노드 상태 감시부
123~143: 메시지 큐 동기화부
124~144: 메시지 큐
150: 데이터 베이스
Claims (13)
- 에너지 관리 시스템을 구성하는 모듈간의 데이터 통신을 관리하는 미들웨어 관리 시스템에 있어서,
복수개의 미들웨어 노드를 통하여 상기 모듈과 데이터 통신을 수행하여 메시지를 송수신하며, 상기 복수개의 미들웨어 노드를 관리하는 관리부;
활성 모드로 동작하며, 제1메시지 큐를 생성하여 상기 모듈로 송수신되는 메시지를 관리하는 제1미들웨어 노드;
활성 모드로 동작하며, 제2메시지 큐를 생성하여 상기 모듈로 송수신되는 메시지를 관리하는 제2미들웨어 노드; 및
대기 모드로 동작하며, 상기 제1미들웨어 노드 또는 상기 제2미들웨어 노드에서 장애 발생시 활성 모드로 전환 동작하여, 제3메시지 큐를 생성하고 상기 모듈로 송수신되는 메시지를 관리하는 제3미들웨어 노드를 포함하는 미들웨어 관리 시스템.
- 제1항에 있어서,
상기 제1미들웨어 노드 및 상기 제2미들웨어 노드는 활성 모드에서 상기 모듈로 송수신되는 동일한 메시지에 대한 동일한 메시지 큐를 각각 생성하여 관리하는 미들웨어 관리 시스템.
- 제1항에 있어서,
상기 제3미들웨어 노드는 활성 모드로 전환 동작하여, 장애가 발생하지 않은 미들웨어 노드와 상기 모듈로 송수신되는 동일한 메시지에 대한 동일한 메시지 큐를 각각 생성하여 관리하는 미들웨어 관리 시스템.
- 제2항에 있어서,
상기 제3미들웨어 노드는 상기 제1미들웨어 노드에서 장애 발생시 상기 제2미들웨어 노드와 메시지 큐 동기화 기능을 수행하여 활성 모드로 전환 동작하며, 상기 제2미들웨어 노드에서 장애 발생시 상기 제1미들웨어 노드와 메시지 큐 동기화 기능을 수행하여 활성 모드로 전환 동작하는 미들웨어 관리 시스템.
- 제1항에 있어서,
상기 제1미들웨어 노드, 상기 제2미들웨어 노드 및 상기 제3미들웨어 노드는 상호간 하트비트(heartbeat) 메시지를 교환하여 상태를 확인하는 미들웨어 관리 시스템.
- 제5항에 있어서,
상기 제3미들웨어 노드는 상기 제1미들웨어 노드 또는 상기 제2미들웨어 노드로부터 일정 횟수동안 하트비트 신호를 수신하지 못하는 경우 상기 관리부의 제어에 따라 활성 모드로 전환 동작하는 미들웨어 관리 시스템.
- 제1항에 있어서,
장애가 복구된 상기 제1미들웨어 노드 또는 상기 제2미들웨어 노드는 대기 모드로 동작하는 미들웨어 관리 시스템.
- 에너지 관리 시스템을 구성하는 모듈간의 데이터 통신을 관리하는 미들웨어 동작 방법에 있어서,
제1미들웨어 노드가 활성 모드로 동작하여 제1메시지 큐를 생성하며, 상기 모듈로 송수신되는 메시지를 관리하는 단계;
제2미들웨어 노드가 활성 모드로 동작하여 제2메시지 큐를 생성하며, 상기 모듈로 송수신되는 메시지를 관리하는 단계; 및
제3미들웨어 노드가 대기 모드로 동작하며 상기 제1미들웨어 노드 또는 상기 제2미들웨어 노드의 장애를 감지하는 단계;
상기 제3미들웨어 노드가 활성 모드로 전환 동작하여, 제3메시지 큐를 생성하고 상기 모듈로 송수신되는 메시지를 관리하는 단계를 포함하는 미들웨어 동작 방법.
- 제8항에 있어서,
상기 제1미들웨어 노드 및 상기 제2미들웨어 노드는 활성 모드에서 상기 모듈로 송수신되는 동일한 메시지에 대한 동일한 메시지 큐를 각각 생성하여 관리하는 미들웨어 동작 방법.
- 제8항에 있어서,
상기 제3미들웨어 노드는 활성 모드로 전환 동작하여, 장애가 발생하지 않은 미들웨어 노드와 상기 모듈로 송수신되는 동일한 메시지에 대한 동일한 메시지 큐를 각각 생성하여 관리하는 미들웨어 동작 방법.
- 제8항에 있어서, 상기 장애를 감지하는 단계는,
상기 제1미들웨어 노드, 상기 제2미들웨어 노드 및 상기 제3미들웨어 노드는 상호간 하트비트(heartbeat) 메시지를 교환하여 상태를 확인하는 단계; 및
상기 제3미들웨어 노드가 상기 제1미들웨어 노드 또는 상기 제2미들웨어 노드로부터 일정 횟수동안 하트비트 신호를 수신하지 못하는 경우 해당 미들웨어 노드에 장애가 발생한 것으로 감지하는 단계를 포함하는 미들웨어 동작 방법.
- 제8항에 있어서,
장애가 복구된 상기 제1미들웨어 노드 또는 상기 제2미들웨어 노드가 대기 모드로 동작하는 단계를 더 포함하는 미들웨어 동작 방법.
- 제7항 내지 제12항 중 어느 한 항의 방법을 컴퓨터에 실행시키기 위한 프로그램이 기록되어 있는 컴퓨터에서 판독 가능한 기록매체.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR1020230039514A KR20240145125A (ko) | 2023-03-27 | 2023-03-27 | 다중화 및 절체 기능을 수행하는 미들웨어 관리 시스템 및 동작 방법 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR1020230039514A KR20240145125A (ko) | 2023-03-27 | 2023-03-27 | 다중화 및 절체 기능을 수행하는 미들웨어 관리 시스템 및 동작 방법 |
Publications (1)
Publication Number | Publication Date |
---|---|
KR20240145125A true KR20240145125A (ko) | 2024-10-07 |
Family
ID=93115732
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
KR1020230039514A Pending KR20240145125A (ko) | 2023-03-27 | 2023-03-27 | 다중화 및 절체 기능을 수행하는 미들웨어 관리 시스템 및 동작 방법 |
Country Status (1)
Country | Link |
---|---|
KR (1) | KR20240145125A (ko) |
-
2023
- 2023-03-27 KR KR1020230039514A patent/KR20240145125A/ko active Pending
Similar Documents
Publication | Publication Date | Title |
---|---|---|
EP3288269B1 (en) | Method and system for cloud storage of video, and method and system for previewing cloud-stored video | |
CN101902361B (zh) | 容灾业务系统及容灾方法 | |
US20130205017A1 (en) | Computer failure monitoring method and device | |
US11329866B2 (en) | Battery management system and communication method thereof | |
CN103036719A (zh) | 一种基于主备集群服务器的跨地区服务容灾方法及装置 | |
CN113726556B (zh) | 边缘物联代理节点运维方法、系统、存储介质及计算设备 | |
CN103441863A (zh) | 一种空管自动化系统中的双服务器热备系统及控制方法 | |
CN103888277A (zh) | 一种网关容灾备份方法、装置和系统 | |
CN101056254B (zh) | 一种网络存储设备的扩展方法、系统及其装置 | |
CN112217847A (zh) | 微服务平台及其实现方法、电子设备及存储介质 | |
CN105335256A (zh) | 在整机柜服务器中切换备份磁盘的方法、装置和系统 | |
CN111510480A (zh) | 一种请求发送方法、装置以及第一服务器 | |
US20130205162A1 (en) | Redundant computer control method and device | |
CN107071189B (zh) | 一种通讯设备物理接口的连接方法 | |
CN105550065A (zh) | 一种进行数据库服务器通信管理的方法和装置 | |
US20120239988A1 (en) | Computing unit, method of managing computing unit, and computing unit management program | |
KR20240145125A (ko) | 다중화 및 절체 기능을 수행하는 미들웨어 관리 시스템 및 동작 방법 | |
CN111309515A (zh) | 一种容灾控制方法、装置及系统 | |
CN114095343A (zh) | 基于双活系统的容灾方法、装置、设备及存储介质 | |
KR101255446B1 (ko) | 원격 장치 감시 시스템 및 감시 방법 | |
CN110825057A (zh) | 提高发电厂厂级信息监控系统稳定性和安全性的方法 | |
CN114727324B (zh) | 网络容灾处理方法、装置、存储介质及电子设备 | |
KR102611301B1 (ko) | 전화 교환 시스템의 메시지 전달 장치 및 방법 | |
CN109901954B (zh) | 存储设备和资源管理方法 | |
CN113794595A (zh) | 一种基于工业互联网的IoT设备高可用方法 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PA0109 | Patent application |
Patent event code: PA01091R01D Comment text: Patent Application Patent event date: 20230327 |
|
PA0201 | Request for examination |
Patent event code: PA02011R01I Patent event date: 20230327 Comment text: Patent Application |
|
PG1501 | Laying open of application |