KR102531621B1 - 클라우드 기반 유량제어 비용 최적화를 위한 리소스 최적화 서버, 시스템 및 방법 - Google Patents

클라우드 기반 유량제어 비용 최적화를 위한 리소스 최적화 서버, 시스템 및 방법 Download PDF

Info

Publication number
KR102531621B1
KR102531621B1 KR1020220190179A KR20220190179A KR102531621B1 KR 102531621 B1 KR102531621 B1 KR 102531621B1 KR 1020220190179 A KR1020220190179 A KR 1020220190179A KR 20220190179 A KR20220190179 A KR 20220190179A KR 102531621 B1 KR102531621 B1 KR 102531621B1
Authority
KR
South Korea
Prior art keywords
server
cost
queue
service
expected
Prior art date
Application number
KR1020220190179A
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 KR1020220190179A priority Critical patent/KR102531621B1/ko
Application granted granted Critical
Publication of KR102531621B1 publication Critical patent/KR102531621B1/ko

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L43/00Arrangements for monitoring or testing data switching networks
    • H04L43/04Processing captured monitoring data, e.g. for logfile generation
    • H04L43/045Processing captured monitoring data, e.g. for logfile generation for graphical visualisation of monitoring data
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L41/00Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
    • H04L41/22Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks comprising specially adapted graphical user interfaces [GUI]
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L41/00Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
    • H04L41/50Network service management, e.g. ensuring proper service fulfilment according to agreements
    • H04L41/5041Network service management, e.g. ensuring proper service fulfilment according to agreements characterised by the time relationship between creation and deployment of a service
    • 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

Abstract

클라우드 기반 유량제어 비용 최적화를 위한 리소스 최적화 서버, 시스템 및 방법이 개시된다. 본 발명의 일 실시예에 따른 리소스 최적화 서버는, 통신부; 및 통신부와 연결되어, 유량제어 비용을 기초로 서비스 서버로의 유량을 제어하기 위한 프로세서;를 포함하고, 프로세서는, 서비스 서버의 잔여 리소스가 기준치 이하인 경우, 대기열 생성 시 예상 비용 및 서버 환경 조정 비용을 산출하고, 및 대기열 생성 시 예상 비용 및 서버 환경 조정 비용을 기초로 사용자 단말의 서비스 서버로의 접속을 위한 대기열을 생성하도록 하거나, 또는 서비스 서버 내 서버 환경을 조정하여 유량을 제어하며, 서버 환경을 조정하는 것은 서비스 서버의 스펙의 상향 조정 및 서비스 서버 내 서버 증설 중 적어도 하나 이상을 포함한다.

Description

