KR102519007B1 - 리소스 상태 기반 트래픽 자동 관리 시스템 및 방법 - Google Patents

리소스 상태 기반 트래픽 자동 관리 시스템 및 방법 Download PDF

Info

Publication number
KR102519007B1
KR102519007B1 KR1020220190469A KR20220190469A KR102519007B1 KR 102519007 B1 KR102519007 B1 KR 102519007B1 KR 1020220190469 A KR1020220190469 A KR 1020220190469A KR 20220190469 A KR20220190469 A KR 20220190469A KR 102519007 B1 KR102519007 B1 KR 102519007B1
Authority
KR
South Korea
Prior art keywords
traffic
user terminal
access
server
target server
Prior art date
Application number
KR1020220190469A
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 KR1020220190469A priority Critical patent/KR102519007B1/ko
Application granted granted Critical
Publication of KR102519007B1 publication Critical patent/KR102519007B1/ko

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L47/00Traffic control in data switching networks
    • H04L47/10Flow control; Congestion control
    • H04L47/24Traffic characterised by specific attributes, e.g. priority or QoS
    • H04L47/2416Real-time traffic
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L12/00Data switching networks
    • H04L12/02Details
    • H04L12/14Charging, metering or billing arrangements for data wireline or wireless communications
    • H04L12/141Indication of costs
    • H04L12/1414Indication of costs in real-time
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L43/00Arrangements for monitoring or testing data switching networks
    • H04L43/06Generation of reports
    • H04L43/062Generation of reports related to network traffic
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L43/00Arrangements for monitoring or testing data switching networks
    • H04L43/08Monitoring or testing based on specific metrics, e.g. QoS, energy consumption or environmental parameters
    • H04L43/0876Network utilisation, e.g. volume of load or congestion level

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Environmental & Geological Engineering (AREA)
  • Information Transfer Between Computers (AREA)

Abstract

본 개시는 다중 URI 기반 대기열 관리 시스템 및 방법에 관한 것으로, 타겟 서버의 접속이 폭주할 시에 다양한 플랫폼을 통해 각각 동일한 웹 사이트 또는 웹 페이지에 접속하는 경우에도 하나의 대기열로 통합하여 관리함으로써, 사용자(접속자)들 간 형평성/공정성을 보정할 수 있도록 한다.

Description

