KR102522910B1 - 프록시 방식의 서비스 지속성 보장 시스템 및 방법 - Google Patents

프록시 방식의 서비스 지속성 보장 시스템 및 방법 Download PDF

Info

Publication number
KR102522910B1
KR102522910B1 KR1020220189788A KR20220189788A KR102522910B1 KR 102522910 B1 KR102522910 B1 KR 102522910B1 KR 1020220189788 A KR1020220189788 A KR 1020220189788A KR 20220189788 A KR20220189788 A KR 20220189788A KR 102522910 B1 KR102522910 B1 KR 102522910B1
Authority
KR
South Korea
Prior art keywords
queue
server
order information
threshold
management server
Prior art date
Application number
KR1020220189788A
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 KR1020220189788A priority Critical patent/KR102522910B1/ko
Application granted granted Critical
Publication of KR102522910B1 publication Critical patent/KR102522910B1/ko

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/59Providing operational support to end devices by off-loading in the network or by emulation, e.g. when they are unavailable
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/01Protocols
    • H04L67/10Protocols in which an application is distributed across nodes in the network
    • H04L67/1095Replication or mirroring of data, e.g. scheduling or transport for data synchronisation between network nodes
    • 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
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/08Key distribution or management, e.g. generation, sharing or updating, of cryptographic keys or passwords
    • H04L9/0861Generation of secret information including derivation or calculation of cryptographic keys or passwords

Abstract

프록시 방식의 서비스 지속성 보장 시스템 및 방법이 제공된다. 상기 시스템은, 복수의 클라이언트 장치로부터 수신되는 각각의 접속 요청의 대기열을 처리하되, 상기 접속 요청의 대기량이 기 설정된 제1 임계치를 초과하는 시점까지 상기 대기열을 처리하는 타겟 서버, 상기 대기량이 상기 제1 임계치를 초과하면, 상기 타겟 서버 대신 상기 대기열을 처리하되, 상기 대기량이 기 설정된 제2 임계치를 초과하는 시점까지 상기 대기열을 처리하는 대기열 관리 서버 및 상기 대기량이 상기 제2 임계치를 초과하면, 상기 대기열 관리 서버 대신 상기 대기열을 처리하는 미러(Mirror) 서버를 포함한다.

Description