클라우드 기반 유량제어 비용 최적화를 위한 리소스 최적화 서버, 시스템 및 방법{RESOURCE OPTIMIZATION SERVER, SYSTEM AND METHOD FOR FLOW CONTROL COST OPTIMIZATION BASED ON CLOUD}
본 개시는 서비스 서버 내 유량제어 솔루션을 제공하는 방법에 관한 것이다. 보다 상세하게는, 본 개시는 클라우드 기반 유량제어 비용 최적화를 위한 리소스 최적화 서버, 리소스 최적화 시스템 및 방법에 관한 것이다.
수강신청, 콘서트 예약 및 구매 이벤트 등의 콘텐츠 서비스를 제공하는 서비스 서버의 동시 접속자가 증가함에 따라, 콘텐츠 서비스를 제공하는 서비스 서버측의 응답속도가 저하되거나 서비스가 중단되는 등의 상황이 종종 발생하고 있는 실정이다.
서비스 서버는 HTML(hypertext markup language)로 구성된 웹 페이지를 제공하는 WEB, WEB으로부터 전달된 요청 메시지에 대한 응용 프로그램 서비스를 처리하는 WAS(web application server) 및 쿼리문에 대한 응답으로 제공할 수 있는 데이터를 저장하는 데이터베이스로 구성될 수 있다.
상술한 서비스 서버에서, 동시 접속자가 폭주하는 경우, 구성요소들의 리소스 부족으로 인해 응답시간이 지연되는 현상이 발생할 수 있다. 이를 해결하기 위해, 서비스 서버로의 사용자 단말의 접속을 제어하는 서비스도 제공되고 있는 실정이다.
대한민국 등록특허공보 제10-1654266호 (2016. 08. 30.)
본 개시에 개시된 실시예는 서비스 서버로의 접속을 위한 대기열 생성 또는 서버 환경 조정 시 예상되는 비용을 기초로 서비스 서버 내부의 유량제어 솔루션을 제공하기 위한 클라우드 기반 유량제어 비용 최적화를 위한 리소스 최적화 서버, 시스템 및 방법을 제공하는데 그 목적이 있다.
본 개시가 해결하고자 하는 과제들은 이상에서 언급된 과제로 제한되지 않으며, 언급되지 않은 또 다른 과제들은 아래의 기재로부터 통상의 기술자에게 명확하게 이해될 수 있을 것이다.
상술한 기술적 과제를 달성하기 위한 본 개시에 일 측면에 따른 리소스 최적화 서버는, 통신부; 및 상기 통신부와 연결되어, 유량제어 비용을 기초로 서비스 서버로의 유량을 제어하기 위한 프로세서;를 포함하고, 상기 프로세서는, 상기 서비스 서버의 잔여 리소스가 기준치 이하인 경우, 대기열 생성 시 예상 비용 및 서버 환경 조정 비용을 산출하고, 및 상기 대기열 생성 시 예상 비용 및 상기 서버 환경 조정 비용을 기초로 사용자 단말의 상기 서비스 서버로의 접속을 위한 대기열을 생성하도록 하거나, 또는 상기 서비스 서버 내 서버 환경을 조정하여 유량을 제어하며, 상기 서버 환경을 조정하는 것은 상기 서비스 서버의 스펙의 상향 조정 및 상기 서비스 서버 내 서버 증설 중 적어도 하나 이상을 포함할 수 있다.
상기 프로세서는, 상기 대기열 생성 시 예상 비용을 산출할 때, 대기열 생성 시 단위시간 당 예상 이탈 비용 또는 대기열 생성 시 단위시간 당 예상 이용 비용을 산출할 수 있다.
상기 프로세서는, 상기 서버 환경 조정 시, 단위시간 당 추가 수용인원을 기초로 예상되는 상기 서버 환경 조정 비용을 산출할 수 있다.
상기 프로세서는, 상기 서비스 서버 내 서버 환경 조정이 완료되기 이전까지 진입 관리 서버를 통해 임시 대기열을 생성하도록 하고, 상기 서버 환경 조정 비용을 산출할 때, 상기 임시 대기열 생성 시 예상 비용을 추가로 적용하여 상기 서버 환경 조정 비용을 산출할 수 있다.
상기 프로세서는, 상기 유량을 제어할 때, 상기 대기열 생성 시 예상 비용이 상기 서버 환경 조정 비용 보다 큰 경우, 상기 서비스 서버 내 서버 환경을 조정하고, 상기 서버 환경 조정 비용이 상기 대기열 생성 시 예상 비용 보다 큰 경우, 상기 서비스 서버로의 접속을 위한 대기열을 생성할 수 있다.
콘텐츠 서비스의 타입은 서비스 제공 주체 및 서버 환경 조정의 소요시간 중 적어도 하나 이상을 포함할 수 있다.
상기 프로세서는, 상기 유량을 제어할 때, 상기 서비스 제공 주체의 리소스 사용의 유동범위가 기준범위를 초과하는 경우, 상기 대기열 생성 시 예상 비용이 상기 서버 환경 조정 비용 보다 크다고 판단하여 서버 환경 조정을 수행하고, 상기 서비스 제공 주체의 리소스 사용의 유동범위가 상기 기준범위 이하인 경우, 상기 서버 환경 조정 비용이 상기 대기열 생성 시 예상 비용 보다 크다고 판단하여 대기열을 생성하도록 하고, 및 상기 유량을 제어할 때, 상기 서버 환경 조정의 소요시간이 기준시간을 초과하는 경우, 상기 서버 환경 조정 비용이 상기 대기열 생성 시 예상 비용 보다 크다고 판단하여 대기열을 생성하도록 하고, 상기 서버 환경 조정의 소요시간이 상기 기준시간 이하인 경우, 상기 대기열 생성 시 예상 비용이 상기 서버 환경 조정 비용 보다 크다고 판단하여 서버 환경 조정을 수행할 수 있다.
상기 트래픽 정보는, 트래픽 증가 추세, 트래픽 감소 추세, 트래픽 양, 트래픽 변화량, 트래픽 변화 시간대 및 시간대별 트래픽 중 적어도 하나 이상을 포함하고, 상기 프로세서는, 상기 유량을 제어할 때, 상기 트래픽 증가 추세, 상기 트래픽 감소 추세, 상기 트래픽 양, 상기 트래픽 변화량, 상기 트래픽 변화 시간대 및 상기 시간대별 트래픽 중 적어도 하나 이상을 고려하여 상기 대기열 생성 시 예상 비용 및 상기 서버 환경 조정 비용을 산출하고 상기 유량을 제어할 수 있다.
상기 프로세서는, 상기 콘텐츠 서비스의 타입, 상기 트래픽 정보 및 사용자의 로그정보를 기초한 시간대별 트래픽을 인공지능 모델에 입력하여 획득된 대기열 생성 및 서버 환경 조정 중 어느 하나를 기초로 시간대별 유량 제어 조건을 변경하여 적용할 수 있다.
또한, 본 개시의 다른 측면에 따른 리소스 최적화 시스템은, 콘텐츠 서비스를 제공하는 서비스 서버로부터 리소스 상태를 수집하여 전달하고 상기 서비스 서버로의 사용자 단말의 접속을 관리하는 진입 관리 서버; 및 상기 서비스 서버의 잔여 리소스가 기준치 이하인 경우, 대기열 생성 시 예상 비용 및 서버 환경 조정 비용을 산출하고, 및 산출된 상기 대기열 생성 시 예상 비용 및 상기 서버 환경 조정 비용을 기초로 상기 사용자 단말의 상기 서비스 서버로의 접속을 위한 대기열을 생성하도록 하거나, 또는 상기 서비스 서버 내 서버 환경을 조정하여 유량을 제어하는 리소스 최적화 서버;를 포함할 수 있다.
또한, 본 개시의 다른 측면에 따른 리소스 최적화 방법은, 리소스 최적화 시스템에 의해 수행되는 방법에 있어서, 콘텐츠 서비스를 제공하는 서비스 서버로부터 리소스 상태를 수집하는 단계; 상기 서비스 서버의 잔여 리소스가 기준치 이하인 경우, 대기열 생성 시 예상 비용 및 서버 환경 조정 비용을 산출하는 단계; 및 상기 대기열 생성 시 예상 비용 및 상기 서버 환경 조정 비용을 기초로 사용자 단말의 상기 서비스 서버로의 접속을 위한 대기열을 생성하도록 하거나, 또는 상기 서비스 서버 내 서버 환경을 조정하여 유량을 제어하는 단계;를 포함할 수 있다.
이 외에도, 본 개시를 구현하기 위한 실행하기 위한 컴퓨터 판독 가능한 기록 매체에 저장된 컴퓨터 프로그램이 더 제공될 수 있다.
이 외에도, 본 개시를 구현하기 위한 방법을 실행하기 위한 컴퓨터 프로그램을 기록하는 컴퓨터 판독 가능한 기록 매체가 더 제공될 수 있다.
본 개시의 전술한 과제 해결 수단에 의하면, 서비스 서버로의 접속을 위한 대기열 생성 또는 서버 환경 조정 시 예상되는 비용을 기초로 서비스 서버 내부의 유량제어 솔루션을 제공하기 때문에, 유량제어 시 비용을 최적화할 수 있다는 효과를 제공한다.
본 개시의 효과들은 이상에서 언급된 효과로 제한되지 않으며, 언급되지 않은 또 다른 효과들은 아래의 기재로부터 통상의 기술자에게 명확하게 이해될 수 있을 것이다.
도 1은 본 개시의 리소스 최적화 시스템과 타 구성들 간의 연결 관계를 나타내는 도면
도 2는 본 개시의 리소스 최적화 시스템의 구성을 나타내는 블록도
도 3은 본 개시의 리소스 최적화 서버의 구성을 나타내는 블록도
도 4 내지 도 8은 본 개시의 솔루션 제공 방법을 설명하기 위한 예시도
도 9는 본 개시의 솔루션 제공 방법을 설명하기 위한 흐름도
본 개시 전체에 걸쳐 동일 참조 부호는 동일 구성요소를 지칭한다. 본 개시가 실시예들의 모든 요소들을 설명하는 것은 아니며, 본 개시가 속하는 기술분야에서 일반적인 내용 또는 실시예들 간에 중복되는 내용은 생략한다. 명세서에서 사용되는 '부, 모듈, 부재, 블록'이라는 용어는 소프트웨어 또는 하드웨어로 구현될 수 있으며, 실시예들에 따라 복수의 '부, 모듈, 부재, 블록'이 하나의 구성요소로 구현되거나, 하나의 '부, 모듈, 부재, 블록'이 복수의 구성요소들을 포함하는 것도 가능하다.
명세서 전체에서, 어떤 부분이 다른 부분과 "연결"되어 있다고 할 때, 이는 직접적으로 연결되어 있는 경우 뿐 아니라, 간접적으로 연결되어 있는 경우를 포함하고, 간접적인 연결은 무선 통신망을 통해 연결되는 것을 포함한다.
또한 어떤 부분이 어떤 구성요소를 "포함"한다고 할 때, 이는 특별히 반대되는 기재가 없는 한 다른 구성요소를 제외하는 것이 아니라 다른 구성요소를 더 포함할 수 있는 것을 의미한다.
명세서 전체에서, 어떤 부재가 다른 부재 "상에" 위치하고 있다고 할 때, 이는 어떤 부재가 다른 부재에 접해 있는 경우뿐 아니라 두 부재 사이에 또 다른 부재가 존재하는 경우도 포함한다.
제 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) 등과 같은 웨어러블 장치를 포함할 수 있다.
도 1은 본 개시의 리소스 최적화 시스템과 타 구성들 간의 연결 관계를 나타내는 도면이다.
도 1을 참고하면, 진입 관리 서버(100)는 사용자 단말(End-User(Browser))(400)과 서비스 서버(300) 사이에 위치하여, 사용자 단말(400)의 서비스 서버(300)로의 진입을 관리할 수 있다. 이때, 진입은 사용자 단말(400)이 서비스 서버(300)에 접속되는 것을 의미할 수 있다.
진입 관리 서버(100)는 서비스 서버(300)로의 진입을 요청하는 사용자 단말(400)에 대해 차단, 우회 및 진입 허용 관리의 절차를 수행할 수 있다.
상기 차단은 초당 접근 수가 매크로 수준인 경우, 차단 정보를 사용자 단말(400)로 전송하여 특정 액션을 발생시키는 버튼(예를 들어, 제출 및 확인 등)을 선택하지 못하도록 차단하는 절차를 의미할 수 있다.
상기 우회는 서비스 서버(300)로의 진입을 대기하기 위한 대기열이 발생한 상태여도 특정한 정책이나 주요 클라이언트인 경우, 대기하지 않고 서비스 서버(300)로 바로 진입하도록 우회시키는 절차를 의미할 수 있다.
상기 진입 허용 관리는 서비스 서버(300)로의 진입을 위한 정상적인 대기 관리를 의미하는 것으로서, 진입 허용 수를 기초로 진입을 제어하여 콘텐츠 서비스를 제공하는 서비스 서버(300)의 리소스 또는 상태를 관리하는 절차를 의미할 수 있다.
이때, 진입 허용 수는 진입 관리 서버(100)의 키(key)를 발급받아 해당 시간에 서비스 서버(300)의 특정 트랜잭션(예를 들어, 로그인 버튼, 수강 신청 버튼 등)에 동시 진입이 가능한 사용자 수를 의미할 수 있다. 이때, 사용자 수는 실질적으로 사용자 단말(400)을 통해 서비스 서버(300)로 진입할 수 있는 사용자 단말(400) 수를 의미할 수 있다.
한편, 본 개시의 리소스 최적화 시스템(10)은 상술한 진입 관리 서버(100) 뿐만 아니라 리소스 최적화 서버(200)를 추가로 포함할 수 있다.
리소스 최적화 시스템(10)은 서비스 서버(300) 내 로드 밸런서, 웹 서버, 복수의 애플리케이션 서버 및 DB 서버와 같은 구성요소의 리소스 상태를 모니터링하여 서버 환경 조정을 수행하거나, 또는 서비스 서버(300)로의 진입 관리를 위한 대기열 생성을 수행하여 유량 제어를 할 수 있다. 상기 서버 환경 조정은 서비스 서버(300)의 구성요소들 스펙의 상향 조정 및 서비스 서버(300) 내 서버 증설 중 적어도 하나 이상을 포함할 수 있다. 또한, 대기열 생성은 서비스 서버(300)로 진입 요청한 사용자 단말(400)을 대기시키기 위해 생성된 것으로, 서비스 서버(300)가 진입 요청에 대한 회신이 가능한 상태로 전환될 때까지 대기시킬 수 있다.
리소스 최적화 시스템(10)은 서버 환경 조정 및 대기열 생성에 따른 각각의 유량 제어 비용을 산출하고, 산출 결과를 기초로 비용이 보다 적게 소요되는 유량 제어(서버 환경 조정 또는 대기열 생성)를 수행할 수 있다. 이에 대한 상세 설명은 후술하기로 한다.
한편, 상술한 애플리케이션 서버는 하기 WAS를 의미할 수 있다.
서비스 서버(300)는 웹(web) 서버, 웹 애플리케이션 서버(web application server, 이하, WAS라고 하기로 함) 및 DB(database) 서버를 포함할 수 있다. 이때, DB 서버는 데이터베이스 관리 시스템(database management system, DBMS)이라 하는 것도 가능하다.
웹 서버는 HTTP(hypertext transfer protocol) 프로토콜을 기반으로 웹 브라우저 또는 웹 크롤러와 같은 클라이언트의 요청을 주로 처리하는 서버를 의미하는 것으로, HTTP 요청(request)을 수신하면 이에 대한 HTTP 응답(response)을 회신할 수 있다.
예를 들어, 웹 서버는 파일 경로 이름을 수신하여 경로와 일치하는 정적(static)인 형태의 파일 콘텐츠(html, jpeg, css 등)를 반환할 수 있다.
웹 서버는 동적인 컨텐츠 제공을 위한 요청을 WAS로 전달하고, 이에 대한 처리 결과를 WAS로부터 수신하여 클라이언트에게 전달할 수 있다.
WAS는 HTTP를 이용한 애플리케이션 서버를 의미하는 것으로, 정적인 HTTP 데이터 처리에 특화된 웹 서버에 동적인 데이터를 이용할 수 있도록 하는 컨테이너(container)를 포함할 수 있다.
WAS는 DB 서버 조회나 다양한 로직 처리를 요구하는 동적인 컨텐츠를 제공하기 위한 애플리케이션 서버일 수 있다. 상기, WAS는 HTTP를 통해 컴퓨터나 장치에 애플리케이션을 수행하여 주는 미들웨어(소프트웨어 엔진)일 수 있다. WAS는 웹 컨테이너(web container) 또는 서블릿 컨테이너(servlet container)라고 명명하는 것도 가능하다. 이때, 컨테이너는 JSP 및 Servlet을 실행시킬 수 있는 소프트웨어를 의미할 수 있다.
WAS는 분산 트랜잭션, 보안, 메시징, 스레드 처리 등의 기능을 처리하는 분산 환경에서 적용될 수 있다.
구체적으로, WAS는 프로그램 실행 환경과 DB 서버의 접속 기능 및 다수의 트랜잭션 관리 기능을 구현할 수 있다. 상기 트랜잭션은 논리적인 작업 단위를 의미할 수 있다.
WAS는 사용자의 요청에 따라 DB 서버로부터 해당 데이터를 수신하여, 비즈니스 로직에 맞게 실시간으로 결과를 생성하여 제공할 수 있다. 상기 WAS는 복수 개로 구현될 수 있으며, 각 서비스 서버(300)마다 적용하는 WAS의 개수가 상이할 수 있다.
DB(database) 서버는 데이터를 저장 및 관리하는 구성을 의미할 수 있다. 이때, DB 서버는 WAS의 요청에 따라 해당 데이터를 회신할 수 있다.
도 2는 본 개시의 리소스 최적화 시스템의 구성을 나타내는 블록도이다.
도 2를 참고하면, 리소스 최적화 시스템(10)은 진입 관리 서버(100) 및 리소스 최적화 서버(200)를 포함할 수 있다.
진입 관리 서버(100)는 콘텐츠 서비스(수강신청, 콘서트 예매, 숙박업소 예약, 교통수단 예매 등)를 제공하는 서비스 서버(300)로부터 리소스 상태를 수집하여 전달하고 서비스 서버(300)로의 사용자 단말(400)의 접속을 관리할 수 있다. 이때, 진입 관리 서버(100)는 서비스 서버(300)의 리소스 상태를 리소스 최적화 서버(200)로 전달할 수 있다. 상술한 리소스 상태는 서비스 서버(300) 내 구성요소들의 CPU 사용량, GPU 사용량, 메모리 사용량 등을 포함할 수 있으며, 각각은 식별정보와 매칭될 수 있다. 이때, 리소스 상태는 사용량 뿐만 아니라 잔여량도 포함할 수 있다.
리소스 최적화 서버(200)는 서비스 서버(300)의 잔여 리소스가 기준치 이하인 경우, 대기열 생성 시 예상 비용 및 서버 환경 조정 비용을 산출할 수 있다. 이때, 대기열 생성 시 예상 비용은 사용자 단말(400)의 서비스 서버(300)로의 진입을 관리하기 위한 대기열 생성 시 발생되는 예상 비용을 의미하는 것으로, 대기열 생성 시 단위시간 당 예상 이탈 비용 또는 대기열 생성 시 단위시간 당 예상 이용 비용을 기초로 산출할 수 있다. 또한, 서버 환경 조정 비용은 서버 환경 조정 시 단위시간당 추가 수용인원을 기초한 예상 비용을 의미할 수 있다.
또한, 리소스 최적화 서버(200)는 산출된 대기열 생성 시 예상 비용 및 서버 환경 조정 비용을 기초로 사용자 단말(400)의 서비스 서버(300)로의 접속을 위한 대기열을 생성하도록 하거나, 또는 서비스 서버 내 서버 환경을 조정할 수 있다. 상기 서버 환경을 조정하는 것은 서비스 서버(300) 내 구성요소들의 스펙을 상향 조정하거나, 또는 서비스 서버(300) 내 서버 증설하는 것을 포함할 수 있다.
도 2를 참고하면, 서비스 서버(300)는 로드 밸런서(310), 복수의 애플리케이션 서버(320) 및 DB 서버(330)와 같은 구성요소를 포함할 수 있고, 이에 한정되지 않고 웹 서버 및 캐시 서버 등의 구성요소를 추가로 포함할 수 있다.
상기 애플리케이션 서버(320)는 복수일 수 있다. 이때, 복수의 애플리케이션 서버(320) 각각은 로그인 담당, 결제 담당 및 회원정보 담당 등과 같은 역할 중 적어도 하나를 부여받고, 부여된 역할과 관련된 쿼리 신호 발생 등의 동작을 수행할 수 있다.
본 개시의 로드 밸런서(310), 복수의 애플리케이션 서버(320) 및 DB 서버(330)를 비롯한 서비스 서버(300) 내 구성요소는 가상 머신(virtual machine, VM) 형태로, 리소스 상태에 따라 서버 증설 및 서버 폐지를 수행할 수 있다. 즉, 본 개시에서 서버 환경 조정 시 증설 또는 폐지되는 서버(구성요소)는 가상 머신일 수 있는 것이다.
상술한 구성요소 각각은 리소스 최적화 시스템(10)과 정보 송수신 역할을 수행하는 에이전트(로드 에이전트(312), 앱 에이전트(322), DB 에이전트(332))가 설치될 수 있다. 이러한 에이전트는 자신이 설치된 구성요소의 데이터를 수집하여 리소스 최적화 시스템(10)의 진입 관리 서버(100) 또는 리소스 최적화 서버(200)로 전달할 수 있다.
도 3은 본 개시의 리소스 최적화 서버의 구성을 나타내는 블록도이다.
이하에서는, 본 개시의 솔루션 제공 방법을 설명하기 위한 예시도인 도 4 내지 도 8을 참조하여 설명하기로 한다.
도 3을 참고하면, 리소스 최적화 서버(200)는 프로세서(210), 메모리(230) 및 통신부(250)를 포함한다. 도 3에 도시된 구성요소들은 본 개시에 따른 리소스 최적화 서버(200)를 구현하는데 있어서 필수적인 것은 아니어서, 본 명세서 상에서 설명되는 리소스 최적화 서버(200)는 위에서 열거된 구성요소들 보다 많거나, 또는 적은 구성요소들을 가질 수 있다.
프로세서(210)는 통신부(250)와 연결되어, 유량제어 비용을 기초로 서비스 서버로의 유량을 제어하기 위한 구성일 수 있다.
프로세서(210)는 서비스 서버(300)의 잔여 리소스가 기준치 이하인 경우, 대기열 생성 시 예상 비용 및 서버 환경 조정 비용을 산출할 수 있다. 이때, 프로세서(210)는 서비스 서버의 잔여 리소스가 기준치 이하인 경우 이후 전달되는 콘텐츠 서비스와 관련된 쿼리 요청을 처리할 때 리소스 부족 현상이 발생할 수 있다고 판단하여, 사전에 대기열 생성 또는 서버 환경 조정을 수행하도록 하는 것이다.
구체적으로, 본 개시의 프로세서(210)는 서비스 서버(300)의 잔여 리소스를 체크할 때 서비스 서버(300)내 모든 구성요소들에 대한 잔여 리소스를 체크하거나, 또는 서비스 서버(300)내 기 설정된 구성요소들에 대한 잔여 리소스를 체크할 수 있다. 본 개시는 쿼리 요청에 대한 처리를 주로 수행하는 구성요소를 사전에 설정하고, 기 설정된 구성요소들에 대해서만 잔여 리소스를 체크하여, 불필요한 대기열 생성 또는 서버 환경 조정에 따른 비용 발생을 사전에 차단하거나, 또는 사전에 빠르게 대비하여 서비스 서버(300) 내 구성요소의 리소스 상태를 안정화 시킬 수 있다는 효과를 기대할 수 있다.
프로세서(210)는 대기열 생성 시 예상 비용 및 서버 환경 조정 비용을 기초로 사용자 단말(400)의 서비스 서버(300)로의 접속을 위한 대기열을 생성하도록 하거나, 또는 서비스 서버(300) 내 서버 환경을 조정하여 유량을 제어할 수 있다. 상기 서버 환경을 조정하는 것은 서비스 서버(300)의 스펙의 상향 조정 및 서비스 서버(300) 내 서버 증설 중 적어도 하나 이상을 포함할 수 있다. 추가로 서버 환경 조정 시, 서버 증설뿐만 아니라, 서버 폐지도 수행할 수 있다. 본 개시에서, 대기열 생성 시 예상 비용 및 서버 환경 조정 비용은 설명의 편의를 위해 유량제어 비용이라 명명할 수 있다.
이하에서는, 본 개시에서 유량제어 비용을 산출하는 방법을 설명하기로 한다.
일 예로, 프로세서(210)는 유량 제어를 위한 유량제어 비용 산출 시, 서버 환경 조정 시 단위시간당 추가 수용인원을 기초한 예상 비용과 대기열 생성 시 단위시간 당 예상 이용 비용의 차이를 기초로 산출할 수 있다. 이때, 대기열 생성 시 단위시간 당 예상 이용 비용은 대기열 생성 시 단위시간 당 예상 사용자 단말(400) 수를 기초한 예상 비용을 의미할 수 있다.
다른 예로, 프로세서(210)는 유량제어 비용 산출 시, 대기열 생성 시 단위시간 당 예상 이탈 비용과 서버 환경 조정 시 추가 수용인원을 기초한 예상 비용의 차이를 기초로 산출할 수 있다.
프로세서(210)는 대기열 생성 시 예상 비용을 산출할 때, 대기열 생성 시 단위시간 당 예상 이탈 비용 또는 대기열 생성 시 단위시간 당 예상 이용 비용을 산출할 수 있다.
일 예로, 프로세서(210)는 서버 환경 조정 시, 단위시간 당 추가 수용인원을 기초로 예상되는 서버 환경 조정 비용을 산출할 수 있다.
다른 예로, 프로세서(210)는 서비스 서버(300) 내 서버 환경 조정이 완료되기 이전까지 진입 관리 서버를 통해 임시 대기열을 생성하도록 할 수 있다. 이를 위해, 프로세서(210)는 진입 관리 서버(100)로 임시 대기열 생성 요청을 전송할 수 있다.
이때, 프로세서(210)는 서버 환경 조정 비용을 산출할 때, 임시 대기열 생성 시 예상 비용을 추가로 적용하여 서버 환경 조정 비용을 산출할 수 있다. 즉, 프로세서(210)는 서버 환경 조정 시의 단위시간 당 추가 수용인원에 대한 예상 비용 및 임시 대기열 생성 시 예상 비용을 합산하여 서버 환경 조정 비용을 산출할 수 있다는 것이다.
프로세서(210)는 유량을 제어할 때, 대기열 생성 시 예상 비용이 서버 환경 조정 비용 보다 큰 경우, 서비스 서버(300) 내 서버 환경을 조정하고, 서버 환경 조정 비용이 대기열 생성 시 예상 비용 보다 큰 경우, 서비스 서버(300)로의 접속을 위한 대기열을 생성하도록 할 수 있다.
서비스 서버(300)로부터 제공되는 콘텐츠 서비스의 타입은 서비스 제공 주체 및 서버 환경 조정의 소요시간 중 적어도 하나 이상을 포함할 수 있다. 예를 들어, 서비스 제공 주체는 관공서, 이커머스(E-Commerce) 등일 수 있다.
프로세서(210)는 유량을 제어할 때, 서비스 제공 주체의 리소스 사용의 유동범위가 기준범위를 초과하는 경우, 대기열 생성 시 예상 비용이 서버 환경 조정 비용 보다 크다고 판단하여 서버 환경 조정을 수행할 수 있다.
반대로, 프로세서(210)는 서비스 제공 주체의 리소스 사용의 유동범위가 기준범위 이하인 경우, 서버 환경 조정 비용이 대기열 생성 시 예상 비용 보다 크다고 판단하여 대기열을 생성하도록 할 수 있다. 이를 위해, 프로세서(210)는 진입 관리 서버(100)로 임시 대기열 생성 요청을 전송할 수 있다.
예를 들어, 서비스 제공 주체가 이커머스인 경우 리소스 사용의 유동범위가 상대적으로 크고, 서비스 제공 주체가 관공서인 경우 리소스 사용의 유동범위가 상대적으로 적을 수 있다. 이에, 프로세서(210)는 리소스 사용의 유동범위가 상대적으로 큰 경우 서버 환경 조정 비용이 더 저렴하다고 판단하여, 서버 환경 조정을 수행하고, 리소스 사용의 유동범위가 상대적으로 적은 경우 대기열 생성 예상 비용이 더 저렴하다고 판단하여 대기열 생성을 수행하도록 할 수 있는 것이다.
프로세서(210)는 유량을 제어할 때, 서버 환경 조정의 소요시간이 제1 기준시간을 초과하는 경우, 서버 환경 조정 비용이 대기열 생성 시 예상 비용 보다 크다고 판단하여 대기열을 생성하도록 할 수 있다. 이때, 서버 환경 조정의 소요시간은 예상 소요시간을 의미할 수 있다. 본 개시의 프로세서(210)는 증설할 서버 또는 스펙 상향을 비롯한 동일한 환경을 기반한 과거 이력, 또는 운용자의 사전 등록을 통해 서버 환경 조정의 소요시간을 미리 예상할 수 있다.
반대로, 프로세서(210)는 서버 환경 조정의 소요시간이 제1 기준시간 이하인 경우, 대기열 생성 시 예상 비용이 서버 환경 조정 비용 보다 크다고 판단하여 서버 환경 조정을 수행할 수 있다.
상술한 제1 기준시간은 서버 환경 조정에 따라 예상 비용이 대기열 생성 비용 보다 적을 때를 기준으로 설정된 시간일 수 있다. 만약, 서버 환경 조정의 소요시간이 제1 기준시간을 초과하는 경우, 서버 환경 조정이 완료될 때까지 임시 대기열을 생성해야 하는 비용 및 서버 환경 조정 비용이 모두 적용되는 것으로, 비용뿐만 아니라 쿼리신호에 대한 응답속도 면에서도 별다른 이점이 없기 때문에, 프로세서(210)는 유량제어 방법으로 대기열 생성을 선택한다는 것이다.
프로세서(210)는 유량을 제어할 때, 트래픽 정보를 고려할 수 있다. 상기 트래픽 정보는, 트래픽 증가 추세, 트래픽 감소 추세, 트래픽 양, 트래픽 변화량, 트래픽 변화 시간 및 시간대별 트래픽 중 적어도 하나 이상을 포함할 수 있다.
프로세서(210)는 유량을 제어할 때, 트래픽 증가 추세, 트래픽 감소 추세, 트래픽 양, 트래픽 변화량, 트래픽 변화 시간 및 시간대별 트래픽 중 적어도 하나 이상을 고려하여 대기열 생성 시 예상 비용 및 서버 환경 조정 비용을 산출하고 유량을 제어할 수 있다.
프로세서(210)는 트래픽 증가 추세가 미리 결정된 시간을 초과하면, 서버 환경 조정 비용이 대기열 생성 시 예상 비용 보다 크다고 판단하여, 대기열을 생성하도록 할 수 있다. 이때, 트래픽 증가 추세는 트래픽 증가가 지속적으로 이루어지는 경우의 추세를 의미하는 것일 수 있다.
도 4를 참고하면, 프로세서(210)는 트래픽 증가의 지속시간이 미리 결정된 시간(Tref-1)을 초과하면(dL/dt의 지속시간 > tref-1), 서버 환경을 조정해도 계속 트래픽이 증가하여 추가 서버 환경 조정이 계속 발생할 수 있기 때문에, 대기열 생성을 수행하도록 한다는 것이다.
프로세서(210)는 트래픽 감소 추세가 미리 결정된 시간을 초과하면, 서버 환경 조정 비용이 대기열 생성 시 예상 비용 보다 크다고 판단하여, 대기열을 생성하도록 할 수 있다. 이때, 트래픽 감소 추세는 트래픽 감소가 지속적으로 이루어지는 경우의 추세를 의미하는 것일 수 있다.
도 5를 참고하면, 프로세서(210)는 트래픽 감소의 지속시간이 미리 결정된 시간(Tref-2)을 초과하면(dL/dt의 지속시간 < tref-2), 서버 환경을 조정한 이후 계속 트래픽이 감소하여 서버 증설 또는 서버의 스펙 상향 조정과 같은 서버 환경 조정이 불필요할 수 있음을 고려하여, 대기열 생성을 수행하도록 한다는 것이다.
프로세서(210)는 트래픽 양을 기초로 트래픽 양이 기준치를 초과한 경우 서버 환경 조정을 수행하고, 기준치 이하인 경우 대기열을 생성하도록 할 수 있다. 이때, 프로세서(210)는 운용자의 필요에 따라 반대의 경우로 적용하는 것 역시 가능하다 할 것이다. 예를 들어, 트래픽 양이 기준치를 초과하되 서비스 서버(300)내 구성요소들의 잔여 리소스와 트래픽을 처리하기 위한 예상 리소스와의 차이가 제1 차이값을 초과하지 않는 경우, 프로세서(210)는 서버 환경 조정 보다는 대기열 생성 예상 비용이 더 저렴하다고 판단하여 대기열을 생성하도록 처리할 수 있는 것이다. 이때, 제1 차이값은 대기열 생성 예상 비용이 서버 환경 조정 비용 보다 적도록 고려하여 생성된 값일 수 있다.
프로세서(210)는 트래픽 변화량을 기초로 유량제어를 결정하되, 트래픽이 기준치를 초과하는 트래픽 변화 시간이 제2 기준시간을 초과하면 오토스케일링과 같은 서버 환경 조정을 수행하고, 트래픽이 기준치를 초과하는 트래픽 변화 시간이 제2 기준시간 이하면 대기열을 생성하도록 할 수 있다. 이는, 프로세서(210)는 트래픽이 급작스럽게 증가할 때를 대비하여 사전에 서버 환경 조정을 수행하는 것일 수 있다.
도 6을 참고하면, 프로세서(210)는 트래픽이 기준치를 초과하는 트래픽 변화 시간이 제2 기준시간을 초과하면(Ta-1 > Tref-3), 대기열 생성 시 예상 비용이 서버 환경 조정 비용 보다 크다고 판단하여 서버 환경 조정을 수행할 수 있다. 이때, 트래픽 변화 시간(Ta-1)은 트래픽이 기준치를 초과한 시점부터 종료시점까지의 시간을 의미하는 것으로, 도 6과 같이 트래픽이 기준치를 초과하지 않은 시간도 포함할 수 있다. 이때, 트래픽이 기준치를 초과한 종료시점은 사전에 설정될 수 있다. 예를 들어, 트래픽이 기준치를 초과한 이후 미리 설정된 시간동안 트래픽이 기준치를 초과하지 않으면, 기준치를 초과하지 않은 이전 마지막 트래픽이 기준치를 초과한 시점을 종료시점으로 판단할 수 있는 것이다.
도 7을 참고하면, 프로세서(210)는 트래픽이 기준치를 초과하는 트래픽 변화 시간이 제2 기준시간 이하면(Ta-2 ≤ Tref-3), 서버 환경 조정 비용이 대기열 생성 시 예상 비용 보다 크다고 판단하여, 대기열을 생성하도록 할 수 있다.
즉, 프로세서(210)는 트래픽 변화 시간이 상대적으로 길면 서버 증설 또는 서버 스펙 상향 조정을 통해 트래픽을 여유롭게 처리할 수 있는 환경을 조성하고, 트래픽 변화 시간이 상대적으로 짧으면 일시적으로 대기열을 생성하도록 하여 유량을 제어하는 것이 비용 측면에서 더 효율적이라고 판단할 수 있는 것이다.
프로세서(210)는 콘텐츠 서비스의 타입, 트래픽 정보 및 사용자의 로그정보를 기초한 시간대별 트래픽을 인공지능 모델에 입력하여 획득된 대기열 생성 및 서버 환경 조정 중 어느 하나를 기초로 시간대별 유량 제어 조건을 변경하여 적용할 수 있다.
구체적으로, 프로세서(210)는 콘텐츠 서비스의 타입, 상기 콘텐츠 서비스의 타입에 매칭되는 트래픽 정보, 상기 콘텐츠 서비스의 타입에 매칭되는 사용자의 로그정보 및 이에 매칭되는 시간대별 트래픽을 입력값으로 하여 대기열 생성 시 예상 비용 및 서버 환경 조정 비용 중 비용이 더 적은 유량제어방법을 결과값으로 출력하는 인공지능 모델을 생성할 수 있다. 프로세서(210)은 생성된 인공지능 모델을 통해 시간대별 트래픽에 따른 유량제어 조건(대기열 생성 또는 서버 환경 조정)을 변경하면서 적용할 수 있는 것이다.
예를 들어, 도 8과 같이, 프로세서(210)는 9시에서 11시까지, 18시에서 19시까지는 서버 환경 조정을 수행할 수 있는 것이다. 만약, 해당 시간에 서버 환경 조정 비용에 비해 대기열 생성 비용이 더 적게 드는 경우, 프로세서(210)는 9시에서 11시까지, 18시에서 19시까지에 대기열을 생성하도록 하는 것 역시 가능할 수 있다. 즉, 프로세서(210)는 콘텐츠 서비스의 타입, 트래픽 정보 및 사용자의 로그정보를 기초한 시간대별 트래픽을 인공지능 모델에 입력한 결과값을 기초로 유량제어 방법을 선택할 수 있는 것이다.
이때, 결과값은 대기열 생성 시 예상 비용 및 서버 환경 조정 비용 중 비용이 더 적은 유량제어방법을 포함할 수 있다.
메모리(230)는 대기열 생성 및 서버 환경 조정을 포함하는 유량 제어 방법을 제공하기 위한 컴퓨터 프로그램을 저장할 수 있으며, 저장된 컴퓨터 프로그램은 프로세서(110)에 의해 판독되어 구동될 수 있다. 메모리(230)는 프로세서(110)가 생성하거나 결정한 임의의 형태의 정보 및 통신부(250)가 수신한 임의의 형태의 정보를 저장할 수 있다.
메모리(230)는 리소스 최적화 서버(200)의 다양한 기능을 지원하는 데이터와, 프로세서(110)의 동작을 위한 프로그램을 저장할 수 있고, 입/출력되는 데이터들을 저장할 있고, 리소스 최적화 서버(200)에서 구동되는 다수의 응용 프로그램(application program 또는 애플리케이션(application)), 리소스 최적화 서버(200)의 동작을 위한 데이터들, 명령어들을 저장할 수 있다. 이러한 응용 프로그램 중 적어도 일부는, 무선 통신을 통해 외부 서버로부터 다운로드 될 수 있다.
이러한, 메모리(230)는 플래시 메모리 타입(Flash memory type), 하드디스크 타입(Hard disk type), SSD 타입(Solid State Disk type), SDD 타입(Silicon Disk Drive 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), 자기 메모리, 자기 디스크 및 광디스크 중 적어도 하나의 타입의 저장매체를 포함할 수 있다. 또한, 메모리는 본 장치와는 분리되어 있으나, 유선 또는 무선으로 연결된 데이터베이스가 될 수도 있다.
통신부(250)는 외부 장치와 통신을 가능하게 하는 하나 이상의 구성 요소를 포함할 수 있으며, 예를 들어, 방송 수신 모듈, 유선통신 모듈, 무선통신 모듈, 근거리 통신 모듈, 위치정보 모듈 중 적어도 하나를 포함할 수 있다.
도시하지 않았지만, 본 개시의 리소스 최적화 서버(200)는 출력부 및 입력부를 더 포함할 수도 있다.
출력부는 유량 제어 결과 등을 제공하기 위한 사용자 인터페이스(UI, user interface)를 표시할 수 있다. 출력부는 프로세서(110)가 생성하거나 결정한 임의의 형태의 정보 및 통신부(250)가 수신한 임의의 형태의 정보를 출력할 수 있다.
출력부는 액정 디스플레이(LCD: liquid crystal display), 박막 트랜지스터 액정 디스플레이(TFT LCD: thin film transistor- liquid crystal display), 유기 발광 다이오드(OLED: organic light-emitting diode), 플렉시블 디스플레이(Flexible display), 3차원 디스플레이(3D display) 중에서 적어도 하나를 포함할 수 있다. 이들 중 일부 디스플레이 모듈은, 그를 통해 외부를 볼 수 있도록 투명형 또는 광 투과형으로 구성될 수 있다. 이는 투명 디스플레이 모듈이라 지칭될 수 있는데, 상기 투명 디스플레이 모듈의 대표적 인 예로는 TOLED(Transparent OLED) 등이 있다.
입력부는 사용자에 의해서 입력된 정보를 수신할 수 있다. 입력부는 사용자에 의해서 입력된 정보를 수신하기 위한 사용자 인터페이스 상의 키 및/또는 버튼들, 또는 물리적인 키 및/또는 버튼들을 구비할 수 있다. 입력부를 통한 사용 자 입력에 따라 본 개시의 실시예들에 따른 디스플레이를 제어하기 위한 컴퓨터 프로그램이 실행될 수 있다.
도 9는 본 개시의 솔루션 제공 방법을 설명하기 위한 흐름도이다.
후술하는 진입 관리 서버(100) 및 리소스 최적화 서버(200)는 상술한 도 1 내지 도 8에서 개시하는 것을 동일하게 수행할 수 있으며, 중복되는 상세 설명은 설명의 편의를 위해 생략하기로 한다.
리소스 최적화 시스템(10)의 진입 관리 서버(100)는 콘텐츠 서비스를 제공하는 서비스 서버로부터 리소스 상태를 수집할 수 있다(1100).
다음, 리소스 최적화 시스템(10)의 리소스 최적화 서버(200)는 서비스 서버(300)의 잔여 리소스가 기준치 이하인 경우, 대기열 생성 시 예상 비용 및 서버 환경 조정 비용을 산출할 수 있다(1200, 1300).
다음, 리소스 최적화 서버(200)는 대기열 생성 시 예상 비용 및 서버 환경 조정 비용을 기초로 사용자 단말(400)의 서비스 서버(300)로의 접속을 위한 대기열을 생성하도록 하거나, 또는 서비스 서버(300) 내 서버 환경을 조정하여 유량을 제어할 수 있다(1400).
한편, 전술한 본 개시에 따른 방법은, 하드웨어인 서버와 결합되어 실행되기 위해 프로그램(또는 애플리케이션)으로 구현되어 매체에 저장될 수 있다.
개시된 실시예들은 컴퓨터에 의해 실행 가능한 명령어를 저장하는 기록매체의 형태로 구현될 수 있다. 명령어는 프로그램 코드의 형태로 저장될 수 있으며, 프로세서에 의해 실행되었을 때, 프로그램 모듈을 생성하여 개시된 실시예들의 동작을 수행할 수 있다. 기록매체는 컴퓨터로 읽을 수 있는 기록매체로 구현될 수 있다.
컴퓨터가 읽을 수 있는 기록매체로는 컴퓨터에 의하여 해독될 수 있는 명령어가 저장된 모든 종류의 기록 매체를 포함한다. 예를 들어, ROM(Read Only Memory), RAM(Random Access Memory), 자기 테이프, 자기 디스크, 플래쉬 메모리, 광 데이터 저장장치 등이 있을 수 있다.
이상에서와 같이 첨부된 도면을 참조하여 개시된 실시예들을 설명하였다. 본 개시가 속하는 기술분야에서 통상의 지식을 가진 자는 본 개시의 기술적 사상이나 필수적인 특징을 변경하지 않고도, 개시된 실시예들과 다른 형태로 본 개시가 실시될 수 있음을 이해할 것이다. 개시된 실시예들은 예시적인 것이며, 한정적으로 해석되어서는 안 된다.
10: 리소스 최적화 시스템
100: 진입 관리 서버
200: 리소스 최적화 서버
300: 서비스 서버
310: 로드 밸런서
312: 로드 에이전트
320: 애플리케이션 서버
322: 앱 에이전트
330: DB 서버
332: DB 에이전트