리소스 상태 기반 트래픽 자동 관리 시스템 및 방법{SYSTEM AND METHOD FOR AUTOMATICALLY MANAGING TRAFFIC BASED ON RESOURCE STATUS}
본 개시는 트래픽 관리 시스템 및 방법에 대한 것으로, 보다 상세하게는, 본 개시는 리소스 상태 기반 트래픽 자동 관리 시스템 및 방법에 관한 것이다.
타겟 서버를 운영하는 사업자는 CSP(Cloud Service Provider) 및 MSP(Managed Service Provider)로 구분되는데, CSP는 아마존웹서비스(AWS), 마이크로소프트, 구글 IBM, 오라클 등과 같은 1차 서비스 공급자이고, MSP는 메가존 클라우드 등과 같은 CSP와 고객을 중개하는 2차 서비스 유통 및 컨설팅 등의 역할을 수행한다.
구체적으로, MSP의 경우, 아마존 서버 운영 시 직접 타겟 서버의 리소스 스펙 등을 고객사가 직접 설정해야 하는데, 이에 어려움이 있으므로 중간에서 컨설팅 해주는 역할을 한다. 또한, CSP의 경우, 가이드 정도만 제공하고, 고객사가 알아서 결정해야 한다.
그렇기 때문에, 최초 타겟 서버를 도입하는 경우 또는 서비스 초기 사업자는 적절한 리소스 스펙을 알기 어려운 상황에 처한다. 더욱이, MSP는 일시적인 트래픽 증가에 따른 여유 리소스를 고려하지 않을 수 없기 때문에, 즉, 전체적인 추세 또는 통계만을 기반으로 리소스를 책정하기 때문에 제대로 된 리소스를 책정하기 어렵다.
한편, 타겟 서버를 통해 웹 서비스를 제공하는 기업의 관리자들은 적절한 리소스 상태로 웹 서버를 유지해야하기 때문에 안정성을 이유로 필요한 리소스 스펙보다 더 많은 리소스를 할당하고 있다. 그러나, 이것이 서비스 안정성 측면에서는 바람직할 수 있으나, 타겟 서버를 통해 할당된 웹 서버는 리소스 스펙과 가동시간에 따라 과금되기 때문에 비용 효율성 측면에서는 바람직하지 않다.
수강신청, 콘서트 예약 및 구매 이벤트 등의 콘텐츠 서비스를 제공하는 웹 서버의 동시 접속자가 증가함에 따라, 콘텐츠 서비스를 제공하는 서버측의 응답속도가 저하되거나 서비스가 중단되는 등의 상황이 종종 발생하고 있는 실정이다.
이러한 경우에는 이 타겟 서버에 연동된 트래픽 관리 장치(서버)에 의해 대기열이 생성되어 트래픽이 관리되는데, 그 서비스를 제공하는 특정 웹 사이트의 모든 웹 페이지에 대한 트래픽을 제어하는 것이 비효율적이라는 문제점이 있다.
따라서, 타겟 서버 기반의 서비스를 제공하는 특정 웹 사이트에서 병목 구간에 해당하는 특정 웹 페이지에 대해서만 트래픽 관리(제어)를 수행할 수 있도록 하는 기술이 개발될 필요가 있다.
한국등록특허공보 제10-2274343호 (공개일: 2021년 07월 01일)
본 개시는 타겟 서버 기반의 서비스를 제공하는 특정 웹 사이트에서 병목 구간에 해당하는 특정 웹 페이지에 대해서만 트래픽 관리(제어)를 수행할 수 있도록 함으로써 효율적인 관리가 가능하도록 하는 리소스 상태 기반 트래픽 자동 관리 시스템 및 방법을 제공함에 있다.
한편, 본 개시는 관리자가 수동으로 관리 동작을 지시하거나 명령할 필요가 없이 로그인, 상품정보, 장바구니, 결제 등 단계 별로 병목 구간을 감지하여 서비스 단위 별로 필요한 구간에 대해서만 트래픽 관리를 자동으로 수행할 수 있도록 함으로써 문제 상황에 대한 빠른 대응이 가능하도록 하는 리소스 상태 기반 트래픽 자동 관리 시스템 및 방법을 제공함에 있다.
본 개시가 해결하고자 하는 과제들은 이상에서 언급된 과제로 제한되지 않으며, 언급되지 않은 또 다른 과제들은 아래의 기재로부터 통상의 기술자에게 명확하게 이해될 수 있을 것이다.
상술한 기술적 과제를 달성하기 위한 본 개시의 일 측면에 따른 리소스 상태 기반 트래픽 자동 관리 시스템은, 타겟 서버 기반의 적어도 하나의 웹 페이지에 대한 접속요청을 송신하여 서비스를 제공받는 적어도 하나의 사용자 단말; 상기 적어도 하나의 웹 페이지 각각의 리소스 상태를 모니터링하고, 상기 모니터링 결과에 따라 적어도 하나의 병목 구간을 감지하고, 상기 적어도 하나의 병목 구간에 대한 관리 동작의 활성화 개시 시점을 산출하여 제공하는 타겟 서버; 및 상기 활성화 개시 시점을 기반으로 활성화되어 상기 적어도 하나의 병목 구간 각각에 대한 접속요청이 상기 적어도 하나의 사용자 단말로부터 수신되면, 상기 적어도 하나의 사용자 단말에 대한 대기열을 생성하는 상기 관리 장치를 포함할 수 있다.
한편, 본 개시의 일 측면에 따른 리소스 상태 기반 트래픽 자동 관리 방법은, 타겟 서버 기반의 서비스를 제공하는 적어도 하나의 웹 페이지 각각의 리소스 상태를 모니터링하는 단계; 상기 모니터링 결과에 따라 적어도 하나의 병목 구간을 감지하는 단계; 상기 적어도 하나의 병목 구간에 대한 관리 동작의 활성화 개시 시점을 산출하여 제공하는 단계; 상기 활성화 개시 시점을 기반으로 상기 적어도 하나의 병목 구간에 각각에 대한 상기 관리 동작을 활성화하는 단계; 및 상기 적어도 하나의 병목 구간 각각에 대한 접속요청이 상기 적어도 하나의 사용자 단말로부터 수신되면, 상기 적어도 하나의 사용자 단말에 대한 대기열을 생성하는 단계; 상기 적어도 하나의 병목 구간을 감지하는 단계는, 상기 적어도 하나의 웹 페이지 각각에 대한 응답속도, 지연속도 및 접속요청 수를 기 설정되는 각각의 임계치와 비교하고, 상기 비교 결과에 따라 트래픽 제어동작의 활성화 여부를 결정할 수 있다.
이 외에도, 본 개시를 구현하기 위한 방법을 실행하기 위한 컴퓨터 판독 가능한 기록 매체에 저장된 컴퓨터 프로그램이 더 제공될 수 있다.
이 외에도, 본 개시를 구현하기 위한 방법을 실행하기 위한 컴퓨터 프로그램을 기록하는 컴퓨터 판독 가능한 기록 매체가 더 제공될 수 있다.
본 개시의 전술한 과제 해결 수단에 의하면, 타겟 서버 기반의 서비스를 제공하는 특정 웹 사이트에서 병목 구간에 해당하는 특정 웹 페이지에 대해서만 트래픽 관리(제어)를 수행할 수 있도록 함으로써 효율적인 관리가 가능하도록 한다.
또한, 본 개시에 의하면, 관리자가 수동으로 관리 동작을 지시하거나 명령할 필요가 없이 로그인, 상품정보, 장바구니, 결제 등 단계 별로 병목 구간을 감지하여 서비스 단위 별로 필요한 구간에 대해서만 트래픽 관리를 자동으로 수행할 수 있도록 함으로써 문제 상황에 대한 빠른 대응이 가능하도록 한다.
본 개시의 효과들은 이상에서 언급된 효과로 제한되지 않으며, 언급되지 않은 또 다른 효과들은 아래의 기재로부터 통상의 기술자에게 명확하게 이해될 수 있을 것이다.
도 1은 본 개시에 따른 트래픽 관리 시스템의 네트워크 구조를 나타내는 도면
도 2는 본 개시의 일 실시예에 따른 트래픽 관리 시스템의 네트워크 구조를 나타내는 도면
도 3은 본 개시의 일 실시예에 따른 트래픽 관리 시스템에서 타겟 서버의 구성을 나타내는 블록도
도 4는 본 개시의 일 실시예에 따른 트래픽 관리 방법을 나타내는 순서도
도 5는 본 개시의 일 실시예에 따른 타겟 서버에서 OPRT 모듈이 리소스 상태를 모니터링 하는 구체적인 동작을 나타내는 순서도
도 6은 본 개시의 일 실시예에 따른 타겟 서버에서 OPRT 모듈이 사용자 단말의 접근 요청을 처리하는 구체적인 동작을 나타내는 순서도
도 7은 본 개시의 일 실시예에 따른 타겟 서버에서 트래픽 제어모듈의 구체적인 동작을 나타내는 순서도
본 개시의 이점 및 특징, 그리고 그것들을 달성하는 방법은 첨부되는 도면과 함께 상세하게 후술되어 있는 실시예들을 참조하면 명확해질 것이다. 그러나, 본 개시는 이하에서 개시되는 실시예들에 제한되는 것이 아니라 서로 다른 다양한 형태로 구현될 수 있으며, 단지 본 실시예들은 본 개시가 완전하도록 하고, 본 개시가 속하는 기술 분야의 통상의 기술자에게 본 개시의 범주를 완전하게 알려주기 위해 제공되는 것이며, 본 개시는 청구항의 범주에 의해 정의될 뿐이다.
본 명세서에서 사용된 용어는 실시예들을 설명하기 위한 것이며 본 개시를 제한하고자 하는 것은 아니다. 본 명세서에서, 단수형은 문구에서 특별히 언급하지 않는 한 복수형도 포함한다. 명세서에서 사용되는 "포함한다(comprises)" 및/또는 "포함하는(comprising)"은 언급된 구성요소 외에 하나 이상의 다른 구성요소의 존재 또는 추가를 배제하지 않는다. 명세서 전체에 걸쳐 동일한 도면 부호는 동일한 구성 요소를 지칭하며, "및/또는"은 언급된 구성요소들의 각각 및 하나 이상의 모든 조합을 포함한다. 비록 "제1", "제2" 등이 다양한 구성요소들을 서술하기 위해서 사용되나, 이들 구성요소들은 이들 용어에 의해 제한되지 않음은 물론이다. 이들 용어들은 단지 하나의 구성요소를 다른 구성요소와 구별하기 위하여 사용하는 것이다. 따라서, 이하에서 언급되는 제1 구성요소는 본 개시의 기술적 사상 내에서 제2 구성요소일 수도 있음은 물론이다.
다른 정의가 없다면, 본 명세서에서 사용되는 모든 용어(기술 및 과학적 용어를 포함)는 본 개시가 속하는 기술분야의 통상의 기술자에게 공통적으로 이해될 수 있는 의미로 사용될 수 있을 것이다. 또한, 일반적으로 사용되는 사전에 정의되어 있는 용어들은 명백하게 특별히 정의되어 있지 않는 한 이상적으로 또는 과도하게 해석되지 않는다.
본 개시 전체에 걸쳐 동일 참조 부호는 동일 구성요소를 지칭한다. 본 개시가 실시예들의 모든 요소들을 설명하는 것은 아니며, 본 개시가 속하는 기술분야에서 일반적인 내용 또는 실시예들 간에 중복되는 내용은 생략한다. 명세서에서 사용되는 "부" 또는 “모듈”이라는 용어는 소프트웨어, FPGA 또는 ASIC과 같은 하드웨어 구성요소를 의미하며, "부" 또는 “모듈”은 어떤 역할들을 수행한다. 그렇지만 "부" 또는 “모듈”은 소프트웨어 또는 하드웨어에 한정되는 의미는 아니다. "부" 또는 “모듈”은 어드레싱할 수 있는 저장 매체에 있도록 구성될 수도 있고 하나 또는 그 이상의 프로세서들을 재생시키도록 구성될 수도 있다. 따라서, 일 예로서 "부" 또는 “모듈”은 소프트웨어 구성요소들, 객체지향 소프트웨어 구성요소들, 클래스 구성요소들 및 태스크 구성요소들과 같은 구성요소들과, 프로세스들, 함수들, 속성들, 프로시저들, 서브루틴들, 프로그램 코드의 세그먼트들, 드라이버들, 펌웨어, 마이크로 코드, 회로, 데이터, 데이터베이스, 데이터 구조들, 테이블들, 어레이들 및 변수들을 포함한다. 구성요소들과 "부" 또는 “모듈”들 안에서 제공되는 기능은 더 작은 수의 구성요소들 및 "부" 또는 “모듈”들로 결합되거나 추가적인 구성요소들과 "부" 또는 “모듈”들로 더 분리될 수 있다.
명세서 전체에서, 어떤 부분이 다른 부분과 "연결"되어 있다고 할 때, 이는 직접적으로 연결되어 있는 경우뿐 아니라, 간접적으로 연결되어 있는 경우를 포함하고, 간접적인 연결은 무선 통신망을 통해 연결되는 것을 포함한다.
또한 어떤 부분이 어떤 구성요소를 "포함"한다고 할 때, 이는 특별히 반대되는 기재가 없는 한 다른 구성요소를 제외하는 것이 아니라 다른 구성요소를 더 포함할 수 있는 것을 의미한다.
명세서 전체에서, 어떤 부재가 다른 부재 "상에" 위치하고 있다고 할 때, 이는 어떤 부재가 다른 부재에 접해 있는 경우뿐 아니라 두 부재 사이에 또 다른 부재가 존재하는 경우도 포함한다.
제1, 제2 등의 용어는 하나의 구성요소를 다른 구성요소로부터 구별하기 위해 사용되는 것으로, 구성요소가 전술된 용어들에 의해 제한되는 것은 아니다.
단수의 표현은 문맥상 명백하게 예외가 있지 않는 한, 복수의 표현을 포함한다.
각 단계들에 있어 식별부호는 설명의 편의를 위하여 사용되는 것으로 식별부호는 각 단계들의 순서를 설명하는 것이 아니며, 각 단계들은 문맥상 명백하게 특정 순서를 기재하지 않는 이상 명기된 순서와 다르게 실시될 수 있다.
이하 설명에서 사용되는 용어에 대하여 정의하면 하기와 같다.
본 개시를 설명함에 있어서, 대기열 관리 장치(300)로 한정하였으나, 서버, 컴퓨터 및/또는 휴대용 단말기를 더 포함하거나, 또는 그 중 어느 하나의 형태가 될 수 있다.
여기에서, 상기 서버는 외부 장치와 통신을 수행하여 정보를 처리하는 서버로써, 애플리케이션 서버, 컴퓨팅 서버, 데이터베이스 서버, 파일 서버, 게임 서버, 메일 서버, 프록시 서버 및 웹 서버 등을 포함할 수 있다.
상기 컴퓨터는 예를 들어, 웹 브라우저(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) 등과 같은 웨어러블 장치를 포함할 수 있다.
이하 첨부된 도면들을 참고하여 본 개시의 작용 원리 및 실시예들에 대해 설명한다.
도 1은 본 개시에 따른 트래픽 관리 시스템의 네트워크 구조를 나타내는 도면이다.
도 1을 참조하면, 본 개시에 따른 타겟 서버에 대한 트래픽 관리를 위한 트래픽 관리 시스템(1)은 사용자 단말(10), 타겟 서버(20) 및 트래픽 관리 장치(30)를 포함하여 구성될 수 있다.
사용자 단말(10)은 특정 웹 사이트(web site)에서 제공하는 웹 서비스를 이용하는 사용자의 단말로서, 적어도 하나 이상일 수 있다. 즉, 사용자는 이 사용자 단말(10)을 통해 특정 웹 사이트 또는 그 특정 웹 사이트 내의 특정 웹 페이지에 대한 접속요청(신규접속요청 또는 재접속요청)(1-1)을 트래픽 관리 장치(30)로 송신한다.
한편, 사용자 단말(10)은 트래픽 관리 장치(30)로부터 대기정보(1-2)를 수신하고, 그 트래픽 관리 장치(30)에 의해 접속이 허용되면 특정 웹 사이트 또는 그 특정 웹 사이트 내의 특정 웹 페이지에 접속한다. 이로써, 그 사용자는 이를 통해 웹 서비스를 이용할 수 있게 된다.
이때, 사용자 단말(10)은 신규접속요청을 송신한 후, 그에 대한 응답으로 대기정보(1-2)를 수신하고, 그 대기정보(1-2)에 포함된 재접속 간격을 기반으로 일정 시간 대기하다가 트래픽 관리 장치(30)로 재접속요청을 송신한다. 만약, 사용자 단말(10)은 재접속요청에도 불구하고 접속이 불가능한 경우에 트래픽 관리 장치(30)로부터 해당 시점에 재생성된 대기정보를 수신할 수 있다. 이로써, 사용자 단말(10)은 그 재생성된 대기정보에 포함된 재접속 간격을 기반으로 또 다시 일정 시간 대기하다가 트래픽 관리 장치(30)로 재접속요청을 송신한다. 즉, 사용자 단말(10)은 트래픽 관리 장치(30)에 의해 접속이 허용될때까지 이러한 접속요청 동작을 반복하도록 한다.
이를 위해, 사용자 단말(10)은 리퍼러(11)를 포함하여 구성될 수 있다.
이 사용자 단말(10)은 사용자가 원하는 다수의 응용 프로그램(즉, 애플리케이션)을 설치하여 실행할 수 있는 컴퓨터, 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), 기타 이동통신 단말 등일 수 있다. 즉, 사용자 단말(10)은 다양한 형태로 구비될 수 있으며, 그 형태 및 종류를 한정하지는 않는다.
타겟 서버(20)는 특정 웹 사이트를 기반으로 웹 서비스를 제공하기 위한 장치로서, HTML(hypertext markup language)로 구성된 웹 페이지를 제공하는 웹(WEB) 서버, 그 웹 서버로부터 전달된 요청 메시지에 대한 응용 프로그램 서비스를 처리하는 WAS(Web Application Server) 및 쿼리문에 대한 응답으로 제공할 수 있는 데이터를 저장하는 데이터베이스(Database, DB) 로 구성되며, 클라우드 환경(AWS)에서 그 웹 서비스를 제공할 수 있다. 여기서, 웹 서버는 특정 웹 사이트에 대해 할당하는 클라우드 기반의 서버로서, 적어도 하나 이상일 수 있다. 이때, 웹 서버, WAS 및 데이터베이스는 각각 적어도 하나 이상으로 구성될 수 있다.
만약, 특정 웹 사이트 또는 그 특정 웹 사이트 내의 특정 웹 페이지에 동시 사용자(접속자)가 폭주하는 경우, 타겟 서버(20)는 네트워크 대역폭 부족으로 인해 응답시간이 지연되는 현상이 발생할 수 있다.
타겟 서버(20)는 클라우드 환경(AWS)에서 웹 서비스를 제공할 수 있도록 리소스를 할당하고 관리하는 장치로서, CSP, MSP 등의 클라우드 사업자에 의해 운용된다.
이를 위해, 타겟 서버(20)는 특정 웹 사이트 또는 그 특정 웹 사이트 내의 특정 웹 페이지에 대한 상태정보를 기 설정된 주기에 따라 수집하여 리소스 상태(접속상태)를 모니터링하며, 사용자가 폭주하는 경우에도 그 사용자들이 순차적으로 접속할 수 있도록 하기 위해 트래픽 관리 장치(30)와 연동될 수 있다.
이러한 동작을 수행하기 위해, 타겟 서버(20)는 큐매니저(21) 및 OPRT(22)를 포함하여 구성될 수 있다.
큐매니저(21)는 접속이 허용된 사용자 단말(10)로부터 대기정보(1-3)가 수신되면, 대기정보(1-2)를 기반으로 그 대기정보(1-3)에 대한 검증을 통해 접속 허용 여부를 결정하여 타겟 서버(20)가 허용정보(1-4)를 사용자 단말(10)로 송신하도록 한다. 이로써, 특정 웹 사이트 또는 특정 웹 페이지에 대한 사용자 단말(10)의 접속(1-5)을 완료할 수 있다.
트래픽 관리 장치(30)는 타겟 서버(20)에 대한 트래픽 관리를 위해 타겟 서버(20)와 연동되어, 이 타겟 서버(20) 기반의 서비스를 제공하는 특정 웹 사이트 및 그 특정 웹 사이트 내의 특정 웹페이지 중 어느 하나의 대상에 대한 상태정보를 기반으로 그 어느 하나의 대상에 대한 리소스 상태를 모니터링하고, 그 모니터링 결과에 따라 확인된 리소스 상태를 기반으로 트래픽 증감을 감지함으로써, 관리 동작을 활성화시킬지를 결정하여 접속 요청된 적어도 하나의 사용자 단말에 대한 트래픽을 순차적으로 처리 및 관리한다. 여기서, 리소스 상태는 상태정보를 기 설정된 주기에 따라 수집하여 분석함으로써 모니터링될 수 있다.
이 트래픽 관리 장치(30)는 룰셋(RuleSet) 설정값에 따라 특정 웹 사이트(어플리케이션) 또는 특정 웹 페이지에 접속하는 사용자 단말의 진입허용수를 자동으로 제어할 수 있다. 예를 들어, 트래픽 관리 장치(30)는 그 진입허용수를 기 설정된 임계치로 하여 그 특정 웹 사이트에 현재 접속된 적어도 하나의 사용자 단말의 개수와 비교하고, 현재 접속된 적어도 하나의 사용자 단말의 개수가 기 설정된 임계치를 초과(도래)하면 관리 동작을 활성화하도록 한다. 여기서, 현재 접속된 적어도 하나의 사용자 단말의 개수는 그 리소스 상태를 모니터링함에 따라 확인될 수 있는 정보 중 하나이다.
한편, 트래픽 관리 장치(30)는 관리 동작이 활성화된 상태에서 적어도 하나의 사용자 단말로부터 접속요청(1-1)이 수신되면 대기열(queue)을 생성하고, 적어도 하나의 사용자 단말 각각에 대한 대기정보(1-2)를 생성하여 각각의 사용자 단말 송신한다. 즉, 대기정보(1-2)는 각각의 사용자 단말에 대해 개별적으로 생성되는 정보이다.
도 2는 본 개시의 일 실시예에 따른 트래픽 관리 시스템의 네트워크 구조를 나타내는 도면이다.
도 2를 참조하면, 본 개시의 일 실시예에 따른 트래픽 관리 시스템(10)은 도 1에 도시된 트래픽 관리 시스템(1)과 기본적인 구성은 물론, 각 구성요소에서 수행하는 대부분의 동작이 동일하다. 다만, 타겟 서버(200)의 일부 동작에 있어 차이가 있는 바, 이하에서는 그 차이가 있는 구성에 대해서만 구체적으로 설명하도록 한다.
먼저, 타겟 서버(200)는 적어도 하나의 웹 페이지 각각의 리소스 상태를 모니터링하고, 그 모니터링 결과에 따라 적어도 하나의 병목 구간을 감지한 후, 그 적어도 하나의 병목 구간에 대한 관리 동작의 활성화 개시 시점을 산출하여 제공한다. 타겟 서버(200)는 이 개시 시점을 개시정보(1-1)에 포함시켜 트래픽 관리 장치(300)에 포함시켜 송신할 수 있다. 이때, 관리 동작은 트래픽 관리 장치(300)에 의해 수행되는 동작으로서, 타겟 서버(200)가 그 관리 동작의 활성화 명령을 송신함으로써 관리 동작이 수행되도록 할 수 있다.
한편, 타겟 서버(200)는 기 설정된 주기 마다 누적 저장된 모니터링 결과를 기반으로 상습 병목 구간을 진단하고, 그 진단 결과를 기반으로 가이드정보를 자동 생성하여 기 설정된 적어도 하나의 관리자 단말(미도시)로 제공할 수 있다. 여기서, 가이드정보는 로드밸런서 설정 정보, 웹 서버 증설 정보 및 리소스 확보 정보 중 적어도 하나를 포함할 수 있으며, 관리자는 이 가이드정보를 통해 안정적인 트래픽 관리를 위한 각종 설정값들을 확인하여 대비할 수도 있다.
이를 위해, 타겟 서버(200)는 트래픽 제어모듈(210) 및 OPRT 모듈(220)을 포함하여 구성될 수 있으며, 이하에서 도 3을 기반으로 그 동작에 대해 구체적으로 설명하도록 한다.
한편, 타겟 서버(20)의 큐매니저(21) 및 OPRT(22)는 각각 타겟 서버(200)의 트래픽 제어모듈(210) 및 OPRT 모듈(220)에 포함되는 개념일 수 있다.
도 3은 본 개시의 일 실시예에 따른 트래픽 관리 시스템에서 타겟 서버의 구성을 나타내는 블록도이다.
앞서 살펴본 바와 같이, 타겟 서버(200)는 모니터링 결과를 기반으로 병목 구간으로 감지된 적어도 하나의 웹 페이지 각각에 대한 트래픽을 제어하는 트래픽 제어모듈(210)과, 접속이 허용된 적어도 하나의 사용자 단말에 대한 각종 검증 동작 및 승인 동작을 수행하는 OPRT 모듈(220)을 포함한다.
이때, 트래픽 제어모듈(210)은 적어도 하나의 웹 페이지 각각에 대한 응답속도, 지연속도 및 접속요청 수 중 어느 하나라도 그 각각의 임계치를 초과하는 경우에 활성화되는 것일 수 있다.
도 3을 참조하면, 트래픽 제어모듈(210)은 키 확인부(key checker)(이하, '제1 확인부'라 칭함)(211) 및 오브젝트 확인부(object checker)(이하, '제2 확인부'라 칭함)(212)를 포함하여 구성될 수 있다.
먼저, 제1 확인부(211)는 트래픽 관리 장치(300)가 대기열을 생성할 시에 접속 요청을 송신한 적어도 하나의 사용자 단말 각각에 발급된 대기키를 확인한다. 이때, 그 발급된 대기키는 트래픽 관리 장치(300)가 대기정보에 포함시켜 적어도 하나의 사용자 단말 각각에 송신하게 되는 것으로, 각 사용자 단말이 재접속요청 시 제1 확인부는 이 발급된 대기키의 일치 여부를 통해 각 사용자 단말에 대한 접속(접근) 허용을 결정할 수 있다.
또한, 제2 확인부(212)는 적어도 하나의 사용자 단말 각각에 표시된 적어도 하나의 오브젝트 중 각 사용자 단말에 의해 선택된 타겟 오브젝트를 확인한다.
한편, 도 3에는 도시하지 않았으나, 트래픽 제어모듈(210)은 데이터베이스 기반으로 데이터를 조회하는 쿼리를 사용하는 횟수가 기 설정된 임계치를 초과하는 웹 어플리케이션 서버에 대한 예상쿼리실행시간을 산출하는 로드밸런서(load balancer)를 더 포함할 수 있다. 이때, 로드밸런서는 총 트래픽량을 기 실정된 트래픽 임계치와 비교함으로써 활성화되는 것일 수 있다.
한편, OPRT 모듈(220)은 리소스 관리부(221), 접근 승인부(222), 상품 관리부(223) 및 비용 결제부(224)를 포함하여 구성될 수 있다.
리소스 관리부(221)는 타겟 서버(220)에 대한 상태정보를 기 설정된 주기에 따라 수집하여 분석함으로써 리소스 상태를 모니터링 한다. 또한, 리소스 관리부(221)는 그 모니터링 기반으로 결과를 기반으로 적어도 하나의 병목 구간을 감지하고, 적어도 하나의 웹 페이지 각각에 대한 응답속도, 지연속도 및 접속요청 수를 기 설정되는 각각의 임계치와 비교하여 트래픽 제어모듈을 활성화시킬지를 결정할 수 있다.
접근 승인부(222)는 적어도 하나의 사용자 단말로부터 타겟 서버에 접근하기 위한 로그인 정보가 입력되면, 그 로그인 정보를 기반으로 각 사용자 단말에 대한 로그인을 검증한다. 또한, 접근 승인부(222)는 적어도 하나의 사용자 단말로부터 타겟 오브젝트 선택되면, 그 타겟 오브젝트에 대한 접근을 승인한다.
상품 관리부(223)는 적어도 하나의 웹 페이지 각각에 등록된 상품정보를 관리한다.
비용 결제부(224)는 적어도 하나의 사용자 단말로부터 비용 결제 요청이 수신되면, 그 요청에 따라 비용 결제를 수행한다.
한편, 도 3에는 도시하지 않았으나, 원활한 동작을 위해 통신모듈, 저장모듈 및 제어모듈이 포함될 수 있다.
통신모듈은 사용자 단말(100), 트래픽 관리 장치(300) 및 그 외 적어도 하나의 외부장치(서버 등)와 유선 또는 무선 통신을 수행한다. 특히, 무선 통신을 수행함에 있어서, 무선 인터넷 기술들에 따른 통신망에서 무선 신호를 송수신하도록 한다.
통신모듈은 외부 장치와 통신을 가능하게 하는 하나 이상의 구성 요소를 포함할 수 있으며, 예를 들어, 유선 통신 모듈, 무선 통신 모듈 및 근거리 통신 모듈 중 적어도 하나를 포함할 수 있으며, 이를 기반으로 신호를 송수신하도록 한다.
여기서, 유선 통신 모듈은, 지역 통신(Local Area Network; LAN) 모듈, 광역 통신(Wide Area Network; WAN) 모듈 또는 부가가치 통신(Value Added Network; VAN) 모듈 등 다양한 유선 통신 모듈뿐만 아니라, USB(Universal Serial Bus), HDMI(High Definition Multimedia Interface), DVI(Digital Visual Interface), RS-232(recommended standard), 전력선 통신, 또는 POTS(plain old telephone service) 등 다양한 케이블 통신 모듈을 포함할 수 있다.
무선 통신 모듈은 와이파이(Wifi) 모듈, 와이브로(Wireless broadband) 모듈 외에도, GSM(global System for Mobile Communication), CDMA(Code Division Multiple Access), WCDMA(Wideband Code Division Multiple Access), UMTS(universal mobile telecommunications system), TDMA(Time Division Multiple Access), WLAN(Wireless LAN), DLNA(Digital Living Network Alliance), WiBro(Wireless Broadband), WiMAX(World Interoperability for Microwave Access), HSDPA(High Speed Downlink Packet Access), HSUPA(High Speed Uplink Packet Access), LTE(Long Term Evolution), 4G, 5G, 6G 등 다양한 무선 통신 방식을 지원하는 무선 통신 모듈을 포함할 수 있다.
근거리 통신 모듈은 근거리 통신(Short range communication)을 위한 것으로서, 블루투스(Bluetooth??), RFID(Radio Frequency Identification), 적외선 통신(Infrared Data Association; IrDA), UWB(Ultra Wideband), ZigBee, NFC(Near Field Communication), Wi-Fi(Wireless-Fidelity), Wi-Fi Direct, Wireless USB(Wireless Universal Serial Bus) 기술 중 적어도 하나를 이용하여, 근거리 통신을 지원할 수 있다.
저장모듈은 타겟 서버(200)의 다양한 기능을 지원하는 데이터 및/또는 각종 정보들을 저장한다. 타겟 서버(200)에서 구동되는 다수의 응용 프로그램(application program 또는 애플리케이션(application)), 타겟 서버(200)의 동작을 위한 데이터들, 명령어들을 저장할 수 있다. 이러한 응용 프로그램 중 적어도 일부는, 무선 통신을 통해 외부 서버로부터 다운로드 될 수 있다. 한편, 응용 프로그램은, 저장모듈에 구비된 적어도 하나의 메모리에 저장되고, 타겟 서버(200) 상에 설치되어 제어모듈이 적어도 하나의 프로세서에 의하여 동작(또는 기능)을 수행하도록 구동될 수 있다.
한편, 적어도 하나의 메모리는 플래시 메모리 타입(flash memory type), 하드 디스크 타입(hard disk type), 멀티미디어 카드 마이크로 타입(multimedia card micro type), 카드 타입의 메모리(예를 들어 SD 또는 XD 메모리 등), 램(Random Access Memory, RAM), SRAM(Static Random Access Memory), 롬(Read-Only Memory, ROM), EEPROM(Electrically Erasable Programmable Read-Only Memory), PROM(Programmable Read-Only Memory) 자기 메모리, 자기 디스크, 광디스크 중 적어도 하나의 타입의 저장매체를 포함할 수 있다. 아울러, 메모리는 일시적, 영구적 또는 반영구적으로 정보를 저장할 수 있으며, 내장형 또는 탈착형으로 제공될 수 있다.
저장모듈은 리소스 상태를 기반으로 트래픽을 관리하기 위한 데이터베이스를 구축하여 구비할 수 있으며, 이 데이터베이스에는 적어도 하나의 사용자(고객사, 접속자 등) 각각에 대한 기본정보, 상태정보 등이 저장될 수 있다. 이를 위해, 저장모듈은 타겟 트래픽 관리 장치(300)와 연동될 수 있다. 또한, 저장모듈은 리소스 상태를 기반으로 트래픽을 관리하기 위한 적어도 하나의 프로세스를 저장할 수 있다.
제어모듈은 적어도 하나의 프로세서를 이용하여 리소스 상태를 기반으로 트래픽을 관리하기 위한 동작을 수행할 수 있으며, 타겟 서버(200) 내 모든 구성들을 제어하여 입력 또는 출력되는 신호, 데이터, 정보 등을 처리하거나, 적어도 하나의 메모리에 저장된 명령어, 알고리즘, 응용 프로그램을 실행하여 각종 프로세스를 수행할 수 있다.
즉, 제어모듈은 앞서 도 2 및 도 3을 기반으로 설명한 타겟 서버(200)에서 수행되는 모든 동작은 물론, 타겟 서버(200)를 구성하는 각 구성요소에서 수행되는 모든 동작을 제어한다.
이 제어모듈은 기 설정된 임계치(B)를 기반으로 특정 웹 사이트 또는 특정 웹 페이지에 접속할 수 있는 적어도 하나의 사용자 단말의 개수(active user)를 제어할 수 있다. 예를 들어, 현재 접속된 적어도 하나의 사용자 단말의 개수(접속 사용자 단말의 개수(A))가 기 설정된 임계치(B)에 도래하기 전까지 즉, 서버모듈(330)이 활성화되기 전까지는 접속요청을 송신한 적어도 하나의 사용자 단말에 대한 접속을 즉시 허용한다. 한편, 접속 사용자 단말의 개수(A)가 기 설정된 임계치(B)에 도래한 이후에는 내부에 구비된 서버 또는 별도의 외부 서버에 활성화 명령을 전달함으로써, 접속요청을 송신한 적어도 하나의 사용자 단말을 기반으로 대기열을 생성하도록 하고 그 대기열에 존재하는 사용자 단말에 대한 접속을 순차적으로 허용함으로써 트래픽을 처리한다. 이때, 제어모듈은 사용자 단말 각각의 재접속 간격(Time To Live, TTL)을 기반으로 트래픽을 처리한다.
이를 위해, 제어모듈은 타겟 서버(200)에 연동되어 특정 웹 사이트 및 그 특정 웹 사이트 내의 특정 웹 페이지 중 어느 하나의 대상에 대한 상태정보를 기 설정된 주기에 따라 수집 및 분석하여 그 어느 하나의 대상에 대한 리소스 상태를 모니터링 하고, 그 모니터링 결과에 따라 확인된 리소스 상태를 기반으로 트래픽 증감 여부는 물론, 현재 접속된 적어도 하나의 사용자 단말의 개수를 확인할 수 있다.
앞서 설명한 서버 또는 외부 서버는 특정 웹 사이트 내에서 기 설정된 버튼, 페이지 및 세션 중 적어도 하나에 연동될 수 있는데, 제어모듈은 그 연동된 공간에 대해서만 서버 또는 외부 서버에 대한 활성화를 수행하도록 제어하거나, 그 특정 웹 사이트 내에서 트래픽 증감이 발생하는 모든 공간에 대해서 서버 또는 외부 서버에 대한 활성화를 수행하도록 제어할 수도 있다.
이때, 제어모듈은 설정 조건을 기반으로 서버 또는 외부 서버에 대한 활성화를 자동으로 수행하도록 제어할 수도 있다.
도 4는 본 개시의 일 실시예에 따른 트래픽 관리 방법을 나타내는 순서도이다.
도 4를 참조하면, 타겟 서버(200)는 적어도 하나의 웹 페이지 각각의 리소스 상태를 모니터링하고(S110), 그 모니터링 결과에 따라 적어도 하나의 병목 구간을 감지한다(S120).
그 다음으로, 타겟 서버(200)는 적어도 하나의 웹 페이지 중 S120 단계에 의해 감지한 적어도 하나의 병목 구간에 대한 관리 동작의 활성화 개시 시점을 산출하여 트래픽 관리 장치(300)로 제공한다(S130).
그 다음으로, 트래픽 관리 장치(300)는 S130 단계에 의해 수신된 활성화 개시 시점을 기반으로 관리 동작에 대한 활성화를 수행하고(140), 그 활성화된 상태에서 적어도 하나의 사용자 단말로부터 접속요청이 수신되면, 그 적어도 하나의 사용자 단말에 대한 대기열을 생성한다(S150).
이로써, 그 트래픽을 순차적으로 처리(수행)할 수 있다.
도 5는 본 개시의 일 실시예에 따른 타겟 서버에서 OPRT 모듈이 리소스 상태를 모니터링 하는 구체적인 동작을 나타내는 순서도이다.
도 5를 참조하면, OPRT 모듈(220)의 리소스 관리부(221)는 모니터링 결과를 확인한다(S210). 이로써, 적어도 하나의 웹 페이지 각각에 대한 지연속도(A), 접속요청의 수(B) 및 응답속도(C)를 확인할 수 있다.
그 다음으로, 리소스 관리부(221)는 지연속도(A), 접속요청의 수(B) 및 응답속도(C)를 기 설정되는 각각의 임계치와 비교한다.
일 예로서, 지연속도(A) 및 제1 임계치(TH1)를 비교하고(S220), 그 비교 결과, 지연속도(A)가 제1 임계치(TH1) 이하인 경우에는 그 다음 단계로 진행하여 접속요청의 수(B) 및 제2 임계치(TH2)를 비교한다(S230).
마찬가지로, 접속요청의 수(B)가 제2 임계치(TH2) 이하인 경우에는 그 다음 단계로 진행하여 접속요청의 수(C) 및 제2 임계치(TH3)를 비교한다(S240).
한편, S220 단계 내지 S240 단계를 순차적으로 진행하면서 지연속도(A), 접속요청의 수(B) 및 응답속도(C) 어느 하나라도 그 각각에 대응하는 임계치(제1 임계치 내지 제3 임계치)를 초과하면, 리소스 관리부(221)는 트래픽 제어모듈을 활성화시키는 것으로 결정한다(S250).
도 5에는 지연속도(A), 접속요청의 수(B) 및 응답속도(C) 순으로 비교 동작을 수행하는 것으로 도시하였으나, 이는 일 예시일 뿐이며, 그 수행되는 순서는 한정하지 않는다.
도 6은 본 개시의 일 실시예에 따른 타겟 서버에서 OPRT 모듈이 사용자 단말의 접근 요청을 처리하는 구체적인 동작을 나타내는 순서도이다.
도 6을 참조하면, OPRT 모듈(220)는 적어도 하나의 사용자 단말(100)로부터 로그인 정보가 입력되면, 그 로그인 정보를 기반으로 로그인을 검증하고(S310), 사용자가 오브젝트를 탐색할 수 있도록 적어도 하나의 웹 페이지에 대한 오브젝트를 표시한다(S320).
그 다음으로, OPRT 모듈(220)은 S320 단계에 의해 표시된 오브젝트 중 적어도 하나의 사용자 단말(100)로부터 어느 하나의 타겟 오브젝트가 선택되면, 그 타겟 오브젝트에 대한 접근 승인 여부를 결정하고(S330), 비용 결제 승인 여부를 결정한다(S340).
도 7은 본 개시의 일 실시예에 따른 타겟 서버에서 트래픽 제어모듈의 구체적인 동작을 나타내는 순서도이다.
도 7을 참조하면, 트래픽 제어모듈(210)은 리소스 관리부(221)에 의해 활성화 명령이 감지되면(S410), 총 트래픽량(D) 및 기 설정된 제4 임계치(TH4)를 비교한다(S420).
S420 단계에 의한 비교 결과, 총 트래픽량(D)이 제4 임계치(TH4)를 초과하면, 로드밸러서를 활성화시키고(S430), 그에 따라 로드밸런서가 예상쿼리실행시간을 산출하도록 한다(S440).
한편, S420 단계에 의한 비교 결과, 총 트래픽량(D)이 제4 임계치(TH4) 이하이면, S410 단계로 진행하여 리소스 관리부(221)로부터 활성화 염령이 수신되는지 여부를 감지하여 그 이하의 동작들을 수행하도록 한다.
상기 전술한 프로그램은, 상기 컴퓨터가 프로그램을 읽어 들여 프로그램으로 구현된 상기 방법들을 실행시키기 위하여, 상기 컴퓨터의 프로세서(CPU)가 상기 컴퓨터의 장치 인터페이스를 통해 읽힐 수 있는 C, C++, JAVA, 기계어 등의 컴퓨터 언어로 코드화된 코드(Code)를 포함할 수 있다. 이러한 코드는 상기 방법들을 실행하는 필요한 기능들을 정의한 함수 등과 관련된 기능적인 코드(Functional Code)를 포함할 수 있고, 상기 기능들을 상기 컴퓨터의 프로세서가 소정의 절차대로 실행시키는데 필요한 실행 절차 관련 제어 코드를 포함할 수 있다. 또한, 이러한 코드는 상기 기능들을 상기 컴퓨터의 프로세서가 실행시키는데 필요한 추가 정보나 미디어가 상기 컴퓨터의 내부 또는 외부 메모리의 어느 위치(주소 번지)에서 참조되어야 하는지에 대한 메모리 참조관련 코드를 더 포함할 수 있다. 또한, 상기 컴퓨터의 프로세서가 상기 기능들을 실행시키기 위하여 원격(Remote)에 있는 어떠한 다른 컴퓨터나 서버 등과 통신이 필요한 경우, 코드는 상기 컴퓨터의 통신 모듈을 이용하여 원격에 있는 어떠한 다른 컴퓨터나 서버 등과 어떻게 통신해야 하는지, 통신 시 어떠한 정보나 미디어를 송수신해야 하는지 등에 대한 통신 관련 코드를 더 포함할 수 있다.
상기 저장되는 매체는, 레지스터, 캐쉬, 메모리 등과 같이 짧은 순간 동안 데이터를 저장하는 매체가 아니라 반영구적으로 데이터를 저장하며, 기기에 의해 판독(reading)이 가능한 매체를 의미한다. 구체적으로는, 상기 저장되는 매체의 예로는 ROM, RAM, CD-ROM, 자기 테이프, 플로피디스크, 광 데이터 저장장치 등이 있지만, 이에 제한되지 않는다. 즉, 상기 프로그램은 상기 컴퓨터가 접속할 수 있는 다양한 서버 상의 다양한 기록매체 또는 사용자의 상기 컴퓨터상의 다양한 기록매체에 저장될 수 있다. 또한, 상기 매체는 네트워크로 연결된 컴퓨터 시스템에 분산되어, 분산방식으로 컴퓨터가 읽을 수 있는 코드가 저장될 수 있다.
본 개시의 실시예와 관련하여 설명된 방법 또는 알고리즘의 단계들은 하드웨어로 직접 구현되거나, 하드웨어에 의해 실행되는 소프트웨어 모듈로 구현되거나, 또는 이들의 결합에 의해 구현될 수 있다. 소프트웨어 모듈은 RAM(Random Access Memory), ROM(Read Only Memory), EPROM(Erasable Programmable ROM), EEPROM(Electrically Erasable Programmable ROM), 플래시 메모리(Flash Memory), 하드 디스크, 착탈형 디스크, CD-ROM, 또는 본 개시가 속하는 기술 분야에서 잘 알려진 임의의 형태의 컴퓨터 판독가능 기록매체에 상주할 수도 있다.
이상, 첨부된 도면을 참조로 하여 본 개시의 실시예를 설명하였지만, 본 개시가 속하는 기술분야의 통상의 기술자는 본 개시가 그 기술적 사상이나 필수적인 특징을 변경하지 않고서 다른 구체적인 형태로 실시될 수 있다는 것을 이해할 수 있을 것이다. 그러므로, 이상에서 기술한 실시예들은 모든 면에서 예시적인 것이며, 제한적이 아닌 것으로 이해해야만 한다.
1, 10 : 트래픽 관리 시스템 10, 100 : 사용자 단말
20, 200 : 타겟 서버 30, 300 : 트래픽 관리 장치
11, 110 : 리퍼러 21 : 큐매니저
22 : OPRT 210 : 트래픽 제어모듈
220 : OPRT 모듈 211 : 제1 확인부
212 : 제2 확인부 221 : 리소스 관리부
222 : 접근 승인부 223 : 상품 관리부
224 : 비용 결제부