프록시 방식의 서비스 지속성 보장 시스템 및 방법{SYSTEM AND METHOD FOR ENSURING SERVICE CONTINUITY OF PROXY}
본 개시는 프록시 방식의 서비스 지속성 보장 시스템 및 방법에 관한 것이다.
수강신청, 콘서트 예약 및 구매 이벤트 등의 콘텐츠 서비스를 제공하는 서비스 서버의 동시 접속자가 증가함에 따라, 콘텐츠 서비스를 제공하는 서비스 서버측의 응답속도가 저하되거나 서비스가 중단되는 등의 상황이 종종 발생하고 있는 실정이다.
시스템은 HTML(hypertext markup language)로 구성된 웹 페이지를 제공하는 WEB, WEB으로부터 전달된 요청 메시지에 대한 응용 프로그램 서비스를 처리하는 WAS(Web Application Server) 및 쿼리문에 대한 응답으로 제공할 수 있는 데이터를 저장하는 데이터베이스로 구성될 수 있다.
상술한 시스템에서, 동시 접속자가 폭주하는 경우, WEB은 네트워크 대역폭 부족으로 인해 응답시간이 지연되는 현상이 발생할 수 있다.
대한민국 등록특허공보 제10-1654266호 (2016. 08. 30.)
본 개시에 개시된 실시예는 프록시 방식의 서비스 지속성 보장 시스템 및 방법을 제공하는데 그 목적이 있다.
본 개시가 해결하고자 하는 과제들은 이상에서 언급된 과제로 제한되지 않으며, 언급되지 않은 또 다른 과제들은 아래의 기재로부터 통상의 기술자에게 명확하게 이해될 수 있을 것이다.
상술한 기술적 과제를 달성하기 위한 본 개시의 일 측면에 따른 프록시 방식의 서비스 지속성 보장 시스템은, 복수의 클라이언트 장치로부터 수신되는 각각의 접속 요청의 대기열을 처리하되, 상기 접속 요청의 대기량이 기 설정된 제1 임계치를 초과하는 시점까지 상기 대기열을 처리하는 타겟 서버, 상기 대기량이 상기 제1 임계치를 초과하면, 상기 타겟 서버 대신 상기 대기열을 처리하되, 상기 대기량이 기 설정된 제2 임계치를 초과하는 시점까지 상기 대기열을 처리하는 대기열 관리 서버 및 상기 대기량이 상기 제2 임계치를 초과하면, 상기 대기열 관리 서버 대신 상기 대기열을 처리하는 미러(Mirror) 서버를 포함하고, 상기 제1 임계치는, 상기 타겟 서버의 대기열 처리 용량의 임계치이고, 상기 제2 임계치는, 상기 대기열 관리 서버의 대기열 처리 용량의 임계치일 수 있다.
또한, 상기 타겟 서버는, 접근 확인기(Checker)를 포함하고, 상기 접근 확인기는, 상기 타겟 서버가 관리하는 대기열, 상기 대기열 관리 서버가 관리하는 대기열 및 상기 미러 서버가 관리하는 대기열에 포함된 모든 접근 요청에 대해 키(Key) 기반의 검증을 순차적으로 수행할 수 있다.
또한, 상기 타겟 서버가 관리하는 대기열 및 상기 대기열 관리 서버가 관리하는 대기열에 포함된 접근 요청에 대해서는 상기 대기열 관리 서버에 포함된 제1 암호화기에 의해 생성된 키가 발급되고, 상기 미러 서버가 관리하는 대기열에 포함된 접근 요청에 대해서는, 상기 미러 서버에 포함된 제2 암호화기에 의해 생성된 키가 발급되며, 상기 제1 암호화기 및 상기 제2 암호화기는, 동기화될 수 있다.
또한, 상기 제1 암호화기 및 상기 제2 암호화기는, 동일한 공개키를 이용하여 상기 키를 생성하고, 상기 공개키는, 기 설정된 주기마다 변경될 수 있다.
또한, 상기 타겟 서버, 상기 대기열 관리 서버 및 상기 미러 서버 각각은, 큐 매니저(Que Manager)를 포함하고, 상기 접속 요청은, 상기 대기열 관리 서버에 수신된 차례대로 순서 정보가 부여될 수 있다.
또한, 상기 제1 임계치를 초과하는 시점 이전까지 수신된 접속 요청의 대기열은, 상기 타겟 서버에 포함된 제1 큐 매니저를 통해 차례대로 상기 순서 정보가 부여되고, 상기 제1 임계치를 초과한 시점부터 수신된 접속 요청의 대기열은, 상기 대기열 관리 서버에 포함된 제2 큐 매니저를 통해 차례대로 상기 순서 정보가 부여되되, 상기 제1 큐 매니저를 통해 마지막으로 부여된 순서 정보에 해당하는 순서의 다음 순서부터 차례대로 상기 순서 정보가 부여되고, 상기 제2 임계치를 초과한 시점부터 수신된 접속 요청의 대기열은, 상기 미러 서버에 포함된 제3 큐 매니저를 통해 차례대로 상기 순서 정보가 부여되되, 상기 제2 큐 매니저를 통해 마지막으로 부여된 순서 정보에 해당하는 순서의 다음 순서부터 차례대로 상기 순서 정보가 부여될 수 있다.
또한, 상기 제1 임계치를 초과한 이후에 상기 대기량이 다시 상기 제1 임계치 이내가 되면, 상기 제1 큐 매니저가 상기 제1 큐 매니저, 상기 제2 큐 매니저 및 상기 제3 큐 매니저 중 적어도 하나에 의해 부여된 순서 정보에 기초하여 마지막으로 부여된 순서 정보에 해당하는 순서의 다음 순서부터 차례대로 상기 순서 정보를 부여할 수 있다.
또한, 상기 미러 서버는, 상기 대기열 관리 서버와 동일한 구성요소를 포함하여 대기열 관리를 수행할 수 있다.
또한, 상술한 기술적 과제를 달성하기 위한 본 개시의 다른 측면에 따른 타겟 서버, 대기열 관리 서버 및 미러(Mirror) 서버를 포함하는 시스템에 의해 수행되는 프록시 방식의 서비스 지속성 보장 방법은, 상기 타겟 서버가 복수의 클라이언트 장치로부터 수신되는 각각의 접속 요청의 대기열을 처리하되, 상기 접속 요청의 대기량이 기 설정된 제1 임계치를 초과하는 시점까지 상기 대기열을 처리하는 단계, 상기 대기량이 상기 제1 임계치를 초과하면, 상기 대기열 관리 서버가 상기 타겟 서버 대신 상기 대기열을 처리하되, 상기 대기량이 기 설정된 제2 임계치를 초과하는 시점까지 상기 대기열을 처리하는 단계 및 상기 대기량이 상기 제2 임계치를 초과하면, 상기 미러 서버가 상기 대기열 관리 서버 대신 상기 대기열을 처리하는 단계를 포함하고, 상기 제1 임계치는, 상기 타겟 서버의 대기열 처리 용량의 임계치이고, 상기 제2 임계치는, 상기 대기열 관리 서버의 대기열 처리 용량의 임계치일 수 있다.
이 외에도, 본 개시를 구현하기 위한 실행하기 위한 컴퓨터 판독 가능한 기록 매체에 저장된 컴퓨터 프로그램이 더 제공될 수 있다.
이 외에도, 본 개시를 구현하기 위한 방법을 실행하기 위한 컴퓨터 프로그램을 기록하는 컴퓨터 판독 가능한 기록 매체가 더 제공될 수 있다.
본 개시의 전술한 과제 해결 수단에 의하면, 접속 요청의 대기량이 앞단의 서버의 처리 용량을 넘어서면, 뒷단의 서버가 대신 대기열을 처리해주도록 함으로써, 즉 타겟 서버→대기열 관리 서버→미러 서버의 순으로 대기열을 처리하도록 함으로써, 서비스를 끊김 없이 제공할 수 있다.
본 개시의 효과들은 이상에서 언급된 효과로 제한되지 않으며, 언급되지 않은 또 다른 효과들은 아래의 기재로부터 통상의 기술자에게 명확하게 이해될 수 있을 것이다.
도 1은 본 개시의 실시예에 따른 프록시 방식의 서비스의 지속성을 보장하기 위한 시스템을 개략적으로 도시한 도면이다.
도 2는 본 개시의 실시예에 따른 시스템의 구성요소들을 구체적으로 설명하기 위한 블록도이다.
도 3은 본 개시의 실시예에 따른 프록시 방식의 서비스 지속성 보장 방법의 순서도이다.
도 4는 본 개시의 실시예에 따른 접속 요청 처리에 따라 순서 정보를 부여하는 것을 설명하기 위한 예시도이다.
본 개시 전체에 걸쳐 동일 참조 부호는 동일 구성요소를 지칭한다. 본 개시가 실시예들의 모든 요소들을 설명하는 것은 아니며, 본 개시가 속하는 기술분야에서 일반적인 내용 또는 실시예들 간에 중복되는 내용은 생략한다. 명세서에서 사용되는 ‘부, 모듈, 부재, 블록’이라는 용어는 소프트웨어 또는 하드웨어로 구현될 수 있으며, 실시예들에 따라 복수의 '부, 모듈, 부재, 블록'이 하나의 구성요소로 구현되거나, 하나의 '부, 모듈, 부재, 블록'이 복수의 구성요소들을 포함하는 것도 가능하다.
명세서 전체에서, 어떤 부분이 다른 부분과 "연결"되어 있다고 할 때, 이는 직접적으로 연결되어 있는 경우뿐 아니라, 간접적으로 연결되어 있는 경우를 포함하고, 간접적인 연결은 무선 통신망을 통해 연결되는 것을 포함한다.
또한 어떤 부분이 어떤 구성요소를 "포함"한다고 할 때, 이는 특별히 반대되는 기재가 없는 한 다른 구성요소를 제외하는 것이 아니라 다른 구성요소를 더 포함할 수 있는 것을 의미한다.
명세서 전체에서, 어떤 부재가 다른 부재 "상에" 위치하고 있다고 할 때, 이는 어떤 부재가 다른 부재에 접해 있는 경우뿐 아니라 두 부재 사이에 또 다른 부재가 존재하는 경우도 포함한다.
제 1, 제 2 등의 용어는 하나의 구성요소를 다른 구성요소로부터 구별하기 위해 사용되는 것으로, 구성요소가 전술된 용어들에 의해 제한되는 것은 아니다.
단수의 표현은 문맥상 명백하게 예외가 있지 않는 한, 복수의 표현을 포함한다.
각 단계들에 있어 식별부호는 설명의 편의를 위하여 사용되는 것으로 식별부호는 각 단계들의 순서를 설명하는 것이 아니며, 각 단계들은 문맥상 명백하게 특정 순서를 기재하지 않는 이상 명기된 순서와 다르게 실시될 수 있다.
이하 첨부된 도면들을 참고하여 본 개시의 작용 원리 및 실시예들에 대해 설명한다.
본 명세서에서 '서버'는 연산처리를 수행하여 사용자에게 결과를 제공할 수 있는 다양한 장치들이 모두 포함된다. 예를 들어, 본 개시에 따른 서버는, 컴퓨터, 서버 장치 및 휴대용 단말기를 모두 포함하거나, 또는 어느 하나의 형태가 될 수 있다.
여기에서, 상기 컴퓨터는 예를 들어, 웹 브라우저(WEB Browser)가 탑재된 노트북, 데스크톱(desktop), 랩톱(laptop), 태블릿 PC, 슬레이트 PC 등을 포함할 수 있다.
상기 서버 장치는 외부 장치와 통신을 수행하여 정보를 처리하는 서버로써, 애플리케이션 서버, 컴퓨팅 서버, 데이터베이스 서버, 파일 서버, 게임 서버, 메일 서버, 프록시 서버 및 웹 서버 등을 포함할 수 있다.
상기 휴대용 단말기는 예를 들어, 휴대성과 이동성이 보장되는 무선 통신 장치로서, PCS(Personal Communication System), GSM(Global System for Mobile communications), PDC(Personal Digital Cellular), PHS(Personal Handyphone System), PDA(Personal Digital Assistant), IMT(International Mobile Telecommunication)-2000, CDMA(Code Division Multiple Access)-2000, W-CDMA(W-Code Division Multiple Access), WiBro(Wireless Broadband Internet) 단말, 스마트 폰(Smart Phone) 등과 같은 모든 종류의 핸드헬드(Handheld) 기반의 무선 통신 장치와 시계, 반지, 팔찌, 발찌, 목걸이, 안경, 콘택트 렌즈, 또는 머리 착용형 장치(head-mounted-device(HMD) 등과 같은 웨어러블 장치를 포함할 수 있다.
기존의 프록시 방식의 서비스는 프록시 서버가 클라이언트 장치와 서비스 서버 사이에 위치하여 클라이언트 장치의 서비스 서버로의 요청(Request) 및 서비스 서버의 클라이언트 장치로의 응답(Response)을 중계하는 방식으로 이루어지는데, 이때 서비스 서버의 용량을 초과하는 수준의 요청이 동시에 들어오게 되면 프록시 서버에 오류가 발생하여 서비스가 중단되는 문제가 있다. 이에, 본 개시는 도 1 내지 도 4를 참조하여 프록시 방식의 서비스를 끊김 없이 지속적으로 제공할 수 있는 해결방안을 제시하고자 한다.
도 1은 본 개시의 실시예에 따른 프록시 방식의 서비스의 지속성을 보장하기 위한 시스템을 개략적으로 도시한 도면이다.
도 1을 참조하면, 본 개시의 시스템은 타겟 서버(10), 대기열 관리 서버(20), 미러 서버(30) 및 클라이언트 장치(40)를 포함할 수 있다. 다만, 몇몇 실시예에서 시스템은 도 1에 도시된 구성요소보다 더 적은 수의 구성요소나 더 많은 수의 구성요소를 포함할 수도 있다.
타겟 서버(10)는 웹 사이트 또는 웹 페이지를 통해 사용자에게 웹 서비스를 제공할 수 있다. 웹 서비스는, 상품 판매 서비스, 수강 신청 서비스, 공연 예매 서비스를 포함할 수 있지만, 이에 제한되는 것은 아니다.
타겟 서버(10)는 클라우드 환경(AWS)에서 웹 서비스를 제공할 수 있도록 리소스를 할당하고 관리하는 서비스 서버로서, CSP, MSP 등의 클라우드 사업자에 의해 운용된다.
도 1에 도시되지는 않았지만, 타겟 서버(30)는 웹(web) 서버, 웹 애플리케이션 서버(web application server, 이하, WAS라고 하기로 함) 및 데이터베이스(DB)를 포함할 수 있다. 이때, 데이터베이스는 데이터베이스 관리 시스템(database management system, DBMS)이라 하는 것도 가능하다.
웹 서버는 HTTP(hypertext transfer protocol) 프로토콜을 기반으로 웹 브라우저 또는 웹 크롤러와 같은 클라이언트 장치의 요청을 주로 처리하는 서버를 의미하는 것으로, HTTP 요청(request)을 수신하면 이에 대한 HTTP 응답(response)을 회신할 수 있다.
예를 들어, 웹 서버는 파일 경로 이름을 수신하여 경로와 일치하는 정적(static)인 형태의 파일 콘텐츠(html, jpeg, css 등)를 반환할 수 있다.
웹 서버는 동적인 컨텐츠 제공을 위한 요청을 WAS로 전달하고, 이에 대한 처리 결과를 WAS로부터 수신하여 클라이언트 장치에게 전달할 수 있다.
WAS는 HTTP를 이용한 애플리케이션 서버를 의미하는 것으로, 정적인 HTTP 데이터 처리에 특화된 웹 서버에 동적인 데이터를 이용할 수 있도록 하는 컨테이너(container)를 포함할 수 있다.
WAS는 데이터베이스 조회나 다양한 로직 처리를 요구하는 동적인 컨텐츠를 제공하기 위한 애플리케이션 서버일 수 있다. 상기, WAS는 HTTP를 통해 컴퓨터나 장치에 애플리케이션을 수행하여 주는 미들웨어(소프트웨어 엔진)일 수 있다. WAS는 웹 컨테이너(web container) 또는 서블릿 컨테이너(servlet container)라고 명명하는 것도 가능하다. 이때, 컨테이너는 JSP 및 Servlet을 실행시킬 수 있는 소프트웨어를 의미할 수 있다.
WAS는 분산 트랜잭션, 보안, 메시징, 스레드 처리 등의 기능을 처리하는 분산 환경에서 적용될 수 있다.
구체적으로, WAS는 프로그램 실행 환경과 데이터베이스의 접속 기능 및 다수의 트랜잭션 관리 기능을 구현할 수 있다. 상기 트랜잭션은 논리적인 작업 단위를 의미할 수 있다.
WAS는 사용자의 요청에 따라 데이터베이스로부터 해당 데이터를 수신하여, 비즈니스 로직에 맞게 실시간으로 결과를 생성하여 제공할 수 있다. 상기 WAS는 복수 개로 구현될 수 있으며, 각 대기열 관리 서버(30)마다 적용하는 WAS의 개수가 상이할 수 있다.
데이터베이스는 데이터를 저장 및 관리하는 구성을 의미할 수 있다. 이때, 데이터베이스는 WAS의 요청에 따라 해당 데이터를 회신할 수 있다.
대기열 관리 서버(20)는 타겟 서버(10)와 클라이언트 장치(40) 사이에 위치하여, 클라이언트 장치(40)의 타겟 서버(10)로의 진입을 관리할 수 있다.
대기열 관리 서버(20)는 타겟 서버(10)로의 진입을 요청하는 클라이언트 장치(40)에 대해 진입 허용 관리의 절차를 수행할 수 있다.
상기 진입 허용 관리는 타겟 서버(10)로의 진입을 위한 정상적인 대기 관리를 의미하는 것으로서, 진입 허용 수(처리 용량)를 기초로 진입을 제어하여 콘텐츠 서비스를 제공하는 타겟 서버(10)의 리소스 또는 상태를 관리하는 절차를 의미할 수 있다.
이때, 진입 허용 수는 대기열 관리 서버(20)의 키(key)를 발급받아 해당 시간에 타겟 서버(10)의 특정 트랜잭션(예를 들어, 로그인 버튼, 구매 버튼, 결제 버튼 등)에 동시 진입이 가능한 사용자 수를 의미할 수 있다. 이때, 사용자 수는 실질적으로 타겟 서버(10)로 진입할 수 있는 클라이언트 장치(40) 수를 의미할 수 있다.
예를 들어, 상품 구매 서비스를 제공하는 타겟 서버(10)로의 진입 허용 수가 50명이고, 55명이 동일 시간에 동일 상품에 대한 구매 버튼을 선택한 경우, 대기열 관리 서버(10)는 50명에 대해서는 타겟 서버(10)로의 동시 입장이 가능하도록 하나, 5명에 대해서는 대기열에 배치될 수 있도록 처리할 수 있다.
즉, 기존에는 타겟 서버(10)에서 처리할 수 없는 대기열에 대해서는 대기열 관리 서버(20)가 대신 관리해주고, 타겟 서버(10)가 접속 요청(접근 요청)에 대한 처리를 순차적으로 수행함에 따라, 대기열 관리 서버(20)의 대기열에 배치되었던 접속 요청에 대해서 순차적으로 타겟 서버(10)로의 진입을 허용해주었다.
그러나, 타겟 서버(10)로의 접속 요청이 동시에 폭주하는 경우, 즉 대기열 관리 서버(20)도 감당할 수 없는 정도의 접속 요청이 동시에 발생하는 경우, 과부하 상태로 인해 서비스가 중단되는 문제가 있었다. 따라서, 본 개시에서는 대기열 관리 서버(20)를 미러링하는 미러 서버(30)를 이용하여 대기열 관리 서버(2)의 처리 용량을 초과하는 접속 요청에 대해서 미러 서버(30)가 대기열을 관리하도록 한다.
클라이언트 장치(40)는 타겟 서버(30)가 제공하는 웹 서비스를 이용하는 사용자의 단말로서, 적어도 하나 이상일 수 있다. 예를 들어, 사용자는 자신의 단말을 통해 특정 상품을 구매하거나, 수강 신청을 하거나, 특정 공연을 예매할 수 있다.
클라이언트 장치(40)는 특정 웹 사이트 또는 그 특정 웹 사이트 내의 특정 웹 페이지에 대한 접속 요청을 대기열 관리 서버(20)로 송신한다.
한편, 클라이언트 장치(40)는 대기열 관리 서버(20)로부터 대기 정보를 수신하고, 그 대기열 관리 서버(20)에 의해 접속이 허용되면 특정 웹 사이트 또는 그 특정 웹 사이트 내의 특정 웹 페이지에 접속한다. 이로써, 그 사용자는 웹 서비스를 이용할 수 있게 된다.
클라이언트 장치(40)는 사용자가 원하는 다수의 응용 프로그램(즉, 애플리케이션)을 설치하여 실행할 수 있는 컴퓨터, UMPC(Ultra Mobile PC), 워크스테이션, 넷북(net-book), PDA(Personal Digital Assistants), 포터블(portable) 컴퓨터, 웹 테블릿(web tablet), 무선 전화기(wireless phone), 모바일 폰(mobile phone), 스마트 폰(smart phone), 패드(Pad), 스마트 워치(Smart watch), 웨어러블(wearable) 단말, e-북(e-book), PMP(portable multimedia player), 휴대용 게임기, 네비게이션(navigation) 장치, 블랙 박스(black box) 또는 디지털 카메라(digital camera), 기타 이동통신 단말 등일 수 있다. 즉, 클라이언트 장치(40)는 다양한 형태로 구비될 수 있으며, 도 1에 도시된 단말의 형태만으로 한정되지 않는다.
도 2는 본 개시의 실시예에 따른 시스템의 구성요소들을 구체적으로 설명하기 위한 블록도이다.
타겟 서버(10)는 제1 큐 매니저(Queue Manager)(11) 및 접근 확인기(Checker)(12)를 포함할 수 있다. 다만, 몇몇 실시예에서 타겟 서버(10)는 도 2에 도시된 구성요소보다 더 적은 수의 구성요소나 더 많은 수의 구성요소를 포함할 수도 있다.
제1 큐 매니저(11)는 타겟 서버(10)에 진입한 접근 요청들의 대기열을 관리할 수 있다. 구체적으로, 제1 큐 매니저(11)는 상기 접근 요청들을 진입한 순서대로 순서 정보를 부여하여 대기열에 배치시킬 수 있다. 또한, 제1 큐 매니저(11)는 대기열 관리 서버(20) 및 미러 서버(30) 중 적어도 하나의 대기열의 순서 정보에 기초하여 접근 요청들에 순서대로 순서 정보를 부여하고 대기열에 배치시킬 수 있다. 이를 위해서, 제1 큐 매니저(11), 제2 큐 매니저(21) 및 제3 큐 매니저(31)는 동기화될 수 있다.
상술한 바와 같이, 타겟 서버(10)는 진입 허용 수(이하, 제1 임계치)가 설정되어 있어, 제1 임계치에 해당하는 개수의 접근 요청에 대해서만 대기열 관리를 직접 수행할 수 있다. 예를 들어, 동시에 100개의 접근 요청이 발생하였고, 제1 임계치가 50인 경우, 타겟 서버(10)는 100개 중 50개에 대해서만 순서 정보를 차례대로 부여하여 대기열을 관리할 수 있다.
접근 확인기(Checker)(12)는 타겟 서버(10), 대기열 관리 서버(20) 및 미러 서버(30) 중 적어도 하나의 대기열에서 대기 중인 접근 요청들에 대한 검증을 순차적으로 수행할 수 있다. 구체적으로, 접근 확인기(12)는 각 접근 요청에 발급된 키를 확인하여 정상적인 접근임을 검증할 수 있다. 이렇게 검증이 완료된 접근 요청에 대해서는 해당 클라이언트 장치(40)로 타겟 서버(10)로부터의 응답을 송신을 수 있다.
대기열 관리 서버(20)는 제2 큐 매니저(Queue Manager)(21), 제1 암호화기(22) 및 바이패스 게이트(23)를 포함할 수 있다. 다만, 몇몇 실시예에서 대기열 관리 서버(20)는 도 2에 도시된 구성요소보다 더 적은 수의 구성요소나 더 많은 수의 구성요소를 포함할 수도 있다.
제2 큐 매니저(21)는 타겟 서버(10)에 진입하지 못한 접근 요청들의 대기열을 관리할 수 있다. 상술한 바와 같이, 동시에 100개의 접근 요청이 발생하였고, 제1 임계치가 50인 경우, 타겟 서버(10)는 100개 중 50개에 대해서만 대기열을 관리할 수 있다. 그리고, 51번째 접근 요청부터는 제2 큐 매니저(21)에서 관리될 수 있다.
구체적으로, 제2 큐 매니저(21)는 타겟 서버(10) 및 미러 서버(30) 중 적어도 하나의 대기열의 순서 정보에 기초하여 접근 요청들에 순서대로 순서 정보를 부여하고 대기열에 배치시킬 수 있다. 이를 위해서, 제1 큐 매니저(11), 제2 큐 매니저(21) 및 제3 큐 매니저(31)는 동기화될 수 있다. 즉, 동기화를 통해 제2 큐 매니저(21)는 타겟 서버(10)의 대기열에서 마지막 접근 요청의 순서가 50번째임을 알고, 자신이 관리하는 대기열의 첫번째 접근 요청의 순서 정보를 51번으로 부여할 수 있다.
상술한 바와 같이, 대기열 관리 서버(20)는 처리 용량(이하, 제2 임계치)이 설정되어 있어, 제2 임계치에 해당하는 개수의 접근 요청에 대해서만 대기열 관리를 수행할 수 있다. 예를 들어, 동시에 100개의 접근 요청이 발생하였고, 제1 임계치가 50이고, 제2 임계치가 30인 경우, 타겟 서버(10)는 100개 중 50개에 대해서만 순서 정보(1번~50번)를 부여하여 대기열을 관리하고, 대기열 관리 서버(20)는 그 다음 30개에 대해서만 순서 정보(51번~80번)를 부여하여 대기열을 관리
제1 암호화기(22)는 타겟 서버(10) 및 대기열 관리 서버(20)에서 관리하는 접근 요청에 대한 키 발급 및 키 회수 기능을 수행할 수 있다. 구체적으로, 제1 암호화기(22)는 타겟 서버(30)의 제1 임계치 및 대기열 관리 서버(20)의 제2 임계치를 합한 수에 해당하는 접속 요청에 대해서만 키를 발급할 수 있다. 이후에, 제1 암호화기(22)에 의해 키가 발급된 접속 요청에 대한 처리(검증 및 실행)가 완료되면, 제1 암호화기(22)는 해당 접속 요청에 발급됐었던 키를 회수할 수 있다.
바이패스 게이트(23)는 타겟 서버(10)에 진입하지 못한 접근 요청들 중 대기열 관리 서버(20)가 처리할 수 없는 접근 요청들을 미러 서버(30)로 전달하는 통로 역할을 수행할 수 있다. 예를 들어, 동시에 100개의 접근 요청이 발생하였고, 제1 임계치가 50이고, 제2 임계치가 30인 경우, 100개 중 50개는 타겟 서버(10)가 대기열을 관리하고, 나머지 50개 중 30개는 대기열 관리 서버(20)가 대기열을 관리할 수 있다. 그리고 나머지 20개는 바이패스 게이트(23)를 통해 미러 서버(30)로 전달되어 미러 서버(30)에서 관리될 수 있다.
미러 서버(30)는 제3 큐 매니저(Queue Manager)(31) 및 제2 암호화기(32)를 포함할 수 있다. 다만, 몇몇 실시예에서 미러 서버(30)는 도 2에 도시된 구성요소보다 더 적은 수의 구성요소나 더 많은 수의 구성요소를 포함할 수도 있다.
제3 큐 매니저(31)는 상술한 바와 같이, 대기열 관리 서버(20)에서도 처리하지 못한 접근 요청들의 대기열을 관리할 수 있다.
구체적으로, 제3 큐 매니저(21)는 타겟 서버(10) 및 대기열 관리 서버(20) 중 적어도 하나의 대기열의 순서 정보에 기초하여 접근 요청들에 순서대로 순서 정보를 부여하고 대기열에 배치시킬 수 있다. 이를 위해서, 제1 큐 매니저(11), 제2 큐 매니저(21) 및 제3 큐 매니저(31)는 동기화될 수 있다. 즉, 동기화를 통해 제3 큐 매니저(31)는 대기열 관리 서버(20)의 대기열에서 마지막 접근 요청의 순서가 80번째임을 알고, 자신이 관리하는 대기열의 첫번째 접근 요청의 순서 정보를 81번으로 부여할 수 있다.
제2 암호화기(32)는 미러 서버(30)에서 관리하는 접근 요청에 대한 키 발급 및 키 회수 기능을 수행할 수 있다. 구체적으로, 제2 암호화기(32)는 미러 서버(30)의 처리 용량 해당하는 접속 요청에 대해서만 키를 발급할 수 있다. 이후에, 제2 암호화기(32)에 의해 키가 발급된 접속 요청에 대한 처리(검증 및 실행)가 완료되면, 제2 암호화기(32)는 해당 접속 요청에 발급됐었던 키를 회수할 수 있다.
이하에서는, 도 3 및 도 4를 참조하여, 처리 용량의 임계치에 따라 타겟 서버(10), 대기열 관리 서버(20) 및 미러 서버(30)가 순차적으로 대기열 관리를 수행하는 방법에 대해서 설명하도록 한다.
도 3은 본 개시의 실시예에 따른 프록시 방식의 서비스 지속성 보장 방법의 순서도이다. 도 4는 본 개시의 실시예에 따른 접속 요청 처리에 따라 순서 정보를 부여하는 것을 설명하기 위한 예시도이다.
본 개시에 따른 방법은 타겟 서버(10), 대기열 관리 서버(20) 및 미러 서버(30)를 포함하는 시스템에 의해 수행될 수 있지만, 이에 제한되지 않고 타겟 서버(10), 대기열 관리 서버(20) 및 미러 서버(30) 중 적어도 하나의 서버에 의해 수행될 수도 있다.
도 3을 참조하면, 타겟 서버(10)는 복수의 클라이언트 장치로부터 수신되는 각각의 접속 요청의 대기열을 처리하되, 상기 접속 요청의 대기량이 기 설정된 제1 임계치를 초과하는 시점까지 상기 대기열을 처리할 수 있다(S110).
복수의 클라이언트 장치(40)의 접속 요청은 대기열 관리 서버(20)로 송신될 수 있다. 그리고, 이러한 접속 요청은 대기열 관리 서버(20)로 송신된 차례대로 순서 정보가 부여되는데, 이때 타겟 서버(10)에 포함된 제1 큐 매니저(11), 대기열 관리 서버(20)에 포함된 제2 큐 매니저(21) 및 미러 서버(30)에 포함된 제3 큐 매니저(31) 중 어느 하나에 의해서 순서 정보가 부여될 수 있다. 이에 대해서는 후술하도록 한다.
대기열 관리 서버(20)는 타겟 서버(10)의 상태에 따라(대기열 처리 용량이 남았는지의 여부) 클라이언트 장치의 타겟 서버로의 진입 여부를 판단할 수 있다. 즉, 대기열 관리 서버(20)는 타겟 서버(10)의 대기열 처리 용량의 임계치(제1 임계치)가 초과되기 전까지는 접근 요청의 진입을 허용할 수 있다.
타겟 서버(10)는 제1 큐 매니저(11)를 통해 제1 임계치를 초과하는 시점 이전까지 수신된 접속 요청들에 차례대로 순서 정보를 부여하여 대기열 관리를 수행할 수 있다.
예를 들어, 제1 임계치가 50인 경우, 제1 큐 매니저(11)는 대기열에 포함된 접속 요청에 대해 순차적으로 1번부터 50번까지의 순서 정보를 부여할 수 있다.
상기 대기량이 제1 임계치를 초과하면, 대기열 관리 서버(20)가 상기 타겟 서버(10) 대신 상기 대기열을 처리하되, 상기 대기량이 기 설정된 제2 임계치를 초과하는 시점까지 상기 대기열을 처리할 수 있다(S120).
대기열 관리 서버(20)는 타겟 서버(10)의 상태에 따라(대기열 처리 용량이 남았는지의 여부) 클라이언트 장치의 타겟 서버로의 진입 여부를 판단할 수 있다. 즉, 대기열 관리 서버(20)는 타겟 서버(10)의 대기열 처리 용량의 임계치(제1 임계치)가 초과되면 해당 시점부터의 접근 요청에 대해서는 타겟 서버로의 진입을 허용하지 않는다.
제1 임계치를 초과한 시점부터 수신된 접속 요청(진입이 허용되지 않은 접근 요청) 중에서 대기열 관리 서버(20)의 대기열 처리 용량의 임계치(제2 임계치)가 초과되기 전까지 수신된 접근 요청에 대해서, 대기열 관리 서버(20)는 제2 큐 매니저(21)를 통해 차례대로 순서 정보를 부여하여 대기열 관리를 수행할 수 있다.
그리고, 제2 큐 매니저(21)는 순서 정보를 부여할 때, 제1 큐 매니저(11)를 통해 마지막으로 부여된 순서 정보에 해당하는 순서의 다음 순서부터 차례대로 순서 정보를 부여할 수 있다.
예를 들어, 타겟 서버(10)의 대기열에서 마지막 접속 요청에 50번의 순서 정보가 부여되었다면, 제2 큐 매니저(21)는 51번을 시작으로 순서 정보를 부여할 수 있다.
상기 대기량이 제2 임계치를 초과하면, 미러 서버(30)가 대기열 관리 서버(20) 대신 상기 대기열을 처리할 수 있다(S130). 여기서, 미러 서버(30)는 대기열 관리 서버(20)와 동일한 구성요소를 포함하여 대기열 관리를 수행할 수 있다.
제2 임계치를 초과한 시점부터 수신된 접속 요청(대기열 관리 장치가 처리하지 못한 접근 요청)은, 대기열 관리 서버(20)의 바이패스 게이트(23)를 통해 미러 서버(30)로 전달되고 미러 서버(30)가 제2 큐 매니저(31)를 통해 차례대로 순서 정보를 부여하여 대기열 관리를 수행할 수 있다.
그리고, 제3 큐 매니저(31)는 순서 정보를 부여할 때, 제2 큐 매니저(21)를 통해 마지막으로 부여된 순서 정보에 해당하는 순서의 다음 순서부터 차례대로 순서 정보를 부여할 수 있다.
예를 들어, 대기열 관리 서버(20)의 대기열에서 마지막 접속 요청에 80번의 순서 정보가 부여되었다면, 제3 큐 매니저(31)는 81번을 시작으로 순서 정보를 부여할 수 있다.
한편, 타겟 서버(10)는 접근 확인기(12)를 통해 타겟 서버(10)가 관리하는 대기열, 대기열 관리 서버(20)가 관리하는 대기열 및 미러 서버(30)가 관리하는 대기열에 포함된 모든 접근 요청에 대해 키(Key) 기반의 검증을 순차적으로 수행할 수 있다.
즉, 처리 용량에 따라 복수의 서버에서 개별적으로 대기열을 관리하는 것과는 별개로, 접속 요청에 대한 검증은 타겟 서버(10)에서 순서 정보에 기초하여 순차적으로 수행될 수 있다.
이때, 타겟 서버(10)가 관리하는 대기열 및 대기열 관리 서버(20)가 관리하는 대기열에 포함된 접근 요청에 대해서는 대기열 관리 서버(20)에 포함된 제1 암호화기(22)에 의해 생성된 키(Key)가 발급될 수 있다. 또한, 미러 서버(30)가 관리하는 대기열에 포함된 접근 요청에 대해서는 미러 서버(30)에 포함된 제2 암호화기(32)에 의해 생성된 키가 발급될 수 있다.
여기서, 제1 암호화기(22) 및 제2 암호화기(32)는 동기화될 수 있다.
또한, 제1 암호화기(22) 및 제2 암호화기(32)는 동일한 공개키를 이용하여 키를 생성할 수 있다. 이때, 키 생성에 사용되는 공개키는 기 설정된 주기마다 변경될 수 있다. 실시예에 따라, 공개키는 시간 단위마다 변경되거나, 접속 요청의 개수 단위마다 변경될 수 있다.
즉, 제1 암호화기(22) 및 제2 암호화기(32)는 동기화되므로, 제1 암호화기(22) 및 제2 암호화기(32) 중 어느 하나에서 공개키가 생성 또는 변경되어도, 제1 암호화기(21) 및 제2 암호화기(22)가 동일한 공개키를 가지고 키를 생성하는 것이 가능하다.
이렇게 각 접근 요청에 대해 발급된 키는 타겟 서버(10)에서 검증에 활용될 수 있다. 타겟 서버(10)는 접근 확인기(12)를 통해 각 접근 요청에 대해 발급된 키를 확인하여 정상적인 접근임을 검증할 수 있다. 그리고, 이렇게 검증이 완료된 접근 요청은 실행되어 해당 클라이언트 장치(40)의 화면에 제공될 수 있다.
이렇게 접속 요청의 처리가 완료됨에 따라 대기열에서 대기 중인 접속 요청의 대기량은 실시간으로 변하게 된다.
접속 요청은 순서 정보에 따라 순차적으로 처리될 수 있다. 도 4를 참조하면, 대기량이 제1 임계치를 초과하는 시점(t1) 전까지의 접속 요청은 제1 큐 매니저(11)에 의해 1번, 2번, 3번의 순서 정보가 부여되고, t1부터 대기량이 제2 임계치를 초과하는 시점(t2) 전까지의 접속 요청은 제2 큐 매니저(21)에 의해 4번, 5번의 순서 정보가 부여되고, t2부터의 접속 요청은 제3 큐 매니저(31)에 의해 6번의 순서 정보가 부여될 수 있다.
이렇게 총 6개의 접속 요청은 검증을 통해 순차적으로 처리될 수 있다.
도 4에 도시된 바와 같이, 타겟 서버(10)가 접속 요청 1 및 2를 처리함에 따라, 대기량이 제1 임계치 이내로 돌아온 경우(2개의 처리 용량이 남음), 제1 큐 매니저(11)는 새로 수신되는 접속 요청에 대해 순서 정보를 부여할 수 있다.
이때, 제1 큐 매니저(11)는 상기 제1 큐 매니저(11), 상기 제2 큐 매니저(21) 및 상기 제3 큐 매니저(31) 중 적어도 하나에 의해 부여된 순서 정보에 기초하여, 마지막으로 부여된 순서 정보에 해당하는 순서의 다음 순서부터 차례대로 상기 순서 정보를 부여할 수 있다.
즉, 도 4에 도시된 바와 같이, 제1 큐 매니저(11)는 제3 큐 매니저(31)에 의해 6번이 가장 마지막으로 부여됐음을 확인하고 새로 수신되는 2개의 접속 요청에 각각 7번, 8번의 순서 정보를 부여할 수 있다.
이후에, 타겟 서버(10)가 접속 요청 3 및 4를 처리함에 따라, 대기량이 제1 임계치 및 제 2 임계치 이내로 돌아온 경우(각각 1개의 처리 용량이 남음), 제1 큐 매니저(11)는 및 제2 큐 매니저(21)는 각각 새로 수신되는 접속 요청에 대해 순서 정보를 부여할 수 있다.
이때, 제1 큐 매니저(11)는 및 제2 큐 매니저(21)는 상기 제1 큐 매니저(11), 상기 제2 큐 매니저(21) 및 상기 제3 큐 매니저(31) 중 적어도 하나에 의해 부여된 순서 정보에 기초하여, 마지막으로 부여된 순서 정보에 해당하는 순서의 다음 순서부터 차례대로 상기 순서 정보를 부여할 수 있다.
구체적으로, 타겟 서버(10)의 제1 임계치를 초과한 후에 대기열 관리 서버(20)가 대기열 관리를 수행하기 때문에, 먼저 제1 큐 매니저(11)가 가장 마지막 순서 정보에 기초하여 제1 임계치를 초과할 때까지 새로운 접속 요청에 순서 정보를 부여하고, 그 이후에 제2 큐 매니저(21)가 가장 마지막 순서 정보에 기초하여 새로운 접속 요청에 순서 정보를 부여할 수 있다.
도 4에 도시된 바와 같이, 제1 큐 매니저(11)는 제1 큐 매니저(31)에 의해 8번이 가장 마지막으로 부여됐음을 확인하고 새로 수신되는 1개의 접속 요청에 9번의 순서 정보를 부여할 수 있다. 이로써 제1 임계치가 다시 초과됐으므로 제2 큐 매니저(12)가 대기열 관리 동작을 수행하게 된다. 제2 큐 매니저는 새로 수신되는 1개의 접속 요청에 대해서, 제1 큐 매니저(31)에 의해 마지막으로 부여된 9번 다음 순서인 10번을 부여할 수 있다.
도 3은 단계들을 순차적으로 실행하는 것으로 기재하고 있으나, 이는 본 실시예의 기술 사상을 예시적으로 설명한 것에 불과한 것으로서, 본 실시예가 속하는 기술분야에서 통상의 지식을 가진 자라면 본 실시예의 본질적인 특성에서 벗어나지 않는 범위에서 도 3에 기재된 단계들의 순서를 변경하여 실행하거나 병렬적으로 실행하는 것으로 다양하게 수정 및 변형하여 적용 가능할 것이므로, 도 3에 기재된 단계들은 시계열적인 순서로 한정되는 것은 아니다.
한편, 상술한 설명에서, 도 3에 기재된 단계들은 본 개시의 구현예에 따라서, 추가적인 단계들로 더 분할되거나, 더 적은 단계들로 조합될 수 있다. 또한, 일부 단계는 필요에 따라 생략될 수도 있고, 단계 간의 순서가 변경될 수도 있다.
한편, 개시된 실시예들은 컴퓨터에 의해 실행 가능한 명령어를 저장하는 기록매체의 형태로 구현될 수 있다. 명령어는 프로그램 코드의 형태로 저장될 수 있으며, 프로세서에 의해 실행되었을 때, 프로그램 모듈을 생성하여 개시된 실시예들의 동작을 수행할 수 있다. 기록매체는 컴퓨터로 읽을 수 있는 기록매체로 구현될 수 있다.
컴퓨터가 읽을 수 있는 기록매체로는 컴퓨터에 의하여 해독될 수 있는 명령어가 저장된 모든 종류의 기록 매체를 포함한다. 예를 들어, ROM(Read Only Memory), RAM(Random Access Memory), 자기 테이프, 자기 디스크, 플래쉬 메모리, 광 데이터 저장장치 등이 있을 수 있다.
이상에서와 같이 첨부된 도면을 참조하여 개시된 실시예들을 설명하였다. 본 개시가 속하는 기술분야에서 통상의 지식을 가진 자는 본 개시의 기술적 사상이나 필수적인 특징을 변경하지 않고도, 개시된 실시예들과 다른 형태로 본 개시가 실시될 수 있음을 이해할 것이다. 개시된 실시예들은 예시적인 것이며, 한정적으로 해석되어서는 안 된다.
10: 타겟 서버
11: 제1 큐 매니저
12: 접근 확인기
20: 대기열 관리 서버
21: 제2 큐 매니저
22: 제1 암호화기
23: 바이패스 게이트
30: 미러 서버
31: 제3 큐 매니저
32: 제2 암호화기
40: 클라이언트 장치

Claims (10)

  1. 복수의 클라이언트 장치로부터 수신되는 접속요청의 대기량이 기 설정된 제1임계치를 초과하는 제1시점 이전까지 상기 접속요청의 대기열을 처리하는 타겟서버;
    상기 제1시점부터 상기 대기량이 기 설정된 제2임계치를 초과하는 제2시점 이전까지 상기 대기열을 처리하는 대기열관리서버; 및
    상기 제2시점부터 상기 대기열을 처리하는 미러서버를 포함하고,
    상기 제1임계치는 상기 타겟서버의 처리용량의 임계치이고, 상기 제2임계치는 상기 대기열관리서버의 처리용량의 임계치이고,
    상기 타겟서버에 포함된 접근확인기는 상기 대기열에 포함된 모든 접속요청에 대해 상기 타겟서버, 상기 대기열관리서버 및 상기 미러서버 간 대기열 처리 순서가 아닌, 상기 타겟서버, 상기 대기열관리서버 및 상기 미러서버 각각에 포함된 큐매니저를 통해 상기 각각이 관리하는 접속요청에 각각 부여된 순서 정보에 따라 검증을 수행하며,
    상기 미러서버는 상기 대기열관리서버와 동일한 구성요소를 포함하여 자체적으로 대기열 관리를 수행하는, 프록시 방식의 서비스 지속성 보장 시스템.
  2. 삭제
  3. 제1 항에 있어서,
    상기 타겟서버 및 상기 대기열관리서버 각각이 관리하는 접속요청에 대해서는 상기 대기열관리서버에 포함된 제1암호화기에 의해 생성된 키가 발급되고,
    상기 미러서버가 관리하는 접속요청에 대해서는 상기 미러서버에 포함된 제2암호화기에 의해 생성된 키가 발급되며,
    상기 제1암호화기 및 상기 제2암호화기는, 동기화되는, 프록시 방식의 서비스 지속성 보장 시스템.
  4. 제3 항에 있어서,
    상기 제1암호화기 및 상기 제2암호화기는, 동일한 공개키를 이용하여 상기 키를 생성하고,
    상기 공개키는, 기 설정된 주기마다 변경되는, 프록시 방식의 서비스 지속성 보장 시스템.
  5. 삭제
  6. 제1 항에 있어서,
    상기 제1시점 이전까지 수신된 접속요청은, 상기 타겟서버에 포함된 제1큐매니저를 통해 차례대로 상기 순서 정보가 부여되고,
    상기 제1시점부터 수신된 접속요청은, 상기 대기열관리서버에 포함된 제2큐매니저를 통해 차례대로 상기 순서 정보가 부여되되, 상기 제1큐매니저를 통해 마지막으로 부여된 순서 정보에 해당하는 순서의 다음 순서부터 차례대로 상기 순서 정보가 부여되고,
    상기 제2시점부터 수신된 접속요청은, 상기 미러서버에 포함된 제3큐매니저를 통해 차례대로 상기 순서 정보가 부여되되, 상기 제2큐매니저를 통해 마지막으로 부여된 순서 정보에 해당하는 순서의 다음 순서부터 차례대로 상기 순서 정보가 부여되는, 프록시 방식의 서비스 지속성 보장 시스템.
  7. 제6 항에 있어서,
    상기 제1임계치를 초과한 이후에 상기 대기량이 다시 상기 제1임계치 이내가 되면, 상기 제1큐매니저가 상기 제1큐매니저, 상기 제2큐매니저 및 상기 제3큐매니저 중 적어도 하나에 의해 부여된 순서 정보에 기초하여 마지막으로 부여된 순서 정보에 해당하는 순서의 다음 순서부터 차례대로 상기 순서 정보를 부여하는, 프록시 방식의 서비스 지속성 보장 시스템.
  8. 삭제
  9. 타겟서버, 대기열관리서버 및 미러서버를 포함하는 시스템에 의해 수행되는 방법에 있어서,
    상기 타겟서버가 복수의 클라이언트 장치로부터 수신되는 접속요청의 대기량이 기 설정된 제1임계치를 초과하는 제1시점 이전까지 상기 접속요청의 대기열을 처리하는 단계;
    상기 대기열관리서버가 상기 제1시점부터 상기 대기량이 기 설정된 제2임계치를 초과하는 제2시점 이전까지 상기 대기열을 처리하는 단계; 및
    상기 미러서버가 상기 제2시점부터 상기 대기열을 처리하는 단계를 포함하고,
    상기 제1임계치는 상기 타겟서버의 처리용량의 임계치이고, 상기 제2임계치는 상기 대기열관리서버의 처리용량의 임계치이고,
    상기 타겟서버에 포함된 접근확인기에 의해 상기 대기열에 포함된 모든 접속요청에 대해 상기 타겟서버, 상기 대기열관리서버 및 상기 미러서버 간 대기열 처리 순서가 아닌, 상기 타겟서버, 상기 대기열관리서버 및 상기 미러서버 각각에 포함된 큐매니저를 통해 상기 각각이 관리하는 접속요청에 각각 부여된 순서 정보에 따라 검증이 수행되며,
    상기 미러서버는 상기 대기열관리서버와 동일한 구성요소를 포함하여 자체적으로 대기열 관리를 수행하는, 프록시 방식의 서비스 지속성 보장 방법.
  10. 컴퓨터와 결합되어, 제9 항의 방법을 실행하기 위해 컴퓨터 판독 가능한 기록 매체에 저장된 프로그램.

KR1020220189788A 2022-12-29 2022-12-29 프록시 방식의 서비스 지속성 보장 시스템 및 방법 KR102522910B1 (ko)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020220189788A KR102522910B1 (ko) 2022-12-29 2022-12-29 프록시 방식의 서비스 지속성 보장 시스템 및 방법

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020220189788A KR102522910B1 (ko) 2022-12-29 2022-12-29 프록시 방식의 서비스 지속성 보장 시스템 및 방법

Publications (1)

Publication Number Publication Date
KR102522910B1 true KR102522910B1 (ko) 2023-04-18

Family

ID=86100757

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020220189788A KR102522910B1 (ko) 2022-12-29 2022-12-29 프록시 방식의 서비스 지속성 보장 시스템 및 방법

Country Status (1)

Country Link
KR (1) KR102522910B1 (ko)

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR101654266B1 (ko) 2014-12-18 2016-09-05 (주)에임투지 웹 접속 관리 시스템을 통한 모니터링 기능을 제공하는 모니터링 장치
KR20160135724A (ko) * 2014-03-20 2016-11-28 블랙베리 리미티드 메시지를 인증하기 위한 방법
KR101758065B1 (ko) * 2016-02-29 2017-07-26 숭실대학교산학협력단 부하분산 시스템, 그 제어방법 및 이를 수행하기 위한 기록매체
KR102009019B1 (ko) * 2018-10-04 2019-08-08 양성덕 단말이 직접 매칭하는 분산 매칭 방법

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20160135724A (ko) * 2014-03-20 2016-11-28 블랙베리 리미티드 메시지를 인증하기 위한 방법
KR101654266B1 (ko) 2014-12-18 2016-09-05 (주)에임투지 웹 접속 관리 시스템을 통한 모니터링 기능을 제공하는 모니터링 장치
KR101758065B1 (ko) * 2016-02-29 2017-07-26 숭실대학교산학협력단 부하분산 시스템, 그 제어방법 및 이를 수행하기 위한 기록매체
KR102009019B1 (ko) * 2018-10-04 2019-08-08 양성덕 단말이 직접 매칭하는 분산 매칭 방법

Similar Documents

Publication Publication Date Title
US20190361888A1 (en) Read/write split database query routing
US9201610B2 (en) Cloud-based storage deprovisioning
CN107483418A (zh) 登录处理方法、业务处理方法、装置及服务器
US10116623B2 (en) Methods and systems for providing a token-based application firewall correlation
EP3391613A1 (en) Certificate renewal and deployment
US20140149280A1 (en) Real-time multi master transaction
RU2632125C1 (ru) Способ и система обработки задач в облачном сервисе
WO2010007088A1 (en) Asymmetric dynamic server clustering with inter-cluster workload balancing
US20190251094A1 (en) Techniques for interruption-free partitioning
US20210377248A1 (en) Authentication token refresh
CN112819638A (zh) 交易判重的方法、装置、设备和计算机可读介质
KR102522910B1 (ko) 프록시 방식의 서비스 지속성 보장 시스템 및 방법
US20210132993A1 (en) Rate limiting compliance assessments with multi-layer fair share scheduling
KR102637173B1 (ko) 5g 모바일 에지 컴퓨팅 환경을 위한 블록체인 시스템, 장치 및 운영 방법
CN115529186A (zh) 基于软负载均衡的ssl证书卸载方法、装置及系统
CN113824675B (zh) 管理登录态的方法和装置
CN113132400B (zh) 业务处理方法、装置、计算机系统及存储介质
KR102519061B1 (ko) 구간 제어 방식 기반의 유량 제어를 위한 장치 및 방법
CN114006907A (zh) 分布式服务器的服务降级方法、装置、电子设备及介质
KR102569833B1 (ko) 디지털 서비스 기반 서비스 서버의 모니터링을 이용한 유량 제어 방법, 서버 및 시스템
KR102519051B1 (ko) 디지털 서비스 기반 로드 밸런싱을 위한 대기열 관리 방법, 로드 밸런서 및 대기열 관리 시스템
US10616293B1 (en) Multiple account binding
KR102519073B1 (ko) 디지털 서비스 기반 트래픽 오케스트레이션을 위한 진입 관리 서버, 시스템 및 방법
KR102519010B1 (ko) 디지털 서비스 기반의 병목 구간 별 진입 대상을 관리하기 위한 진입 관리 서버, 방법 및 프로그램
KR102543972B1 (ko) 디지털 서비스 기반 진입 관리 대상의 자동 조정을 위한 진입 관리 방법 및 서버

Legal Events

Date Code Title Description
E701 Decision to grant or registration of patent right
GRNT Written decision to grant