Claims (10)

  1. 통신부; 및 상기 통신부와 연결되어 서비스서버로의 유량을 제어하는 프로세서;를 포함하고,
    상기 프로세서는, 상기 서비스서버의 잔여리소스가 기준치 이하인 경우, 단위시간당 예상이탈비용 또는 예상이용비용 및 단위시간당 추가수용인원을 기초로하여 예상되는 서버환경조정비용을 산출하고, 상기 단위시간당 예상이탈비용 또는 예상이용비용 및 상기 서버환경조정비용을 기초로 사용자단말의 상기 서비스서버로의 접속을 위한 대기열을 생성하도록 하거나 상기 서비스서버 내 서버환경을 조정하여 유량을 제어하며,
    상기 서버환경을 조정하는 것은 상기 서비스서버의 스펙의 상향조정 및 상기 서비스서버 내 서버증설 중 적어도 하나 이상을 포함하는, 리소스 최적화 서버.
  2. 삭제
  3. 삭제
  4. 제1항에 있어서,
    상기 프로세서는,
    상기 서비스서버 내 서버환경조정이 완료되기 이전까지 진입 관리 서버를 통해 임시대기열을 생성하도록 하고,
    상기 서버환경조정비용을 산출할 때, 상기 임시대기열 생성시 예상비용을 추가로 적용하여 상기 서버환경조정비용을 산출하는, 리소스 최적화 서버.
  5. 제1항에 있어서,
    상기 프로세서는,
    상기 유량을 제어할 때, 상기 대기열 생성시 예상비용이 상기 서버환경조정비용보다 큰 경우, 상기 서비스서버 내 서버환경을 조정하고, 상기 서버환경조정비용이 상기 대기열 생성시 예상비용보다 큰 경우, 상기 서비스서버로의 접속을 위한 대기열을 생성하는, 리소스 최적화 서버.
  6. 제1항에 있어서,
    콘텐츠서비스의 타입은 서비스제공주체 및 서버환경조정의 소요시간 중 적어도 하나 이상을 포함하고,
    상기 프로세서는,
    상기 유량을 제어할 때, 상기 서비스제공주체의 리소스사용의 유동범위가 기준범위를 초과하는 경우, 상기 대기열 생성시 예상비용이 상기 서버환경조정비용보다 크다고 판단하여 서버환경조정을 수행하고, 상기 서비스제공주체의 리소스사용의 유동범위가 상기 기준범위 이하인 경우, 상기 서버환경조정비용이 상기 대기열 생성시 예상비용보다 크다고 판단하여 대기열을 생성하도록 하고,
    상기 유량을 제어할 때, 상기 서버환경조정의 소요시간이 기준시간을 초과하는 경우, 상기 서버환경조정비용이 상기 대기열 생성시 예상비용보다 크다고 판단하여 대기열을 생성하도록 하고, 상기 서버환경조정의 소요시간이 상기 기준시간 이하인 경우, 상기 대기열 생성시 예상비용이 상기 서버환경조정비용보다 크다고 판단하여 서버환경조정을 수행하는, 리소스 최적화 서버.
  7. 제1항에 있어서,
    트래픽 정보는, 트래픽 증가 추세, 트래픽 감소 추세, 트래픽 양, 트래픽 변화량, 트래픽 변화 시간대 및 시간대별 트래픽 중 적어도 하나 이상을 포함하고,
    상기 프로세서는,
    상기 유량을 제어할 때, 상기 트래픽 증가 추세, 상기 트래픽 감소 추세, 상기 트래픽 양, 상기 트래픽 변화량, 상기 트래픽 변화 시간대 및 상기 시간대별 트래픽 중 적어도 하나 이상을 고려하여 상기 대기열 생성시 예상비용 및 상기 서버환경조정비용을 산출하고 상기 유량을 제어하는, 리소스 최적화 서버.
  8. 제1항에 있어서,
    상기 프로세서는,
    콘텐츠서비스의 타입, 트래픽 정보 및 사용자의 로그정보를 기초한 시간대별 트래픽을 인공지능 모델에 입력하여 획득된 대기열 생성 및 서버환경조정 중 어느 하나를 기초로 시간대별 유량 제어 조건을 변경하여 적용하는, 리소스 최적화 서버.
  9. 콘텐츠서비스를 제공하는 서비스서버로부터 리소스상태를 수집하여 전달하고 상기 서비스서버로의 사용자단말의 접속을 관리하는 진입 관리 서버; 및
    상기 서비스서버의 잔여리소스가 기준치 이하인 경우, 단위시간당 예상이탈비용 또는 예상이용비용 및 단위시간당 추가수용인원을 기초로하여 예상되는 서버환경조정비용을 산출하고, 상기 단위시간당 예상이탈비용 또는 예상이용비용 및 상기 서버환경조정비용을 기초로 상기 사용자단말의 상기 서비스서버로의 접속을 위한 대기열을 생성하도록 하거나 상기 서비스서버 내 서버환경을 조정하여 유량을 제어하는 리소스 최적화 서버;를 포함하고,
    상기 서버환경을 조정하는 것은, 상기 서비스서버의 스펙의 상향조정 및 상기 서비스서버 내 서버증설 중 적어도 하나 이상을 포함하는, 리소스 최적화 시스템.
  10. 리소스 최적화 시스템에 의해 수행되는 방법에 있어서,
    콘텐츠서비스를 제공하는 서비스서버로부터 리소스상태를 수집하는 단계;
    상기 서비스서버의 잔여리소스가 기준치 이하인 경우, 단위시간당 예상이탈비용 또는 예상이용비용 및 단위시간당 추가수용인원을 기초로하여 예상되는 서버환경조정비용을 산출하는 단계; 및
    상기 단위시간당 예상이탈비용 또는 예상이용비용 및 상기 서버환경조정비용을 기초로 사용자단말의 상기 서비스서버로의 접속을 위한 대기열을 생성하도록 하거나 상기 서비스서버 내 서버환경을 조정하여 유량을 제어하는 단계;를 포함하고,
    상기 서버환경을 조정하는 것은, 상기 서비스서버의 스펙의 상향조정 및 상기 서비스서버 내 서버증설 중 적어도 하나 이상을 포함하는, 리소스 최적화 방법.