Claims (10)

  1. 타겟 서버 기반의 적어도 하나의 웹페이지의 접속요청을 송신하여 서비스를 제공받는 적어도 하나의 사용자 단말;
    상기 웹페이지 각각의 리소스 상태를 모니터링하고, 상기 모니터링 결과에 따라 적어도 하나의 병목 구간을 감지하고, 상기 적어도 하나의 병목 구간에 대한 관리 동작의 활성화 개시 시점을 산출하여 제공하고, 기 설정된 주기 마다 누적 저장된 상기 모니터링 결과를 기반으로 상습 병목 구간을 진단하여 로드밸런서의 설정 정보, 웹 서버 증설 정보 및 리소스 확보 정보를 포함한 가이드정보를 자동 생성하는 타겟 서버; 및
    상기 활성화 개시 시점을 기반으로 활성화되어 상기 병목 구간 각각에 대한 접속요청이 상기 사용자 단말로부터 수신되면, 상기 사용자 단말에 대한 대기열을 생성하고, 상기 웹페이지 내에서 기 설정된 버튼, 페이지 및 세션 중 적어도 하나의 공간에 연동되는 관리 장치를 포함하고,
    상기 로드밸런서는 데이터베이스 기반으로 데이터를 조회하는 쿼리를 사용하는 횟수가 기 설정된 임계치를 초과하는 웹 어플리케이션 서버에 대한 예상쿼리실행시간을 산출하는 것을 특징으로 하는,
    트래픽 자동 관리 시스템.
  2. 제1항에 있어서,
    상기 타겟 서버는,
    상기 모니터링 결과를 기반으로 상기 적어도 하나의 웹페이지 각각에 대한 트래픽을 제어하는 트래픽 제어모듈; 및
    상기 사용자 단말에 대한 접속이 허용되면, 로그인을 검증하여 오브젝트를 표시하고, 상기 표시된 오브젝트 중 타겟 오브젝트가 선택되면 상기 타겟 오브젝트에 대한 접근 승인 여부를 결정하고, 비용 결제가 요청되면 비용 결제 승인 여부를 결정하는 OPRT 모듈을 포함하는 것을 특징으로 하는,
    트래픽 자동 관리 시스템.
  3. 제2항에 있어서,
    상기 트래픽 제어모듈는,
    상기 대기열을 생성할 시에 상기 사용자 단말에 발급된 대기키를 확인하는 제1 확인부; 및
    상기 표시된 오브젝트 중 상기 사용자 단말에 의해 선택된 상기 타겟 오브젝트를 확인하는 제2 확인부를 포함하는 것을 특징으로 하는,
    트래픽 자동 관리 시스템.
  4. 제3항에 있어서,
    상기 OPRT 모듈은,
    상기 모니터링을 수행하는 리소스 관리부;
    상기 사용자 단말에 대한 로그인 검증 또는 상기 타겟 오브젝트에 대한 접근 승인을 수행하는 접근 승인부;
    상기 적어도 하나의 웹페이지 각각에 등록된 상품정보를 관리하는 상품 관리부; 및
    상기 비용 결제에 대한 요청에 따라 비용 결제를 수행하는 비용 결제부를 포함하는 것을 특징으로 하는,
    트래픽 자동 관리 시스템.
  5. 제4항에 있어서,
    상기 리소스 관리부는,
    상기 적어도 하나의 병목 구간을 감지할 시, 상기 적어도 하나의 웹페이지 각각에 대한 응답속도, 지연속도 및 접속요청 수를 기 설정되는 각각의 임계치와 비교하고, 상기 비교 결과에 따라 상기 트래픽 제어모듈을 활성화시킬지를 결정하는 것을 특징으로 하는,
    트래픽 자동 관리 시스템.
  6. 제5항에 있어서,
    상기 트래픽 제어모듈은,
    상기 적어도 하나의 웹페이지 각각에 대한 응답속도, 지연속도 및 접속요청 수 중 어느 하나라도 상기 각각의 임계치를 초과하는 경우에 활성화되고, 총 트래픽량을 기 설정된 트래픽 임계치와 비교하여 로드밸런서(load balancer)를 활성화시킬지 여부를 결정하는 것을 특징으로 하는,
    트래픽 자동 관리 시스템.
  7. 삭제
  8. 삭제
  9. 장치에 의해 수행되는, 리소스 상태 기반 트래픽 자동 관리 방법에 있어서,
    타겟 서버가, 상기 타겟 서버 기반의 서비스를 제공하는 특정 웹사이트에서 적어도 하나의 웹페이지 각각의 리소스 상태를 모니터링하는 단계;
    타겟 서버가, 상기 모니터링 결과에 따라 적어도 하나의 병목 구간을 감지하는 단계;
    타겟 서버가, 상기 적어도 하나의 병목 구간에 대한 관리 동작의 활성화 개시 시점을 산출하여 관리 장치로 제공하는 단계;
    상기 관리 장치가, 상기 활성화 개시 시점을 기반으로 상기 적어도 하나의 병목 구간에 각각에 대한 상기 관리 동작을 활성화하는 단계; 및
    상기 관리 장치가, 상기 적어도 하나의 병목 구간 각각에 대한 접속요청이 적어도 하나의 사용자 단말로부터 수신되면, 상기 적어도 하나의 사용자 단말에 대한 대기열을 생성하는 단계;
    상기 적어도 하나의 병목 구간을 감지하는 단계는,
    상기 적어도 하나의 웹페이지 각각에 대한 응답속도, 지연속도 및 접속요청 수를 기 설정되는 각각의 임계치와 비교하고, 상기 비교 결과에 따라 트래픽 제어동작의 활성화 여부를 결정하고,
    상기 관리 장치는, 상기 특정 웹사이트 내에서 기 설정된 버튼, 페이지 및 세션 중 적어도 하나의 공간에 연동되고,
    상기 관리 동작은, 상기 연동된 공간에 대해서만 수행되고,
    상기 타겟 서버가, 기 설정된 주기 마다 누적 저장된 상기 모니터링 결과를 기반으로 상습 병목 구간을 진단하여 가이드정보를 자동 생성하는 단계를 더 포함하고,
    상기 가이드정보는,
    로드밸런서의 설정 정보, 웹 서버 증설 정보 및 리소스 확보 정보 중 적어도 하나를 포함하고,
    상기 로드밸런서는,
    데이터베이스 기반으로 데이터를 조회하는 쿼리를 사용하는 횟수가 기 설정된 임계치를 초과하는 웹 어플리케이션 서버에 대한 예상쿼리실행시간을 산출하는 것을 특징으로 하는,
    리소스 상태 기반 트래픽 자동 관리 방법.
  10. 하드웨어인 컴퓨터와 결합되어, 상기 제9항에 따른 리소스 상태 기반 트래픽 자동 관리 방법을 수행하기 위해 컴퓨터 판독 가능한 비 일시적 기록매체에 저장된, 컴퓨터 프로그램.
