[go: up one dir, main page]

KR102407334B1 - 게이트웨이 장치 및 그 동작 방법 - Google Patents

게이트웨이 장치 및 그 동작 방법 Download PDF

Info

Publication number
KR102407334B1
KR102407334B1 KR1020210186779A KR20210186779A KR102407334B1 KR 102407334 B1 KR102407334 B1 KR 102407334B1 KR 1020210186779 A KR1020210186779 A KR 1020210186779A KR 20210186779 A KR20210186779 A KR 20210186779A KR 102407334 B1 KR102407334 B1 KR 102407334B1
Authority
KR
South Korea
Prior art keywords
module
request information
queue
message
information
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.)
Active
Application number
KR1020210186779A
Other languages
English (en)
Inventor
손세환
Original Assignee
이데아텍(주)
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by 이데아텍(주) filed Critical 이데아텍(주)
Priority to KR1020210186779A priority Critical patent/KR102407334B1/ko
Application granted granted Critical
Publication of KR102407334B1 publication Critical patent/KR102407334B1/ko
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/50Network services
    • H04L67/56Provisioning of proxy services
    • H04L67/568Storing data temporarily at an intermediate stage, e.g. caching
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/30Monitoring
    • G06F11/3003Monitoring arrangements specially adapted to the computing system or computing system component being monitored
    • G06F11/3037Monitoring arrangements specially adapted to the computing system or computing system component being monitored where the computing system component is a memory, e.g. virtual memory, cache
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/46Multiprogramming arrangements
    • G06F9/54Interprogram communication
    • G06F9/546Message passing systems or structures, e.g. queues
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/08Network architectures or network communication protocols for network security for authentication of entities
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/50Network services
    • H04L67/60Scheduling or organising the servicing of application requests, e.g. requests for application data transmissions using the analysis and optimisation of the required network resources
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L69/00Network arrangements, protocols or services independent of the application payload and not provided for in the other groups of this subclass
    • H04L69/40Network arrangements, protocols or services independent of the application payload and not provided for in the other groups of this subclass for recovering from a failure of a protocol instance or entity, e.g. service redundancy protocols, protocol state redundancy or protocol service redirection

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Signal Processing (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Computing Systems (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Computer Security & Cryptography (AREA)
  • Software Systems (AREA)
  • Quality & Reliability (AREA)
  • Mathematical Physics (AREA)
  • Computer Hardware Design (AREA)
  • Data Exchanges In Wide-Area Networks (AREA)
  • Computer And Data Communications (AREA)

Abstract

게이트웨이 장치 및 그 동작 방법이 개시된다. 본 발명의 일 실시예에 따른 게이트웨이 장치 및 그 동작 방법은 클라이언트로부터 특정 기능에 대한 수행을 요청하는 수행 요청 정보를 수신하고, 수신한 수행 요청 정보를 메시지로 변환하는 수행 요청 처리 모듈, 및 메시지 큐를 이용하여 상기 수행 요청 처리 모듈로부터 변환된 메시지를 저장하는 큐 모듈을 포함하는 처리 서버; 및 API 서버 정보 및 클라이언트 관련 정보가 저장된 데이터베이스 모듈, 상기 큐 모듈로부터 상기 변환된 메시지를 전송받고, 상기 변환된 메시지 및 상기 저장된 API 서버 정보를 기반으로 요청 정보를 생성하는 요청 정보 생성 모듈, 및 상기 생성된 요청 정보 및 상기 저장된 클라이언트 관련 정보를 기반으로 상기 클라이언트에 대한 인증을 수행하는 확인 모듈을 포함하는 관리 서버를 포함하며, 상기 처리 서버는 상기 특정 기능을 수행하는 API를 제공하는 API 서버로 상기 인증된 요청 정보를 송신하는 라우팅 모듈을 더 포함한다.

Description

게이트웨이 장치 및 그 동작 방법{GATEWAY APPARATUS AND OPERATING METHOD THEREOF}
본 발명의 실시예들은 게이트웨이 장치 및 그 동작 방법과 관련된다.
디지털 시대 변화에 따라 혁신적인 서비스를 수행하기 위해 마이크로 서비스를 점차 많이 사용하고 있다. 마이크로 서비스 아키텍처(Micro Service Architecture, MSA)란 대규모 소프트웨어 개발에 적용하기 위해 단독으로 실행 가능하고 여러 기능을 독립적인 작은 단위로 분해하여 서비스를 제공하는 아키텍처를 말한다.
즉, 클라이언트로부터 요청에 대한 응답을 API(Application Programming Interface) 형태로 제공하는 API 서비스를 작은 단위로 구분하여 이에 대한 변경과 조합이 가능한 형태인 마이크로 서비스에 대한 요구가 증가되고 있다.
이에, 클라이언트의 요청에 따라 수많은 API 서비스를 원할하게 작동하고 관리할 수 있도록 게이트웨이(gateway)에 대한 개발이 진행되고 있다.
이러한 MSA 환경에서 안정적인 API 서비스를 제공하기 위하여 게이트웨이는 시스템 장애 시에도 데이터의 무결성 및 정합성을 보장할 필요가 있다.
대한민국 등록특허공보 제10-0568178호(2006.03.30.)
본 발명의 실시예들은 데이터의 무결성 및 정합성을 보장하기 위한 게이트웨이 장치 및 그 동작 방법을 제공하기 위한 것이다.
본 발명의 예시적인 실시예에 따르면, 클라이언트로부터 특정 기능에 대한 수행을 요청하는 수행 요청 정보를 수신하고, 수신한 수행 요청 정보를 메시지로 변환하는 수행 요청 처리 모듈, 및 메시지 큐를 이용하여 상기 수행 요청 처리 모듈로부터 변환된 메시지를 저장하는 큐 모듈을 포함하는 처리 서버; 및 API(Application Programming Interface) 서버 정보 및 클라이언트 관련 정보가 저장된 데이터베이스 모듈, 상기 큐 모듈로부터 상기 변환된 메시지를 전송받고, 상기 변환된 메시지 및 상기 저장된 API 서버 정보를 기반으로 요청 정보를 생성하는 요청 정보 생성 모듈, 및 상기 생성된 요청 정보 및 상기 저장된 클라이언트 관련 정보를 기반으로 상기 클라이언트에 대한 인증을 수행하는 확인 모듈을 포함하는 관리 서버를 포함하며, 상기 처리 서버는 상기 특정 기능을 수행하는 API를 제공하는 API 서버로 상기 인증된 요청 정보를 송신하는 라우팅 모듈을 더 포함하는 게이트웨이 장치가 제공된다.
상기 수행 요청 처리 모듈은 상기 큐 모듈의 상태를 모니터링하고, 상기 큐 모듈에 장애가 발생했는지 여부를 판단하며, 상기 큐 모듈에 장애가 발생하지 않은 것으로 판단되면, 상기 수신한 수행 요청 정보를 메시지로 변환하여 상기 큐 모듈에 저장할 수 있다.
상기 수행 요청 처리 모듈은 상기 큐 모듈에 장애가 발생한 것으로 판단되면, 상기 수신한 수행 요청 정보를 파일 큐(file queue)에 저장 할 수 있다.
상기 수행 요청 처리 모듈은 상기 큐 모듈이 복구되었는지 확인하고, 상기 큐 모듈이 복구된 것으로 판단되면, 상기 파일 큐에 상기 수행 요청 정보가 저장된 순서대로 메시지로 변환하여 상기 큐 모듈에 저장할 수 있다.
상기 요청 정보 생성 모듈은 상기 데이터베이스 모듈의 상태를 모니터링하고, 상기 데이터베이스 모듈에 장애가 발생했는지 여부를 판단하며, 상기 데이터베이스 모듈에 장애가 발생하지 않은 것으로 판단되면, 상기 큐 모듈로부터 전송받은 변환된 메시지 및 상기 저장된 API 서버 정보를 기반으로 상기 요청 정보를 생성할 수 있다.
상기 요청 정보 생성 모듈은 상기 데이터베이스 모듈에 장애가 발생한 것으로 판단되면, 상기 큐 모듈로부터 전송받은 변환된 메시지를 파일 큐(file queue)에 저장할 수 있다.
상기 요청 정보 생성 모듈은 상기 데이터베이스 모듈이 복구되었는지 확인하고, 상기 데이터베이스 모듈이 복구된 것으로 판단되면, 상기 파일 큐에 상기 변환된 메시지가 저장된 순서대로 상기 클라이언트의 특정 기능에 대한 수행 요청을 확인하고, 상기 저장된 API 서버 정보를 기반으로 상기 특정 기능을 수행하는 API를 호출하기 위한 요청 정보를 생성할 수 있다.
본 발명의 다른 예시적인 실시예에 따르면, 수행 요청 처리 모듈에서, 클라이언트로부터 특정 기능에 대한 수행을 요청하는 수행 요청 정보를 수신하고, 수신한 수행 요청 정보를 메시지로 변환하는 단계; 큐 모듈에서, 메시지 큐를 이용하여 상기 변환된 메시지를 저장하는 단계; 요청 정보 생성 모듈에서, 상기 변환된 메시지를 전송받고, 상기 변환된 메시지 및 기 저장된 API 서버 정보를 기반으로 요청 정보를 생성하는 단계; 확인 모듈에서, 상기 생성된 요청 정보 및 기 저장된 클라이언트 관련 정보를 기반으로 상기 클라이언트에 대한 인증을 수행하는 단계; 및 라우팅 모듈에서, 상기 특정 기능을 수행하는 API를 제공하는 API 서버로 상기 인증된 요청 정보를 송신하는 단계를 포함하는, 게이트웨이 장치의 동작 방법이 제공된다.
상기 메시지로 변환하는 단계는 상기 수행 요청 처리 모듈에서, 상기 큐 모듈의 상태를 모니터링하고, 상기 큐 모듈에 장애가 발생했는지 여부를 판단하는 단계; 및 상기 수행 요청 처리 모듈에서, 상기 큐 모듈에 장애가 발생하지 않은 것으로 판단되면, 상기 수신한 수행 요청 정보를 메시지로 변환하여 상기 큐 모듈에 저장하는 단계를 더 포함할 수 있다.
상기 메시지로 변환하는 단계는 상기 수행 요청 처리 모듈에서, 상기 큐 모듈에 장애가 발생한 것으로 판단되면, 상기 수신한 수행 요청 정보를 파일 큐(file queue)에 저장하는 단계를 더 포함할 수 있다.
상기 메시지로 변환하는 단계는 상기 수행 요청 처리 모듈에서, 상기 큐 모듈이 복구되었는지 확인하는 단계; 및 상기 수행 요청 처리 모듈에서, 상기 큐 모듈이 복구된 것으로 판단되면, 상기 파일 큐에 상기 수행 요청 정보가 저장된 순서대로 메시지로 변환하여 상기 큐 모듈에 저장하는 단계를 더 포함할 수 있다.
상기 요청 정보를 생성하는 단계는 상기 요청 정보 생성 모듈에서, 데이터베이스 모듈의 상태를 모니터링하고, 상기 데이터베이스 모듈에 장애가 발생했는지 여부를 판단하는 단계; 및 상기 요청 정보 생성 모듈에서, 상기 데이터베이스 모듈에 장애가 발생하지 않은 것으로 판단되면, 상기 큐 모듈로부터 전송받은 변환된 메시지 및 상기 저장된 API 서버 정보를 기반으로 상기 요청 정보를 생성하는 단계를 더 포함할 수 있다.
상기 요청 정보를 생성하는 단계는 상기 요청 정보 생성 모듈에서, 상기 데이터베이스 모듈에 장애가 발생한 것으로 판단되면, 상기 큐 모듈로부터 전송받은 변환된 메시지를 파일 큐(file queue)에 저장하는 단계를 더 포함할 수 있다.
상기 요청 정보를 생성하는 단계는 상기 요청 정보 생성 모듈에서, 상기 데이터베이스 모듈이 복구되었는지 확인하는 단계; 상기 요청 정보 생성 모듈에서, 상기 데이터베이스 모듈이 복구된 것으로 판단되면, 상기 파일 큐에 상기 변환된 메시지가 저장된 순서대로 상기 클라이언트의 특정 기능에 대한 수행 요청을 확인하는 단계; 및 상기 요청 정보 생성 모듈에서, 상기 저장된 API 서버 정보를 기반으로 상기 특정 기능을 수행하는 API를 호출하기 위한 요청 정보를 생성하는 단계를 더 포함할 수 있다.
본 발명의 실시예들에 따르면, 게이트웨이 장치에서 시스템 장애가 발생한 경우(특히, 큐 모듈, 데이터베이스 모듈), 수행 요청 처리 모듈 및 요청 정보 생성 모듈이 입력된 데이터를 파일 큐에 저장하고, 시스템이 복구되면 파일 큐에 저장된 순서대로 입력된 데이터를 처리함으로써, 시스템 장애시에도 데이터의 무결성 및 정합성을 보장할 수 있다.
도 1은 본 발명의 일 실시예에 따른 게이트웨이 장치를 포함하는 마이크로 서비스 아키텍처를 나타내는 개략도
도 2는 본 발명의 일 실시예에 따른 게이트웨이 장치를 설명하기 위한 구성도
도 3은 본 발명의 일 실시예에 따른 게이트웨이 장치의 동작 방법을 설명하기 위한 흐름도
도 4는 본 발명의 다른 실시예에 따른 게이트웨이 장치의 동작 방법을 설명하기 위한 흐름도
도 5는 예시적인 실시예들에서 사용되기에 적합한 컴퓨팅 장치를 포함하는 컴퓨팅 환경을 예시하여 설명하기 위한 블록도
이하, 도면을 참조하여 본 발명의 구체적인 실시형태를 설명하기로 한다. 이하의 상세한 설명은 본 명세서에서 기술된 방법, 장치 및/또는 시스템에 대한 포괄적인 이해를 돕기 위해 제공된다. 그러나 이는 예시에 불과하며 본 발명은 이에 제한되지 않는다.
본 발명의 실시예들을 설명함에 있어서, 본 발명과 관련된 공지기술에 대한 구체적인 설명이 본 발명의 요지를 불필요하게 흐릴 수 있다고 판단되는 경우에는 그 상세한 설명을 생략하기로 한다. 그리고, 후술되는 용어들은 본 발명에서의 기능을 고려하여 정의된 용어들로서 이는 사용자, 운용자의 의도 또는 관례 등에 따라 달라질 수 있다. 그러므로 그 정의는 본 명세서 전반에 걸친 내용을 토대로 내려져야 할 것이다. 상세한 설명에서 사용되는 용어는 단지 본 발명의 실시예들을 기술하기 위한 것이며, 결코 제한적이어서는 안 된다. 명확하게 달리 사용되지 않는 한, 단수 형태의 표현은 복수 형태의 의미를 포함한다. 본 설명에서, "포함" 또는 "구비"와 같은 표현은 어떤 특성들, 숫자들, 단계들, 동작들, 요소들, 이들의 일부 또는 조합을 가리키기 위한 것이며, 기술된 것 이외에 하나 또는 그 이상의 다른 특성, 숫자, 단계, 동작, 요소, 이들의 일부 또는 조합의 존재 또는 가능성을 배제하도록 해석되어서는 안 된다.
또한, 제1, 제2 등의 용어는 다양한 구성 요소들을 설명하는데 사용될 수 있지만, 상기 구성 요소들은 상기 용어들에 의해 한정되어서는 안 된다. 상기 용어들은 하나의 구성 요소를 다른 구성 요소로부터 구별하는 목적으로 사용될 수 있다. 예를 들어, 본 발명의 권리 범위를 벗어나지 않으면서 제1 구성 요소는 제2 구성 요소로 명명될 수 있고, 유사하게 제2 구성 요소도 제1 구성 요소로 명명될 수 있다.
이하의 설명에 있어서, 신호 또는 정보의 "전송", "통신", "송신", "수신" 기타 이와 유사한 의미의 용어는 일 구성요소에서 다른 구성요소로 신호 또는 정보가 직접 전달되는 것뿐만이 아니라 다른 구성요소를 거쳐 전달되는 것도 포함한다. 특히 신호 또는 정보를 일 구성요소로 "전송" 또는 "송신"한다는 것은 그 신호 또는 정보의 최종 목적지를 지시하는 것이고 직접적인 목적지를 의미하는 것이 아니다. 이는 신호 또는 정보의 "수신"에 있어서도 동일하다. 또한 본 명세서에 있어서, 2 이상의 데이터 또는 정보가 "관련"된다는 것은 하나의 데이터(또는 정보)를 획득하면, 그에 기초하여 다른 데이터(또는 정보)의 적어도 일부를 획득할 수 있음을 의미한다.
도 1은 본 발명의 일 실시예에 따른 게이트웨이 장치(200)를 포함하는 마이크로 서비스 아키텍처를 나타내는 개략도이다.
도 1에 도시된 바와 같이, 본 발명의 일 실시예에 따른 게이트웨이 장치(200)를 포함하는 마이크로 서비스 아키텍처는 클라이언트(100), 게이트웨이 장치(200) 및 복수의 API 서버(300)를 포함할 수 있다.
클라이언트(100)는 특정 기능에 대한 수행 요청(수행 요청 정보)을 게이트웨이 장치(200)로 송신할 수 있다. 또한, 클라이언트(100)는 게이트웨이 장치(200)로부터 특정 기능에 대한 수행 요청에 따른 응답 정보를 수신할 수 있다. 예를 들어, 클라이언트(100)는 MS(Mobile Station), UT(User Terminal), SS(Subscriber Station), 무선기기(Wireless Device), 무선 모뎀(Wireless Modem), 휴대기기(Handheld Device), AT(Access Terminal), 이동통신 단말기, 스마트폰 등일 수 있으며, 이에 한정되는 것은 아니다.
게이트웨이 장치(200)는 클라이언트(100)로부터 특정 기능에 대한 수행 요청(수행 요청 정보)을 수신하고, 특정 기능을 수행하는 API를 호출하기 위한 요청 정보를 각각의 API 서버(300)에 대응되게 생성할 수 있다. 또한, 게이트웨이 장치(200)는 복수의 API 서버(300)로부터 각각 응답 정보를 수신할 수 있다. 즉, 게이트웨이 장치(200)는 클라이언트(100)의 요청을 각각의 마이크로서비스(API 서버(300))로 라우팅할 수 있다. 이러한 게이트웨이 장치(200)는 프록시 서버 등의 형태로 구현될 수 있으며, 네트워크 부하 분산 메커니즘, 내지 서비스 장치가 인터넷 또는 다른 네트워크 상에서 동작할 수 있도록 하는 다양한 소프트웨어 중 하나 이상이 설치될 수 있으며, 이를 통해 컴퓨터화된 시스템으로도 구현될 수 있다.
복수의 API(Application Programming Interface) 서버(300)는 각각 API(Application Programming Interface) 서비스를 제공할 수 있다. 복수의 API 서버(300)는 게이트웨이 장치(200)로부터 요청 정보를 수신하고, 수신한 요청 정보에 대한 응답으로 각각의 API 서버(300)가 제공하는 API 서비스에 대한 응답 정보를 생성할 수 있다. 또한, 복수의 API 서버(300)는 각각 생성한 응답 정보를 게이트웨이 장치(200)로 송신할 수 있다.
이상 본 발명의 일 실시예에 따른 게이트웨이 장치(200)를 포함하는 마이크로 서비스 아키텍처에서는 상기 구성을 통하여 클라이언트(100)에 대해 마이크로 서비스를 제공할 수 있는데, 이하에서는 이를 실현하기 위한 게이트웨이 장치(200)의 구성에 대하여 보다 구체적으로 설명하기로 한다.
도 2는 본 발명의 일 실시예에 따른 게이트웨이 장치(200)를 설명하기 위한 구성도이다.
도 2에 도시된 바와 같이, 본 발명의 일 실시예에 따른 게이트웨이 장치(200)는 처리 서버(210) 및 관리 서버(220)를 포함할 수 있다.
처리(gateway) 서버(210)는 수행 요청 처리 모듈(211), 큐 모듈(212) 및 라우팅 모듈(213)을 포함할 수 있다.
수행 요청 처리 모듈(211)은 클라이언트(100)로부터 특정 기능에 대한 수행 요청(수행 요청 정보)을 수신할 수 있다. 여기서, 특정 기능은 예를 들어, API 서버(300)에서 수행 가능한 독립적인 기능을 의미할 수 있다. 또한, 수행 요청 처리 모듈(211)은 수신한 수행 요청 정보를 메시지(message)로 변환하고, 변환된 메시지를 큐 모듈(212)로 전달할 수 있다. 구체적으로, 수행 요청 처리 모듈(211)은 클라이언트(100)의 대량의 수행 요청을 처리하기 위하여 특정 기능에 대한 수행 요청을 메시지로 변환할 수 있다. 즉, 클라이언트(100)로부터 수신한 수행 요청 정보를 메시지로 변환하여 큐 모듈(212)에 저장함으로써, 실제 메시지 흐름이 큐를 이용한 비동기 구조로 구현될 수 있다.
예시적인 실시예에서, 수행 요청 처리 모듈(211)은 큐 모듈(212)의 상태를 모니터링할 수 있다.
구체적으로, 수행 요청 처리 모듈(211)은 큐 모듈(212)의 상태를 모니터링하고 큐 모듈(212)에 장애(예를 들어, 잠김(locking-up), 기능정지(hanging), 충돌(crashing) 등)가 발생한 것으로 판단되면, 수신한 수행 요청 정보를 메시지로 변환하지 않고, 파일 큐(file queue)에 저장할 수 있다. 여기서, 파일 큐는 파일에 내용을 저장하는 큐를 의미할 수 있다. 즉, 수행 요청 처리 모듈(211)은 큐 모듈(212)에 장애가 발생한 경우, 메모리에 저장된 데이터는 휘발될 위험성이 있으므로, 데이터를 안전하게 보관하기 위하여 큐 모듈(212)이 복구될 때까지 파일에 내용을 저장할 수 있다. 또한, 수행 요청 처리 모듈(211)은 큐 모듈(212)이 복구된 것으로 판단되면, 파일 큐에 수행 요청 정보가 저장된 순서대로 수행 요청 정보를 메시지로 변환할 수 있다. 즉, 수행 요청 처리 모듈(211)은 큐 모듈(212)에 장애가 발생하면, 메시지 변환 작업을 중단하고 수행 요청 정보를 파일 큐에 저장하고, 큐 모듈(212)이 복구되면, 파일 큐에 저장된 수행 요청 정보를 저장된 순서대로 메시지 변환 작업을 재개함으로써, 큐 모듈(212)에 장애가 발생한 경우에도 데이터 소실을 방지할 수 있다.
큐(queue) 모듈(212)은 메시지 큐를 이용하여 수행 요청 처리 모듈(211)로부터 변환된 메시지를 저장할 수 있다. 이러한, 큐 모듈(212)은 인메모리 데이터베이스(In-memory Database)로 구현되어 메모리 큐에 메시지를 저장할 수 있다.
라우팅 모듈(213)은 요청 정보를 기초로 API를 호출하여 API에 대한 응답 정보를 획득할 수 있다. 구체적으로, 라우팅 모듈(213)은 요청 정보에 포함된 API에 대한 정보를 이용하여 API에 대한 호출 정보를 생성하고, API에 대한 호출 정보를 이용하여 API를 호출할 수 있다.
관리(admin) 서버(220)는 요청 정보 생성 모듈(221), 데이터베이스 모듈(222) 및 확인 모듈(223)을 포함할 수 있다.
요청 정보 생성 모듈(221)은 변환된 메시지 및 기 저장된 API 서버 정보를 기반으로 요청 정보를 생성할 수 있다. 구체적으로, 요청 정보 생성 모듈(221)은 큐 모듈(212)로부터 변환된 메시지를 전송받아 클라이언트(100)의 수행 요청을 확인하고, 기 저장된 API 서버 정보를 기반으로 특정 기능을 수행하는 API를 호출하기 위한 요청 정보를 생성할 수 있다.
예시적인 실시예에서, 요청 정보 생성 모듈(221)은 데이터베이스 모듈(222)의 상태를 모니터링 할 수 있다.
구체적으로, 요청 정보 생성 모듈(221)은 데이터베이스 모듈(222)의 상태를 모니터링하고 데이터베이스 모듈(222)에 장애(예를 들어, 잠김(locking-up), 기능정지(hanging), 충돌(crashing) 등)가 발생한 것으로 판단되면, 큐 모듈(212)로부터 전송받은 변환된 메시지를 파일 큐(file queue)에 저장할 수 있다. 즉, 요청 정보 생성 모듈(221)은 데이터베이스 모듈(222)에 장애가 발생한 경우, 메모리에 저장된 데이터는 휘발될 위험성이 있으므로, 데이터를 안전하게 보관하기 위하여 데이터베이스 모듈(222)이 복구될 때까지 파일에 내용을 저장할 수 있다. 또한, 요청 정보 생성 모듈(221)은 데이터베이스 모듈(222)이 복구된 것으로 판단되면, 파일 큐에 변환된 메시지가 저장된 순서대로 클라이언트(100)의 특정 기능에 대한 수행 요청을 확인하고, 기 저장된 API 서버 정보를 기반으로 특정 기능을 수행하는 API를 호출하기 위한 요청 정보를 생성할 수 있다. 즉, 요청 정보 생성 모듈(221)은 데이터베이스 모듈(222)에 장애가 발생하면, 요청 정보 생성 작업을 중단하고 변환된 메시지를 파일 큐에 저장하고, 데이터베이스 모듈(222)이 복구되면, 파일 큐에 저장되어 있는 변환된 메시지를 저장된 순서대로 요청 정보 생성 작업을 재개함으로써, 데이터베이스 모듈(222)에 장애가 발생한 경우에도 데이터 소실을 방지할 수 있다.
데이터베이스 모듈(222)은 API 서버 정보, 클라이언트 관련 정보 및 로그 정보를 저장할 수 있다. 여기서, API 서버 정보는 API 서버(300)가 기능 수행을 위해 요구되는 기능에 대한 정보, API 서버의 주소, API 서버의 리소스 등을 포함할 수 있다. 또한, 클라이언트 관련 정보는 클라이언트 ID 등 클라이언트를 식별할 수 있는 고유 식별 번호를 포함할 수 있다. 또한, 로그 정보는 클라이언트로부터 수신되는 수행 요청 정보에 따른 API 호출 로그를 포함할 수 있다.
확인 모듈(223)은 클라이언트(100)에 대한 인증을 수행할 수 있다. 구체적으로, 확인 모듈(223)은 요청 정보 생성 모듈(221)로부터 생성된 요청 정보를 기 저장된 클라이언트 관련 정보와 비교하여 클라이언트(100)에 대한 인증 및 접근 권한을 확인할 수 있다. 즉, 확인 모듈(223)은 API 서버(300)로의 접근을 보호하기 위한 인증 및 접근 권한을 가지는 클라이언트(100)의 요청에 대해서만 API를 호출하도록 할 수 있다.
한편, 본 발명에서 설명한 API에 대한 호출 순서는 하나의 예시일 뿐이며, 실시 예에 따라 달리 설정될 수 있다.
따라서, 본 발명의 실시예들에 따르면, 게이트웨이 장치(200)에서 시스템 장애가 발생한 경우(특히, 큐 모듈(212), 데이터베이스 모듈(222)), 각 모듈이(특히, 수행 요청 처리 모듈(211) 및 요청 정보 생성 모듈(221))이 입력된 데이터를 파일 큐에 저장하고, 시스템이 복구되면 파일 큐에 저장된 순서대로 입력된 데이터를 처리함으로써, 시스템 장애 시에도 데이터의 무결성 및 정합성을 보장할 수 있다.
도 3은 본 발명의 일 실시예에 따른 게이트웨이 장치(200)의 동작 방법을 설명하기 위한 흐름도이다. 도 3에 도시된 방법은 예를 들어, 전술한 게이트웨이 장치(200)에 의해 수행될 수 있다. 도시된 흐름도에서는 상기 방법을 복수 개의 단계로 나누어 기재하였으나, 적어도 일부의 단계들은 순서를 바꾸어 수행되거나, 다른 단계와 결합되어 함께 수행되거나, 생략되거나, 세부 단계들로 나뉘어 수행되거나, 또는 도시되지 않은 하나 이상의 단계가 부가되어 수행될 수 있다.
먼저, 게이트웨이 장치(200)는 클라이언트(100)로부터 특정 기능에 대한 수행 요청(수행 요청 정보)을 수신한다(S301). 여기서, 특정 기능은 예를 들어, API 서버(300)에서 수행 가능한 독립적인 기능을 의미할 수 있다.
그 다음, 게이트웨이 장치(200)는 큐 모듈(212)의 상태를 모니터링하고(S302), 큐 모듈(212)에 장애가 발생했는지 여부를 판단한다(S303).
그 다음, 게이트웨이 장치(200)는 큐 모듈(212)에 장애가 발생하지 않은 것으로 판단되면, 수신한 수행 요청 정보를 메시지로 변환하고(S304), 변환된 메시지를 큐 모듈(212)에 저장한다(S305).
이 때, 게이트웨이 장치(200)는 큐 모듈(212)에 장애가 발생한 것으로 판단되면, 수신한 수행 요청 정보를 메시지로 변환하지 않고 파일 큐(file queue)로 저장한다(S306). 여기서, 파일 큐는 파일에 내용을 저장하는 큐를 의미할 수 있다. 그 다음, 게이트웨이 장치(200)는 수행 요청 정보를 파일 큐에 저장하면서 큐 모듈(212)이 복구되었는지 확인하고(S307), 큐 모듈(212)이 복구된 것으로 판단되면, 파일 큐에 저장된 순서대로 수행 요청 정보를 메시지로 변환한다(S308).
그 다음, 게이트웨이 장치(200)는 변환된 메시지 및 기 저장된 API 서버 정보를 기반으로 요청 정보를 생성한다(S309). 구체적으로, 게이트웨이 장치(200)는 변환된 메시지를 기반으로 클라이언트(100)의 수행 요청을 확인하고, 기 저장된 API 서버 정보를 기반으로 특정 기능을 수행하는 API를 호출하기 위한 요청 정보를 생성할 수 있다.
그 다음, 게이트웨이 장치(200)는 클라이언트(100)에 대한 인증을 수행한다(S310). 구체적으로, 게이트웨이 장치(200)는 요청 정보를 클라이언트(100) 관련 정보와 비교하여 클라이언트(100)에 대한 인증 및 접근 권한을 확인할 수 있다.
마지막으로, 게이트웨이 장치(200)는 요청 정보를 기초로 API를 호출한다(S311). 구체적으로, 게이트웨이 장치(200)는 요청 정보에 포함된 API에 대한 정보를 이용하여 API에 대한 호출 정보를 생성하고, API에 대한 호출 정보를 이용하여 API를 호출할 수 있다.
도 4는 본 발명의 다른 실시예에 따른 게이트웨이 장치(200)의 동작 방법을 설명하기 위한 흐름도이다. 도 4에 도시된 방법은 예를 들어, 전술한 게이트웨이 장치(200)에 의해 수행될 수 있다. 도시된 흐름도에서는 상기 방법을 복수 개의 단계로 나누어 기재하였으나, 적어도 일부의 단계들은 순서를 바꾸어 수행되거나, 다른 단계와 결합되어 함께 수행되거나, 생략되거나, 세부 단계들로 나뉘어 수행되거나, 또는 도시되지 않은 하나 이상의 단계가 부가되어 수행될 수 있다.
먼저, 게이트웨이 장치(200)는 클라이언트(100)로부터 특정 기능에 대한 수행 요청(수행 요청 정보)을 수신한다(S401). 여기서, 특정 기능은 예를 들어, API 서버(300)에서 수행 가능한 독립적인 기능을 의미할 수 있다.
그 다음, 게이트웨이 장치(200)는 수신한 수행 요청 정보를 메시지로 변환한다(S402). 이 때, 게이트웨이 장치(200)는 큐 모듈(212)의 상태를 모니터링하고 큐 모듈(212)에 장애(예를 들어, 잠김(locking-up), 기능정지(hanging), 충돌(crashing) 등)이 발생한 것으로 판단되면, 수신한 수행 요청 정보를 메시지로 변환하지 않고, 파일 큐(file queue)로 저장할 수 있다. 여기서, 파일 큐는 파일에 내용을 저장하는 큐를 의미할 수 있다. 또한, 게이트웨이 장치(200)는 큐 모듈(212)이 복구된 것으로 판단되면, 파일 큐에 저장된 순서대로 수행 요청 정보를 메시지로 변환할 수 있다.
그 다음, 게이트웨이 장치(200)는 변환된 메시지를 큐 모듈(212)에 저장한다(S403).
그 다음, 게이트웨이 장치(200)는 데이터베이스 모듈(222)의 상태를 모니터링하고(S404), 데이터베이스 모듈(222)에 장애가 발생했는지 여부를 판단한다(S405).
그 다음, 게이트웨이 장치(200)는 데이터베이스 모듈(222)에 장애가 발생하지 않은 것으로 판단되면, 변환된 메시지 및 기 저장된 API 서버 정보를 기반으로 요청 정보를 생성한다(S406).
이 때, 게이트웨이 장치(200)는 데이터베이스 모듈(222)에 장애가 발생한 것으로 판단되면, 변환된 메시지를 파일 큐(file queue)에 저장한다(S407). 그 다음, 게이트웨이 장치(200)는 변환된 메시지를 파일 큐에 저장하면서 데이터베이스 모듈(222)이 복구되었는지 확인하고, 데이터베이스 모듈(222)이 복구된 것으로 판단되면(S408), 파일 큐에 변환된 메시지가 저장된 순서대로 클라이언트(100)의 특정 기능에 대한 수행 요청을 확인하고, 기 저장된 API 서버 정보를 기반으로 특정 기능을 수행하는 API를 호출하기 위한 요청 정보를 생성 한다(S409).
그 다음, 게이트웨이 장치(200)는 클라이언트(100)에 대한 인증을 수행한다(S410). 구체적으로, 게이트웨이 장치(200)는 요청 정보를 클라이언트(100) 관련 정보와 비교하여 클라이언트(100)에 대한 인증 및 접근 권한을 확인할 수 있다.
마지막으로, 게이트웨이 장치(200)는 요청 정보를 기초로 API를 호출한다(S411). 구체적으로, 게이트웨이 장치(200)는 요청 정보에 포함된 API에 대한 정보를 이용하여 API에 대한 호출 정보를 생성하고, API에 대한 호출 정보를 이용하여 API를 호출할 수 있다.
도 5는 예시적인 실시예들에서 사용되기에 적합한 컴퓨팅 장치를 포함하는 컴퓨팅 환경을 예시하여 설명하기 위한 블록도이다. 도시된 실시예에서, 각 컴포넌트들은 이하에 기술된 것 이외에 상이한 기능 및 능력을 가질 수 있고, 이하에 기술된 것 이외에도 추가적인 컴포넌트를 포함할 수 있다.
도시된 컴퓨팅 환경(10)은 컴퓨팅 장치(12)를 포함한다. 일 실시예에서, 컴퓨팅 장치(12)는 클라이언트(100)일 수 있다. 또한, 컴퓨팅 장치(12)는 게이트웨이 장치(200)일 수 있다. 또한, 컴퓨팅 장치(12)는 API 서버(300)일 수 있다.
컴퓨팅 장치(12)는 적어도 하나의 프로세서(14), 컴퓨터 판독 가능 저장 매체(16) 및 통신 버스(18)를 포함한다. 프로세서(14)는 컴퓨팅 장치(12)로 하여금 앞서 언급된 예시적인 실시예에 따라 동작하도록 할 수 있다. 예컨대, 프로세서(14)는 컴퓨터 판독 가능 저장 매체(16)에 저장된 하나 이상의 프로그램들을 실행할 수 있다. 상기 하나 이상의 프로그램들은 하나 이상의 컴퓨터 실행 가능 명령어를 포함할 수 있으며, 상기 컴퓨터 실행 가능 명령어는 프로세서(14)에 의해 실행되는 경우 컴퓨팅 장치(12)로 하여금 예시적인 실시예에 따른 동작들을 수행하도록 구성될 수 있다.
컴퓨터 판독 가능 저장 매체(16)는 컴퓨터 실행 가능 명령어 내지 프로그램 코드, 프로그램 데이터 및/또는 다른 적합한 형태의 정보를 저장하도록 구성된다. 컴퓨터 판독 가능 저장 매체(16)에 저장된 프로그램(20)은 프로세서(14)에 의해 실행 가능한 명령어의 집합을 포함한다. 일 실시예에서, 컴퓨터 판독 가능 저장 매체(16)는 메모리(랜덤 액세스 메모리와 같은 휘발성 메모리, 비휘발성 메모리, 또는 이들의 적절한 조합), 하나 이상의 자기 디스크 저장 디바이스들, 광학 디스크 저장 디바이스들, 플래시 메모리 디바이스들, 그 밖에 컴퓨팅 장치(12)에 의해 액세스되고 원하는 정보를 저장할 수 있는 다른 형태의 저장 매체, 또는 이들의 적합한 조합일 수 있다.
통신 버스(18)는 프로세서(14), 컴퓨터 판독 가능 저장 매체(16)를 포함하여 컴퓨팅 장치(12)의 다른 다양한 컴포넌트들을 상호 연결한다.
컴퓨팅 장치(12)는 또한 하나 이상의 입출력 장치(24)를 위한 인터페이스를 제공하는 하나 이상의 입출력 인터페이스(22) 및 하나 이상의 네트워크 통신 인터페이스(26)를 포함할 수 있다. 입출력 인터페이스(22) 및 네트워크 통신 인터페이스(26)는 통신 버스(18)에 연결된다. 입출력 장치(24)는 입출력 인터페이스(22)를 통해 컴퓨팅 장치(12)의 다른 컴포넌트들에 연결될 수 있다. 예시적인 입출력 장치(24)는 포인팅 장치(마우스 또는 트랙패드 등), 키보드, 터치 입력 장치(터치패드 또는 터치스크린 등), 음성 또는 소리 입력 장치, 다양한 종류의 센서 장치 및/또는 촬영 장치와 같은 입력 장치, 및/또는 디스플레이 장치, 프린터, 스피커 및/또는 네트워크 카드와 같은 출력 장치를 포함할 수 있다. 예시적인 입출력 장치(24)는 컴퓨팅 장치(12)를 구성하는 일 컴포넌트로서 컴퓨팅 장치(12)의 내부에 포함될 수도 있고, 컴퓨팅 장치(12)와는 구별되는 별개의 장치로 컴퓨팅 장치(12)와 연결될 수도 있다.
이상에서 본 발명의 대표적인 실시예들을 상세하게 설명하였으나, 본 발명이 속하는 기술분야에서 통상의 지식을 가진 자는 상술한 실시예에 대하여 본 발명의 범주에서 벗어나지 않는 한도 내에서 다양한 변형이 가능함을 이해할 것이다. 그러므로 본 발명의 권리범위는 설명된 실시예에 국한되어 정해져서는 안 되며, 후술하는 특허청구범위뿐만 아니라 이 특허청구범위와 균등한 것들에 의해 정해져야 한다.
100 : 클라이언트
200 : 게이트웨이 장치
210 : 처리 서버
211 : 수행 요청 처리 모듈
212 : 큐 모듈
213 : 라우팅 모듈
220 : 관리 서버
221 : 요청 정보 생성 모듈
222 : 데이터베이스 모듈
223 : 확인 모듈
300 : 복수의 API 서버

Claims (14)

  1. 클라이언트로부터 특정 기능에 대한 수행을 요청하는 수행 요청 정보를 수신하고, 수신한 수행 요청 정보를 메시지로 변환하는 수행 요청 처리 모듈, 및 메시지 큐를 이용하여 상기 수행 요청 처리 모듈로부터 변환된 메시지를 저장하는 큐 모듈을 포함하는 처리 서버; 및
    API(Application Programming Interface) 서버 정보 및 클라이언트 관련 정보가 저장된 데이터베이스 모듈, 상기 큐 모듈로부터 상기 변환된 메시지를 전송받고, 상기 변환된 메시지 및 상기 저장된 API 서버 정보를 기반으로 요청 정보를 생성하는 요청 정보 생성 모듈, 및 상기 생성된 요청 정보 및 상기 저장된 클라이언트 관련 정보를 기반으로 상기 클라이언트에 대한 인증을 수행하는 확인 모듈을 포함하는 관리 서버를 포함하며,
    상기 처리 서버는 상기 특정 기능을 수행하는 API를 제공하는 API 서버로 상기 인증된 요청 정보를 송신하는 라우팅 모듈을 더 포함하며,
    상기 수행 요청 처리 모듈은,
    상기 큐 모듈의 상태를 모니터링하고, 상기 큐 모듈에 장애가 발생했는지 여부를 판단하며, 상기 큐 모듈에 장애가 발생하지 않은 것으로 판단되면, 상기 수신한 수행 요청 정보를 메시지로 변환하여 상기 큐 모듈에 저장하는, 게이트웨이 장치.
  2. 삭제
  3. 청구항 1에 있어서,
    상기 수행 요청 처리 모듈은,
    상기 큐 모듈에 장애가 발생한 것으로 판단되면, 상기 수신한 수행 요청 정보를 파일 큐(file queue)에 저장하는, 게이트웨이 장치.
  4. 청구항 3에 있어서,
    상기 수행 요청 처리 모듈은,
    상기 큐 모듈이 복구되었는지 확인하고, 상기 큐 모듈이 복구된 것으로 판단되면, 상기 파일 큐에 상기 수행 요청 정보가 저장된 순서대로 메시지로 변환하여 상기 큐 모듈에 저장하는, 게이트웨이 장치.
  5. 클라이언트로부터 특정 기능에 대한 수행을 요청하는 수행 요청 정보를 수신하고, 수신한 수행 요청 정보를 메시지로 변환하는 수행 요청 처리 모듈, 및 메시지 큐를 이용하여 상기 수행 요청 처리 모듈로부터 변환된 메시지를 저장하는 큐 모듈을 포함하는 처리 서버; 및
    API(Application Programming Interface) 서버 정보 및 클라이언트 관련 정보가 저장된 데이터베이스 모듈, 상기 큐 모듈로부터 상기 변환된 메시지를 전송받고, 상기 변환된 메시지 및 상기 저장된 API 서버 정보를 기반으로 요청 정보를 생성하는 요청 정보 생성 모듈, 및 상기 생성된 요청 정보 및 상기 저장된 클라이언트 관련 정보를 기반으로 상기 클라이언트에 대한 인증을 수행하는 확인 모듈을 포함하는 관리 서버를 포함하며,
    상기 처리 서버는 상기 특정 기능을 수행하는 API를 제공하는 API 서버로 상기 인증된 요청 정보를 송신하는 라우팅 모듈을 더 포함하며,
    상기 요청 정보 생성 모듈은,
    상기 데이터베이스 모듈의 상태를 모니터링하고, 상기 데이터베이스 모듈에 장애가 발생했는지 여부를 판단하며, 상기 데이터베이스 모듈에 장애가 발생하지 않은 것으로 판단되면, 상기 큐 모듈로부터 전송받은 변환된 메시지 및 상기 저장된 API 서버 정보를 기반으로 상기 요청 정보를 생성하는, 게이트웨이 장치.
  6. 청구항 5에 있어서,
    상기 요청 정보 생성 모듈은,
    상기 데이터베이스 모듈에 장애가 발생한 것으로 판단되면, 상기 큐 모듈로부터 전송받은 변환된 메시지를 파일 큐(file queue)에 저장하는, 게이트웨이 장치.
  7. 청구항 6에 있어서,
    상기 요청 정보 생성 모듈은,
    상기 데이터베이스 모듈이 복구되었는지 확인하고, 상기 데이터베이스 모듈이 복구된 것으로 판단되면, 상기 파일 큐에 상기 변환된 메시지가 저장된 순서대로 상기 클라이언트의 특정 기능에 대한 수행 요청을 확인하고, 상기 저장된 API 서버 정보를 기반으로 상기 특정 기능을 수행하는 API를 호출하기 위한 요청 정보를 생성하는, 게이트웨이 장치.
  8. 수행 요청 처리 모듈에서, 클라이언트로부터 특정 기능에 대한 수행을 요청하는 수행 요청 정보를 수신하고, 수신한 수행 요청 정보를 메시지로 변환하는 단계;
    큐 모듈에서, 메시지 큐를 이용하여 상기 변환된 메시지를 저장하는 단계;
    요청 정보 생성 모듈에서, 상기 변환된 메시지를 전송받고, 상기 변환된 메시지 및 기 저장된 API 서버 정보를 기반으로 요청 정보를 생성하는 단계;
    확인 모듈에서, 상기 생성된 요청 정보 및 기 저장된 클라이언트 관련 정보를 기반으로 상기 클라이언트에 대한 인증을 수행하는 단계; 및
    라우팅 모듈에서, 상기 특정 기능을 수행하는 API를 제공하는 API 서버로 상기 인증된 요청 정보를 송신하는 단계를 포함하며,
    상기 메시지로 변환하는 단계는,
    상기 수행 요청 처리 모듈에서, 상기 큐 모듈의 상태를 모니터링하고, 상기 큐 모듈에 장애가 발생했는지 여부를 판단하는 단계; 및
    상기 수행 요청 처리 모듈에서, 상기 큐 모듈에 장애가 발생하지 않은 것으로 판단되면, 상기 수신한 수행 요청 정보를 메시지로 변환하여 상기 큐 모듈에 저장하는 단계를 더 포함하는, 게이트웨이 장치의 동작 방법.
  9. 삭제
  10. 청구항 8에 있어서,
    상기 메시지로 변환하는 단계는,
    상기 수행 요청 처리 모듈에서, 상기 큐 모듈에 장애가 발생한 것으로 판단되면, 상기 수신한 수행 요청 정보를 파일 큐(file queue)에 저장하는 단계를 더 포함하는, 게이트웨이 장치의 동작 방법.
  11. 청구항 10에 있어서,
    상기 메시지로 변환하는 단계는,
    상기 수행 요청 처리 모듈에서, 상기 큐 모듈이 복구되었는지 확인하는 단계; 및
    상기 수행 요청 처리 모듈에서, 상기 큐 모듈이 복구된 것으로 판단되면, 상기 파일 큐에 상기 수행 요청 정보가 저장된 순서대로 메시지로 변환하여 상기 큐 모듈에 저장하는 단계를 더 포함하는, 게이트웨이 장치의 동작 방법.
  12. 수행 요청 처리 모듈에서, 클라이언트로부터 특정 기능에 대한 수행을 요청하는 수행 요청 정보를 수신하고, 수신한 수행 요청 정보를 메시지로 변환하는 단계;
    큐 모듈에서, 메시지 큐를 이용하여 상기 변환된 메시지를 저장하는 단계;
    요청 정보 생성 모듈에서, 상기 변환된 메시지를 전송받고, 상기 변환된 메시지 및 기 저장된 API 서버 정보를 기반으로 요청 정보를 생성하는 단계;
    확인 모듈에서, 상기 생성된 요청 정보 및 기 저장된 클라이언트 관련 정보를 기반으로 상기 클라이언트에 대한 인증을 수행하는 단계; 및
    라우팅 모듈에서, 상기 특정 기능을 수행하는 API를 제공하는 API 서버로 상기 인증된 요청 정보를 송신하는 단계를 포함하며,
    상기 요청 정보를 생성하는 단계는,
    상기 요청 정보 생성 모듈에서, 데이터베이스 모듈의 상태를 모니터링하고, 상기 데이터베이스 모듈에 장애가 발생했는지 여부를 판단하는 단계; 및
    상기 요청 정보 생성 모듈에서, 상기 데이터베이스 모듈에 장애가 발생하지 않은 것으로 판단되면, 상기 큐 모듈로부터 전송받은 변환된 메시지 및 상기 저장된 API 서버 정보를 기반으로 상기 요청 정보를 생성하는 단계를 더 포함하는, 게이트웨이 장치의 동작 방법.
  13. 청구항 12에 있어서,
    상기 요청 정보를 생성하는 단계는,
    상기 요청 정보 생성 모듈에서, 상기 데이터베이스 모듈에 장애가 발생한 것으로 판단되면, 상기 큐 모듈로부터 전송받은 변환된 메시지를 파일 큐(file queue)에 저장하는 단계를 더 포함하는, 게이트웨이 장치의 동작 방법.
  14. 청구항 13에 있어서,
    상기 요청 정보를 생성하는 단계는,
    상기 요청 정보 생성 모듈에서, 상기 데이터베이스 모듈이 복구되었는지 확인하는 단계;
    상기 요청 정보 생성 모듈에서, 상기 데이터베이스 모듈이 복구된 것으로 판단되면, 상기 파일 큐에 상기 변환된 메시지가 저장된 순서대로 상기 클라이언트의 특정 기능에 대한 수행 요청을 확인하는 단계; 및
    상기 요청 정보 생성 모듈에서, 상기 저장된 API 서버 정보를 기반으로 상기 특정 기능을 수행하는 API를 호출하기 위한 요청 정보를 생성하는 단계를 더 포함하는, 게이트웨이 장치의 동작 방법.
KR1020210186779A 2021-12-24 2021-12-24 게이트웨이 장치 및 그 동작 방법 Active KR102407334B1 (ko)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020210186779A KR102407334B1 (ko) 2021-12-24 2021-12-24 게이트웨이 장치 및 그 동작 방법

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020210186779A KR102407334B1 (ko) 2021-12-24 2021-12-24 게이트웨이 장치 및 그 동작 방법

Publications (1)

Publication Number Publication Date
KR102407334B1 true KR102407334B1 (ko) 2022-06-10

Family

ID=81986238

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020210186779A Active KR102407334B1 (ko) 2021-12-24 2021-12-24 게이트웨이 장치 및 그 동작 방법

Country Status (1)

Country Link
KR (1) KR102407334B1 (ko)

Cited By (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR102483310B1 (ko) * 2022-10-07 2023-01-02 이데아텍(주) Api 통합 처리를 위한 게이트웨이 장치 및 이의 동작 방법
KR102483313B1 (ko) * 2022-10-07 2023-01-02 이데아텍(주) Api 서비스의 일괄 처리를 지원하는 서비스 제공 시스템 및 방법
KR102483315B1 (ko) * 2022-10-07 2023-01-02 이데아텍(주) Api 분산 처리를 지원하는 게이트웨이 장치 및 이의 동작 방법
KR102531860B1 (ko) * 2022-12-20 2023-05-12 주식회사 위베어소프트 Api 설정을 동적으로 적용하는 게이트웨이 장치 및 방법
WO2024005236A1 (ko) * 2022-06-29 2024-01-04 쿠팡 주식회사 정보를 제공하는 방법 및 장치
WO2024005234A1 (ko) * 2022-06-29 2024-01-04 쿠팡 주식회사 정보를 제공하는 방법 및 장치

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR100568178B1 (ko) 2003-07-18 2006-04-05 삼성전자주식회사 게이트웨이 장치 및 그 제어방법
KR20170062244A (ko) * 2015-11-27 2017-06-07 주식회사 비디 Api 관리 장치
KR102262093B1 (ko) * 2020-07-22 2021-06-08 한국과학기술정보연구원 게이트웨이장치 및 그 동작 방법

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR100568178B1 (ko) 2003-07-18 2006-04-05 삼성전자주식회사 게이트웨이 장치 및 그 제어방법
KR20170062244A (ko) * 2015-11-27 2017-06-07 주식회사 비디 Api 관리 장치
KR102262093B1 (ko) * 2020-07-22 2021-06-08 한국과학기술정보연구원 게이트웨이장치 및 그 동작 방법

Cited By (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2024005236A1 (ko) * 2022-06-29 2024-01-04 쿠팡 주식회사 정보를 제공하는 방법 및 장치
WO2024005234A1 (ko) * 2022-06-29 2024-01-04 쿠팡 주식회사 정보를 제공하는 방법 및 장치
KR20240002424A (ko) * 2022-06-29 2024-01-05 쿠팡 주식회사 정보를 제공하는 방법 및 장치
KR20240002425A (ko) * 2022-06-29 2024-01-05 쿠팡 주식회사 정보를 제공하는 방법 및 장치
KR102758760B1 (ko) * 2022-06-29 2025-01-23 쿠팡 주식회사 정보를 제공하는 방법 및 장치
KR102758733B1 (ko) * 2022-06-29 2025-01-23 쿠팡 주식회사 정보를 제공하는 방법 및 장치
KR102483310B1 (ko) * 2022-10-07 2023-01-02 이데아텍(주) Api 통합 처리를 위한 게이트웨이 장치 및 이의 동작 방법
KR102483313B1 (ko) * 2022-10-07 2023-01-02 이데아텍(주) Api 서비스의 일괄 처리를 지원하는 서비스 제공 시스템 및 방법
KR102483315B1 (ko) * 2022-10-07 2023-01-02 이데아텍(주) Api 분산 처리를 지원하는 게이트웨이 장치 및 이의 동작 방법
KR102531860B1 (ko) * 2022-12-20 2023-05-12 주식회사 위베어소프트 Api 설정을 동적으로 적용하는 게이트웨이 장치 및 방법

Similar Documents

Publication Publication Date Title
KR102407334B1 (ko) 게이트웨이 장치 및 그 동작 방법
CN110839087B (zh) 接口调用方法及装置、电子设备和计算机可读存储介质
EP2785013A1 (en) Information processing system
US8533734B2 (en) Application programming interface for managing time sharing option address space
US10762180B2 (en) Broker-based messaging through SQL
CN114979295B (zh) 一种网关管理的方法和装置
CN112202744B (zh) 一种多系统数据通信方法和装置
CN113992755A (zh) 基于微服务网关的请求处理方法、系统、设备及存储介质
US20170302637A1 (en) System, relay client, control method, and storage medium
CN111694620B (zh) 第三方业务的交互方法、装置、设备及计算机存储介质
CN112702336A (zh) 政务服务的安全控制方法、装置、安全网关及存储介质
US20070143481A1 (en) Method and apparatus for communicating data between computer devices
US11943322B2 (en) Interceptor hub for service-consuming applications
CN113051545A (zh) 一种用户认证方法及装置
CN118449989A (zh) 调用业务服务的方法、装置、设备和计算机可读介质
CN114448703B (zh) 请求处理方法、装置、电子设备及存储介质
US20230419067A1 (en) ENHANCED QUICK RESPONSE (qr) CODE SCAN SECURITY
CN116723029A (zh) 一种访问控制方法、装置、设备、存储介质
KR102461836B1 (ko) 챗봇 연결 장치 및 방법
CN112929453A (zh) 一种共享session数据的方法和装置
KR102439777B1 (ko) 메시징 서비스 제공 장치 및 방법
US12192308B2 (en) Interceptor hub for service-consuming applications
US11755397B2 (en) Systems and methods for processing of messages subject to dead letter queues in representational state transfer architectures to prevent data loss in cloud-based computing environments
KR102286029B1 (ko) 인증 방법과 이를 수행하기 위한 사용자 단말 및 인증 서버
CN112261659B (zh) 终端和服务器的控制方法、装置、终端和存储介质

Legal Events

Date Code Title Description
PA0109 Patent application

Patent event code: PA01091R01D

Comment text: Patent Application

Patent event date: 20211224

PA0201 Request for examination
PA0302 Request for accelerated examination

Patent event date: 20211229

Patent event code: PA03022R01D

Comment text: Request for Accelerated Examination

Patent event date: 20211224

Patent event code: PA03021R01I

Comment text: Patent Application

PE0902 Notice of grounds for rejection

Comment text: Notification of reason for refusal

Patent event date: 20220214

Patent event code: PE09021S01D

E701 Decision to grant or registration of patent right
PE0701 Decision of registration

Patent event code: PE07011S01D

Comment text: Decision to Grant Registration

Patent event date: 20220502

GRNT Written decision to grant
PR0701 Registration of establishment

Comment text: Registration of Establishment

Patent event date: 20220607

Patent event code: PR07011E01D

PR1002 Payment of registration fee

Payment date: 20220607

End annual number: 3

Start annual number: 1

PG1601 Publication of registration