KR1020220190179A 2022-12-30 2022-12-30 클라우드 기반 유량제어 비용 최적화를 위한 리소스 최적화 서버, 시스템 및 방법 KR102531621B1 (ko)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020220190179A KR102531621B1 (ko) 2022-12-30 2022-12-30 클라우드 기반 유량제어 비용 최적화를 위한 리소스 최적화 서버, 시스템 및 방법

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020220190179A KR102531621B1 (ko) 2022-12-30 2022-12-30 클라우드 기반 유량제어 비용 최적화를 위한 리소스 최적화 서버, 시스템 및 방법

Publications (1)

Publication Number Publication Date
KR102531621B1 true KR102531621B1 (ko) 2023-05-11

Family

ID=86378980

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020220190179A KR102531621B1 (ko) 2022-12-30 2022-12-30 클라우드 기반 유량제어 비용 최적화를 위한 리소스 최적화 서버, 시스템 및 방법

Country Status (1)

Country Link
KR (1) KR102531621B1 (ko)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN117424861A (zh) * 2023-12-18 2024-01-19 本溪钢铁(集团)信息自动化有限责任公司 一种网络资源管理方法、装置、设备及介质

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR101654266B1 (ko) 2014-12-18 2016-09-05 (주)에임투지 웹 접속 관리 시스템을 통한 모니터링 기능을 제공하는 모니터링 장치

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR101654266B1 (ko) 2014-12-18 2016-09-05 (주)에임투지 웹 접속 관리 시스템을 통한 모니터링 기능을 제공하는 모니터링 장치

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
Chih-ping Li 외 1명, "Receiver-Based Flow Control for Networks in Overload," IEEE (2014.02.19.)* *

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN117424861A (zh) * 2023-12-18 2024-01-19 本溪钢铁(集团)信息自动化有限责任公司 一种网络资源管理方法、装置、设备及介质
CN117424861B (zh) * 2023-12-18 2024-02-23 本溪钢铁(集团)信息自动化有限责任公司 一种网络资源管理方法、装置、设备及介质