KR1020220190469A 2022-12-30 2022-12-30 리소스 상태 기반 트래픽 자동 관리 시스템 및 방법 KR102519007B1 (ko)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020220190469A KR102519007B1 (ko) 2022-12-30 2022-12-30 리소스 상태 기반 트래픽 자동 관리 시스템 및 방법

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020220190469A KR102519007B1 (ko) 2022-12-30 2022-12-30 리소스 상태 기반 트래픽 자동 관리 시스템 및 방법

Publications (1)

Publication Number Publication Date
KR102519007B1 true KR102519007B1 (ko) 2023-04-06

Family

ID=85918358

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020220190469A KR102519007B1 (ko) 2022-12-30 2022-12-30 리소스 상태 기반 트래픽 자동 관리 시스템 및 방법

Country Status (1)

Country Link
KR (1) KR102519007B1 (ko)

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20020023812A (ko) * 2001-12-20 2002-03-29 장덕현 인터넷상의 협업 전자상거래 시스템 및 방법
KR101654266B1 (ko) * 2014-12-18 2016-09-05 (주)에임투지 웹 접속 관리 시스템을 통한 모니터링 기능을 제공하는 모니터링 장치
KR20190088342A (ko) * 2018-01-18 2019-07-26 주식회사맥데이타 네트워크 성능 진단 방법 및 장치, 및 시스템
KR102274343B1 (ko) 2020-03-02 2021-07-06 주식회사 케이티 도메인 별로 ip 정보를 관리하는 방법 및 이를 수행하는 트래픽 분석 장치
KR20210119372A (ko) * 2019-02-15 2021-10-05 삼성전자주식회사 네트워크 최적화 및 비 일시적 컴퓨터 판독 가능 매체를 위한 장치 및 방법

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20020023812A (ko) * 2001-12-20 2002-03-29 장덕현 인터넷상의 협업 전자상거래 시스템 및 방법
KR101654266B1 (ko) * 2014-12-18 2016-09-05 (주)에임투지 웹 접속 관리 시스템을 통한 모니터링 기능을 제공하는 모니터링 장치
KR20190088342A (ko) * 2018-01-18 2019-07-26 주식회사맥데이타 네트워크 성능 진단 방법 및 장치, 및 시스템
KR20210119372A (ko) * 2019-02-15 2021-10-05 삼성전자주식회사 네트워크 최적화 및 비 일시적 컴퓨터 판독 가능 매체를 위한 장치 및 방법
KR102274343B1 (ko) 2020-03-02 2021-07-06 주식회사 케이티 도메인 별로 ip 정보를 관리하는 방법 및 이를 수행하는 트래픽 분석 장치

Similar Documents

Publication Publication Date Title
US20180331905A1 (en) Method and system for tuning performance of microservices-based applications
US8700931B2 (en) Method and system for managing power of a mobile device
US11500735B2 (en) Dynamic optimization of backup policy
US10783002B1 (en) Cost determination of a service call
US20170331674A1 (en) Method and Apparatus for Controlling Database Connection
US20200250677A1 (en) Processing service requests based on risk identification
CN105493066A (zh) 基于缩放规则来维护云网络上的服务
US10838798B2 (en) Processing system for performing predictive error resolution and dynamic system configuration control
US20210390029A1 (en) Method and apparatus for testing stress based on cloud service
US20190377623A1 (en) Processing System For Performing Predictive Error Resolution and Dynamic System Configuration Control
EP3755047B1 (en) Load migration method and destination controller
US20200394063A1 (en) Systems and methods for end user experience based migration of user workloads across a computer cluster
CN110875838B (zh) 一种资源部署方法、装置和存储介质
CN109828830B (zh) 用于管理容器的方法和装置
KR102543838B1 (ko) 정보 획득 방법 및 장치
KR102519007B1 (ko) 리소스 상태 기반 트래픽 자동 관리 시스템 및 방법
US10171609B2 (en) Constraint based signal for intellegent and optimized end user mobile experience enhancement
US9185556B2 (en) Method and system for forming a common network using shared private wireless networks
CN111831503B (zh) 一种基于监控代理的监控方法和监控代理装置
KR102519056B1 (ko) 다중 uri 기반 대기열 관리 장치 및 방법
KR102525069B1 (ko) 클라우드 서버의 리소스 최적화를 위한 트랜잭션 관리 장치 및 방법
US20210256600A1 (en) Connector leasing for long-running software operations
CN111949862B (zh) 一种管理业务任务流程的方法、装置和电子设备
KR102634198B1 (ko) 디지털 서비스 기반의 접속 통제를 위한 트랜잭션 관리서버 및 방법
KR102529690B1 (ko) 시설 관리 서비스 제공 방법 및 장치

Legal Events

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