Similar Documents

Publication Publication Date Title
US11425190B2 (en) Delivery of instructions in host applications
US8418184B2 (en) Use of constraint-based linear programming to optimize hardware system usage
US20190166203A1 (en) Coordinated applications within a mobile device infrastructure
US11954629B2 (en) Activation policies for workflows
KR102531621B1 (ko) 클라우드 기반 유량제어 비용 최적화를 위한 리소스 최적화 서버, 시스템 및 방법
US11089081B1 (en) Inter-process rendering pipeline for shared process remote web content rendering
US20230333708A1 (en) Graphical user interface for configuring card controls for a card
CN112088362A (zh) 针对已保存站点的通知更新
US11080097B1 (en) User defined logical spread placement groups for computing resources within a computing environment
US9703597B2 (en) Dynamic timeout period adjustment of service requests
KR102519073B1 (ko) 디지털 서비스 기반 트래픽 오케스트레이션을 위한 진입 관리 서버, 시스템 및 방법
KR102569833B1 (ko) 디지털 서비스 기반 서비스 서버의 모니터링을 이용한 유량 제어 방법, 서버 및 시스템
KR102559351B1 (ko) 디지털 서비스 기반 트래픽 스파이크 평탄화 기술을 이용한 리소스 최적화 시스템 및 진입 관리 서버
CN116095005A (zh) 流量管理方法、装置、设备、介质和程序产品
US20190141152A1 (en) Web push notifications in the background
CN113132400B (zh) 业务处理方法、装置、计算机系统及存储介质
KR102521744B1 (ko) 디지털 서비스 기반 유량 제어 서버, 방법 및 api 유량 제어 시스템
KR102543972B1 (ko) 디지털 서비스 기반 진입 관리 대상의 자동 조정을 위한 진입 관리 방법 및 서버
KR102519051B1 (ko) 디지털 서비스 기반 로드 밸런싱을 위한 대기열 관리 방법, 로드 밸런서 및 대기열 관리 시스템
KR102630310B1 (ko) 디지털 서비스의 유량 제어를 위한 SaaS 기반 멀티 테넌시 서비스 서버 및 방법
KR102519005B1 (ko) 데이터베이스 상태를 이용한 디지털 기반 데이터 송수신 제어 서버, 시스템 및 방법
KR102522910B1 (ko) 프록시 방식의 서비스 지속성 보장 시스템 및 방법
KR102519061B1 (ko) 구간 제어 방식 기반의 유량 제어를 위한 장치 및 방법
KR102633182B1 (ko) 디지털 서비스 기반의 발급된 키를 활용한 진입 관리 서버 및 방법
KR102519009B1 (ko) 접속 대기 화면의 정보 제공을 위한 대기열 관리 장치 및 방법

Legal Events

Date Code Title Description
E902 Notification of reason for refusal
E701 Decision to grant or registration of patent right
GRNT Written decision to grant