KR102269647B1 - 서버 성능 모니터링 장치 - Google Patents

서버 성능 모니터링 장치 Download PDF

Info

Publication number
KR102269647B1
KR102269647B1 KR1020190031665A KR20190031665A KR102269647B1 KR 102269647 B1 KR102269647 B1 KR 102269647B1 KR 1020190031665 A KR1020190031665 A KR 1020190031665A KR 20190031665 A KR20190031665 A KR 20190031665A KR 102269647 B1 KR102269647 B1 KR 102269647B1
Authority
KR
South Korea
Prior art keywords
performance
server
baseline
performance data
monitoring
Prior art date
Application number
KR1020190031665A
Other languages
English (en)
Other versions
KR20200111952A (ko
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 KR1020190031665A priority Critical patent/KR102269647B1/ko
Publication of KR20200111952A publication Critical patent/KR20200111952A/ko
Application granted granted Critical
Publication of KR102269647B1 publication Critical patent/KR102269647B1/ko

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/30Monitoring
    • G06F11/34Recording or statistical evaluation of computer activity, e.g. of down time, of input/output operation ; Recording or statistical evaluation of user activity, e.g. usability assessment
    • G06F11/3409Recording or statistical evaluation of computer activity, e.g. of down time, of input/output operation ; Recording or statistical evaluation of user activity, e.g. usability assessment for performance assessment
    • 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

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • General Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • Quality & Reliability (AREA)
  • General Physics & Mathematics (AREA)
  • Computer Hardware Design (AREA)
  • Computing Systems (AREA)
  • Mathematical Physics (AREA)
  • Debugging And Monitoring (AREA)

Abstract

본 발명은 서버 성능 모니터링 장치에 관한 것으로, 과거의 특정 시간부터 현재 시간까지로 정의되는 모니터링 기간 동안, 수 초 단위로 결정되는 적어도 하나의 기준 시점에서의 서버의 성능 데이터를 측정하는 성능 데이터 측정부, 상기 모니터링 기간 내에서 베이스라인(baseline) 산정 구간을 결정하고, 상기 베이스라인 산정 구간동안 동일 기준 시점에서 측정된 복수의 성능 데이터들의 평균값을 베이스라인으로 산출하는 베이스라인 산출부 및 상기 베이스라인과 동일 기준 시점에서 측정된 현재의 성능 데이터를 상기 베이스라인과 비교하여 상기 서버의 성능을 모니터링하는 서버 성능 모니터링부를 포함한다. 따라서, 본 발명은 모니터링 기간동안 특정 구간 별 동일 기준 시점의 평균값으로 결정된 베이스라인을 기초로 서버의 성능을 모니터링할 수 있다.

Description

서버 성능 모니터링 장치 {SERVER PERFORMANCE MONITORING APPARATUS}
본 발명은 서버 성능 모니터링 기술에 관한 것으로, 보다 상세하게는 모니터링 기간동안 수 초단위로 성능 데이터를 수집하고 베이스라인을 결정하여 현재의 성능 데이터와 비교함으로써 서버의 성능을 모니터링하는 서버 성능 모니터링 장치에 관한 것이다.
서버는 한 대의 컴퓨터에 여러 대의 컴퓨터를 통신회선으로 연결하여 공동으로 사용하는 정보를 저장해 두거나 컴퓨터 자원을 많이 사용하는 프로그램을 모아 놓은 컴퓨터를 의미한다. 따라서, 서버는 많은 사용자가 이용하므로 서버 고장을 대비하기 위해 서버 성능을 주기적으로 모니터링하는 과정이 필요하다.
종래의 시스템 성능 분석의 과거 데이터를 통한 성능 추세의 확인을 위한 기준선 설정 및 추이 분석은 주어진 모수(수집된 성능 데이터의 평균값)을 바탕으로 한 이동 평균법에 의한 신뢰 구간을 추정하였다. 즉, 종래의 대부분의 솔루션들의 수집 주기는 1분 이상으로 설정이 되어있어 자원 사용률이 실제 시스템이 사용했던 사용현황과 다르게 많은 부분 왜곡이 되어 완만하게 표현된다는 문제점이 있다. 본 발명은 상기 문제점을 개선하기 위해 개시된다.
한국등록특허 제 10-0926362호는 서버 성능 관리 방법 및 시스템을 개시한다. 이러한 기술에 따르면, 구비된 복수의 하드웨어 및 설치된 어플리케이션에 대한 하나 이상의 로그 및 프로파일 정보들을 분석하여 미리 정해진 방법에 따라 펙터(factor) 데이터들을 생성하여 상기 데이터베이스에 저장하는 n(임의의 자연수)개의 서버; 및 임의의 보고서 생성을 위한 항목들에 상응하는 펙터 데이터들 중 상기 데이터베이스에 미저장된 펙터 데이터에 대한 수집 요청 정보를 생성하여 각각의 서버로 송신하는 성능 관리 웹서버를 포함하되, 상기 각각의 서버는 상기 수집 요청 정보에 상응하여 상기 로그 및 상기 프로파일 정보들을 분석하여 미리 정해진 방법에 따라 확장 펙터 데이터를 생성하여 전송하며, 상기 성능 관리 웹서버는 상기 데이터베이스로부터 추출된 펙터 데이터 및 상기 수신된 확장 펙터 데이터를 이용하여 미리 정해진 방법에 따라 보고서를 생성하여 출력하는 것을 특징으로 하는 성능 관리 시스템이 제공될 수 있다. 따라서, 이기종의 서버에 대한 성능 및 이용 현황에 대한 보고서 생성을 용이하게 할 수 있다.
한국등록특허 제 10-0994310호는 웹 서버의 성능 지표 추정 방법 및 시스템에 대한 기술을 개시한다. 이러한 기술에 따르면, 웹 서버로부터 성능 지표 추정 모델을 선정하기 위한 샘플 데이터를 추출하는 단계, 상기 추출된 샘플 데이터의 분포를 이용하여 상기 웹 서버의 리소스에 따른 성능 지표에 대응하는 성능 지표 추정 모델을 선정하는 단계 및 상기 선정된 성능 지표 추정 모델을 최적화하는 상기 성능 지표 추정 모델의 파라미터를 결정하는 단계를 포함할 수 있다.
한국등록특허 제 10-0926362호 한국등록특허 제 10-0994310호
본 발명의 일 실시예는 모니터링 기간동안 특정 구간 별 동일 기준 시점의 평균값으로 결정된 베이스라인(baseline, 기준선)을 기초로 서버의 성능을 모니터링하는 서버 성능 모니터링 장치를 제공하고자 한다.
본 발명의 일 실시예는 성능 모니터링 기간내 특정 기준 시간 단위의 성능 데이터의 평균값을 베이스라인으로 결정하고 현재 성능 데이터와 비교하여 서버 성능을 모니터링하는 서버 성능 모니터링 장치를 제공하고자 한다.
본 발명의 일 실시예는 모니터링 기간 내 수 초 단위로 결정되는 적어도 하나의 기준 시점 각각에서 베이스라인 산정 구간 동안의 성능 데이터의 평균값에 해당하는 베이스라인과 현재 성능 데이터의 차이를 통해 서버의 성능 추세를 분석하는 서버 성능 모니터링 장치를 제공하고자 한다.
본 발명의 일 실시예는 측정된 성능 데이터에 사용자 서버의 시스템 상황에 따라 성능 지표 별로 부여된 가중치를 부여하고 이를 기초로 베이스라인을 결정하여 현재 서버의 성능을 모니터링하는 서버 성능 모니터링 장치를 제공하고자 한다.
실시예들 중에서, 서버 성능 모니터링 장치는 과거의 특정 시간부터 현재 시간까지로 정의되는 모니터링 기간 동안, 수 초 단위로 결정되는 적어도 하나의 기준 시점에서의 서버의 성능 데이터를 각각 측정하는 성능 데이터 측정부, 상기 모니터링 기간 내에서 베이스라인(baseline) 산정 구간을 결정하고, 상기 베이스라인 산정 구간동안 동일 기준 시점에서 측정된 복수의 성능 데이터들의 평균값을 베이스라인으로 산출하는 베이스라인 산출부 및 상기 베이스라인과 동일 기준 시점에서 측정된 현재의 성능 데이터를 상기 베이스라인과 비교하여 상기 서버의 성능을 모니터링하는 서버 성능 모니터링부를 포함한다.
상기 성능 데이터 측정부는 특정 시스템 자체의 성능 데이터뿐만 아니라 상기 특정 시스템이 포함하는 성능 지표에 해당하는 특정 프로세스 개별 혹은 그룹 단위의 성능 데이터를 측정할 수 있다.
상기 베이스라인 산출부는 각각은 크기를 달리하는 복수의 베이스라인 산정 구간들을 결정할 수 있다.
상기 성능 데이터 측정부는 상기 성능 데이터를 측정하는 과정에서 상기 성능 데이터에 상기 성능 지표별로 가중치를 적용할 수 있다.
상기 베이스라인 산출부는 상기 베이스라인을 산출하는 과정에서 상기 성능 데이터에 상기 성능 지표별로 상기 가중치를 부여할 수 있다.
상기 성능 데이터 측정부 및 상기 베이스라인 산출부는 상기 서버의 시스템 운영 현황과 비즈니스 패턴을 기초로 상기 가중치를 가변적으로 결정할 수 있다.
상기 베이스라인 산출부는 상기 베이스라인 산정 구간내 특정 시간의 기준 시점에 해당하는 성능 데이터가 측정되지 않은 경우 상기 기준 시점보다 앞선 시점의 성능 데이터를 상기 기준 시점의 성능 데이터로 결정할 수 있다.
상기 서버 성능 모니터링부는 상기 산출된 베이스라인과 현재의 상기 성능 데이터의 차이가 기 설정된 임계치를 초과하는 경우 사용자에게 경보를 제공할 수 있다.
개시된 기술은 다음의 효과를 가질 수 있다. 다만, 특정 실시예가 다음의 효과를 전부 포함하여야 한다거나 다음의 효과만을 포함하여야 한다는 의미는 아니므로, 개시된 기술의 권리범위는 이에 의하여 제한되는 것으로 이해되어서는 아니 될 것이다.
본 발명의 일 실시예에 따른 서버 성능 모니터링 장치는 모니터링 기간동안 특정 구간 별 동일 기준 시점의 평균값으로 결정된 베이스라인(baseline, 기준선)을 기초로 서버의 성능을 모니터링할 수 있다.
본 발명의 일 실시예에 따른 서버 성능 모니터링 장치는 모니터링 기간 내 수 초 단위로 결정되는 적어도 하나의 기준 시점 각각에서 베이스라인 산정 구간 동안의 성능 데이터의 평균값에 해당하는 베이스라인과 현재 성능 데이터의 차이를 통해 서버의 성능 추세를 분석할 수 있다.
본 발명의 일 실시예에 따른 서버 성능 모니터링 장치는 성능 데이터의 측정 주기를 수 초단위로 개선시켜 사용자는 실시간으로 서버의 성능을 모니터링할 수 있고, 수 초단위로 측정된 성능 데이터를 데이터베이스에 저장하여 성능 히스토리 분석도 가능하다.
본 발명의 일 실시예에 따른 서버 성능 모니터링 장치는 사용자 서버의 시스템 상황에 따라 측정된 성능 데이터에 성능 지표 별로 부여된 가중치에 따라 베이스라인을 결정하여 현재 서버의 성능을 모니터링할 수 있다.
본 발명의 일 실시예에 따른 서버 성능 모니터링 장치는 베이스라인 선정 구간의 크기에 따른 베이스라인 선정의 범위 오차를 줄이고 일상적인 업무 시간내의 시스템 사용량의 변화 추이를 직관적으로 판단할 수 있으며, 베이스라인 기반의 추세 분석으로 보다 정확한 예측이 가능하다.
도 1은 본 발명의 일 실시예에 따른 서버 성능 모니터링 시스템을 나타내는 도면이다.
도 2는 도 1에 있는 서버 성능 모니터링 장치를 나타내는 블록도이다.
도 3은 본 발명의 일 실시예에 따른 서버 성능 모니터링 장치의 기능적 구성을 나타내는 블록도이다.
도 4는 본 발명의 일 실시예에 따른 서버 성능 모니터링 방법을 나타내는 순서도이다.
도 5는 일 실시예에 따른 서버 성능 모니터링 장치를 통해 측정된 성능 데이터 및 베이스라인에 대한 표를 보여주는 예시도이다.
도 6은 도 5의 표에 따라 그려지는 베이스라인 차트에 대한 예시도이다.
도 7은 다른 일 실시예에 따른 서버 성능 모니터링 장치를 통해 측정된 가중치가 적용된 성능 데이터 및 베이스라인에 대한 표를 보여주는 예시도이다.
도 8은 도 7의 표에 따라 그려지는 베이스라인 차트에 대한 예시도이다.
본 발명에 관한 설명은 구조적 내지 기능적 설명을 위한 실시예에 불과하므로, 본 발명의 권리범위는 본문에 설명된 실시예에 의하여 제한되는 것으로 해석되어서는 아니 된다. 즉, 실시예는 다양한 변경이 가능하고 여러 가지 형태를 가질 수 있으므로 본 발명의 권리범위는 기술적 사상을 실현할 수 있는 균등물들을 포함하는 것으로 이해되어야 한다. 또한, 본 발명에서 제시된 목적 또는 효과는 특정 실시예가 이를 전부 포함하여야 한다거나 그러한 효과만을 포함하여야 한다는 의미는 아니므로, 본 발명의 권리범위는 이에 의하여 제한되는 것으로 이해되어서는 아니 될 것이다.
한편, 본 출원에서 서술되는 용어의 의미는 다음과 같이 이해되어야 할 것이다.
"제1", "제2" 등의 용어는 하나의 구성요소를 다른 구성요소로부터 구별하기 위한 것으로, 이들 용어들에 의해 권리범위가 한정되어서는 아니 된다. 예를 들어, 제1 구성요소는 제2 구성요소로 명명될 수 있고, 유사하게 제2 구성요소도 제1 구성요소로 명명될 수 있다.
어떤 구성요소가 다른 구성요소에 "연결되어"있다고 언급된 때에는, 그 다른 구성요소에 직접적으로 연결될 수도 있지만, 중간에 다른 구성요소가 존재할 수도 있다고 이해되어야 할 것이다. 반면에, 어떤 구성요소가 다른 구성요소에 "직접 연결되어"있다고 언급된 때에는 중간에 다른 구성요소가 존재하지 않는 것으로 이해되어야 할 것이다. 한편, 구성요소들 간의 관계를 설명하는 다른 표현들, 즉 "~사이에"와 "바로 ~사이에" 또는 "~에 이웃하는"과 "~에 직접 이웃하는" 등도 마찬가지로 해석되어야 한다.
단수의 표현은 문맥상 명백하게 다르게 뜻하지 않는 한 복수의 표현을 포함하는 것으로 이해되어야 하고, "포함하다"또는 "가지다" 등의 용어는 실시된 특징, 숫자, 단계, 동작, 구성요소, 부분품 또는 이들을 조합한 것이 존재함을 지정하려는 것이며, 하나 또는 그 이상의 다른 특징이나 숫자, 단계, 동작, 구성요소, 부분품 또는 이들을 조합한 것들의 존재 또는 부가 가능성을 미리 배제하지 않는 것으로 이해되어야 한다.
각 단계들에 있어 식별부호(예를 들어, a, b, c 등)는 설명의 편의를 위하여 사용되는 것으로 식별부호는 각 단계들의 순서를 설명하는 것이 아니며, 각 단계들은 문맥상 명백하게 특정 순서를 기재하지 않는 이상 명기된 순서와 다르게 일어날 수 있다. 즉, 각 단계들은 명기된 순서와 동일하게 일어날 수도 있고 실질적으로 동시에 수행될 수도 있으며 반대의 순서대로 수행될 수도 있다.
본 발명은 컴퓨터가 읽을 수 있는 기록매체에 컴퓨터가 읽을 수 있는 코드로서 구현될 수 있고, 컴퓨터가 읽을 수 있는 기록 매체는 컴퓨터 시스템에 의하여 읽혀질 수 있는 데이터가 저장되는 모든 종류의 기록 장치를 포함한다. 컴퓨터가 읽을 수 있는 기록 매체의 예로는 ROM, RAM, CD-ROM, 자기 테이프, 플로피 디스크, 광 데이터 저장 장치 등이 있다. 또한, 컴퓨터가 읽을 수 있는 기록 매체는 네트워크로 연결된 컴퓨터 시스템에 분산되어, 분산 방식으로 컴퓨터가 읽을 수 있는 코드가 저장되고 실행될 수 있다.
여기서 사용되는 모든 용어들은 다르게 정의되지 않는 한, 본 발명이 속하는 분야에서 통상의 지식을 가진 자에 의해 일반적으로 이해되는 것과 동일한 의미를 가진다. 일반적으로 사용되는 사전에 정의되어 있는 용어들은 관련 기술의 문맥상 가지는 의미와 일치하는 것으로 해석되어야 하며, 본 출원에서 명백하게 정의하지 않는 한 이상적이거나 과도하게 형식적인 의미를 지니는 것으로 해석될 수 없다.
도 1은 본 발명의 일 실시예에 따른 서버 성능 모니터링 시스템을 나타내는 도면이다.
도 1을 참조하면, 서버 성능 모니터링 시스템(100)은 서버 성능 모니터링 장치(110), 모니터링 대상 서버(120) 및 데이터베이스(130)를 포함한다.
서버 성능 모니터링 장치(110)는 적어도 하나의 모니터링 대상 서버(120)와 연결된 컴퓨팅 장치에 해당하고, 예를 들어, 데스크톱, 노트북, 태블릿 PC 또는 스마트폰으로 구현될 수 있다. 서버 성능 모니터링 장치(110)는 적어도 하나의 모니터링 대상 서버(120) 각각에 대하여 과거 특정 시간부터 현재 시간까지로 정의될 수 있는 모니터링 기간동안 서버의 성능을 모니터링하고 추세를 분석할 수 있다. 일 실시예에서, 서버 성능 모니터링 장치(110)는 모니터링 기간에서 사용자에 의해 산정된 복수의 특정 기간동안 성능 데이터의 평균치를 베이스라인으로 결정하여 성능의 추세를 분석하고, 베이스라인과 현재 성능 데이터의 갭(gap)분석을 통해 성능을 모니터링할 수 있다. 예를 들어, 성능의 모니터링 중 베이스라인과 현재 성능 데이터의 차이가 사용자에 의해 기 설정된 임계치에 도달하면 사용자에게 알림을 제공할 수 있다.
모니터링 대상 서버(120)는 서버 성능 모니터링 장치(110)와 연결될 수 있다. 일 실시예에서, 모니터링 대상 서버(120)는 서버 성능 모니터링 장치(110)로부터 서버 성능 데이터의 전송 요청을 수신할 수 있다. 모니터링 대상 서버(120)는 서버 성능 모니터링 장치(110)로부터 서버 성능 데이터의 전송 요청을 수신하면 과거 특정 시간으로부터 현재 시간까지로 정의될 수 있는 모니터링 기간 동안의 서버 성능 데이터를 서버 성능 모니터링 장치(110)로 전송할 수 있다.
서버 성능 모니터링 장치(110)는 데이터베이스(130)를 포함하여 구현될 수 있고, 데이터베이스(130)와 독립적으로 구현될 수 있다. 데이터베이스(130)와 독립적으로 구현된 경우 서버 성능 모니터링 장치(110)는 데이터베이스(130)와 유선 또는 무선으로 연결되어 파일을 주고받을 수 있다. 데이터베이스(130)는 서버 성능 모니터링을 수행하는데 필요한 정보들을 저장할 수 있는 저장장치이다. 일 실시예에서, 데이터베이스(130)는 서버의 시스템 성능 데이터 및 시스템에 포함되는 성능 지표들에 해당하는 다양한 프로세스들의 성능 데이터들을 저장할 수 있고, 반드시 이에 한정되지 않으며, 서버 성능 모니터링 과정에서 다양한 형태로 수집 또는 가공된 정보들을 저장할 수 있다.
도 2는 도 1에 있는 서버 성능 모니터링 장치를 나타내는 블록도이다.
도 2를 참조하면, 서버 성능 모니터링 장치(110)는 프로세서(210), 메모리(220), 사용자 입출력부(230) 및 네트워크 입출력부(240)를 포함할 수 있다.
프로세서(210)는 서버의 성능 모니터링을 수행할 수 있고, 이러한 과정에서 읽혀지거나 작성되는 메모리(220)를 관리할 수 있으며, 메모리(220)에 있는 휘발성 메모리와 비휘발성 메모리 간의 동기화 시간을 스케줄 할 수 있다. 프로세서(210)는 서버 성능 모니터링 장치(110)의 동작 전반을 제어할 수 있고, 메모리(220), 사용자 입출력부(230) 및 네트워크 입출력부(240)와 전기적으로 연결되어 이들 간의 데이터 흐름을 제어할 수 있다. 프로세서(210) 서버 성능 모니터링 장치(110)의 CPU(Central Processing Unit)로 구현될 수 있다.
메모리(220)는 SSD(Solid State Disk) 또는 HDD(Hard Disk Drive)와 같은 비휘발성 메모리로 구현되어 서버 성능 모니터링 장치(110)에 필요한 데이터 전반을 저장하는데 사용되는 보조기억장치를 포함할 수 있고, RAM(Random Access Memory)과 같은 휘발성 메모리로 구현된 주기억장치를 포함할 수 있다.
사용자 입출력부(230)은 사용자 입력을 수신하기 위한 환경 및 사용자에게 특정 정보를 출력하기 위한 환경을 포함하고, 예를 들어, 마우스, 트랙볼, 터치 패드, 그래픽 태블릿, 스캐너, 터치 스크린, 키보드 또는 포인팅 장치와 같은 어댑터를 포함하는 입력장치 및 모니터와 같은 어댑터를 포함하는 출력장치를 포함할 수 있다. 일 실시예에서, 사용자 입출력부(230)은 원격 접속을 통해 접속되는 컴퓨팅 장치에 해당할 수 있고, 그러한 경우, 서버 성능 모니터링 장치(110)는 서버로서 수행될 수 있다.
네트워크 입출력부(240)은 적어도 서버 성능 모니터링 장치(110)와 연결하기 위한 환경을 포함하고, 예를 들어, LAN(Local Area Network) 통신을 위한 어댑터를 포함할 수 있다. 일 실시예에서, 서버 성능 모니터링 장치(110)는 네트워크 입출력부(240)를 통해 모니터링 대상 서버(120) 또는 데이터베이스(130)로 연결될 수 있다.
도 3은 본 발명의 일 실시예에 따른 서버 성능 모니터링 장치의 기능적 구성을 나타내는 블록도이다.
도 3을 참조하면, 서버 성능 모니터링 장치(110)는 성능 데이터 측정부(310), 베이스라인 산출부(320), 서버 성능 모니터링부(330) 및 제어부(340)를 포함할 수 있다.
성능 데이터 측정부(310)는 과거 특정 시간부터 현재 시간까지로 정의되는 모니터링 기간 동안, 수 초 단위로 결정되는 적어도 하나의 기준 시점에서의 서버의 성능 데이터를 측정할 수 있다. 일 실시예에서, 성능 데이터 측정부(310)는 사용자로 하여금 모니터링 기간을 설정할 수 있게 사용자에게 사용자 인터페이스를 제공할 수 있다. 보다 구체적으로, 성능 데이터 측정부(310)는 설정된 모니터링 기간 동안 서버의 성능을 나타내는 성능 데이터를 각 모니터링 대상 서버(120)로부터 측정할 수 있다. 성능 데이터 측정부(310)는 모니터링 기간 내에서 특정 기준 시점에 해당하는 수 초 단위의 시간 범위를 설정할 수 있고, 특정된 기준 시점의 시간 범위에서의 성능 데이터의 평균을 해당 특정 기준 시점에서의 성능 데이터로서 측정할 수 있다. 예를 들어, 성능 데이터 측정부(310)는 2초 단위(간격)로 결정되는 시간 범위에 해당하는 기준 시점에서의 성능 데이터의 평균을 해당 기준 시점에서의 성능 데이터로서 측정할 수 있다. 성능 데이터 측정부(310)는 모니터링 기간동안 적어도 하나의 기준 시점에서, 베이스라인 산출을 위한 과거의 성능 데이터뿐만 아니라 현재의 성능 데이터를 측정할 수 있다. 일 실시예에서, 성능 데이터 측정부(310)는 모니터링 대상 서버(120)에 있는 특정 시스템 자체의 성능 데이터뿐만 아니라 특정 시스템이 포함하는 각각의 성능 지표(CPU, memory, I/O, Disk 등)에 해당하는 특정 프로세스 개별 혹은 그룹 단위의 성능 데이터를 측정할 수 있다. 예를 들어, 성능 데이터 측정부(310)는 시스템상에서 CPU(Central Processing Unit), 메모리, character I/O에 대한 사용량을 성능 데이터로서 수 초단위로 측정할 수 있고, 특정 프로세스를 사용자 별 사용량으로 그룹핑하여 성능 데이터를 측정할 수 있다. 일 실시예에서, 성능 데이터 측정부(310)는 모니터링 대상 서버(120)로부터 성능 데이터를 측정하는 과정에서 성능 데이터에 성능 지표별로 가중치를 적용할 수 있다. 여기에서, 가중치는 사용자의 시스템 상황에서 가장 중요한 요소들에 대해서 판단한 기준에 따라 부여되는 임의의 수치에 해당할 수 있다. 예를 들어, 성능 데이터 측정부(310)는 시스템에 따라 성능 지표별로 가중치를 각각 CPU에 120%, memory에 100%, I/O에 150%, Disk에 80% 부여하여 성능 데이터를 측정할 수 있다. 일 실시예에서, 성능 데이터 측정부(310)는 서버의 시스템 운영 현황과 비즈니스 패턴을 기초로 가중치를 가변적으로 결정할 수 있다. 다른 일 실시예에서, 성능 데이터 측정부(310)는 사용자 인터페이스를 제공하여 사용자로 하여금 각각의 성능 지표별로 가중치를 입력하도록 할 수 있다. 성능 데이터 측정부(310)는 성능 데이터를 측정하고자 하는 개별 프로세스 또는 그룹 단위의 프로세스를 선택할 수 있는 사용자 인터페이스를 제공하여 사용자로 하여금 직접 선택하도록 할 수 있다.
베이스라인 산출부(320)는 모니터링 기간 내에서 베이스라인(baseline) 산정 구간을 결정하고, 베이스라인 산정 구간동안 동일 기준 시점에서 측정된 복수의 성능 데이터들의 평균값을 베이스라인으로 산출할 수 있다. 여기에서, 베이스라인(baseline)은 서버 성능을 모니터링하기 위한 기준선으로, 모니터링 기간내에서 특정 크기의 베이스라인 산정 구간동안 동일한 특정 기준 시점에서 측정된 성능 데이터들의 평균값을 의미할 수 있다. 베이스라인 산출부(320)는 베이스라인을 산출하여 서버의 사용량 변화를 실시간으로 판단하고, 추세 분석시 베이스라인을 기반으로 하여 보다 정확한 예측을 가능하게 할 수 있다. 일 실시예에서, 베이스라인 산출부(320)는 각각은 크기를 달리하는 복수의 베이스라인 산정 구간들을 결정할 수 있다. 예를 들어, 베이스라인 산출부(320)는 현재로부터 소급하여 2일간, 3일간 내지 6일간의 성능 데이터들의 평균을 통해 복수의 베이스라인들을 산출하는 복수의 베이스라인 산정 구간들을 결정할 수 있다. 일 실시예에서, 베이스라인 산출부(320)는 베이스라인을 산출하는 과정에서 성능 데이터에 성능 지표별로 가중치를 부여할 수 있다. 예를 들어, 베이스라인 산출부(320)는 시스템에 따라 성능 데이터에 성능 지표별로 가중치를 각각 CPU에 120%, memory에 100%, I/O에 150%, Disk에 80% 부여하여 평균값을 산출하여 베이스라인으로 결정할 수 있다. 베이스라인 산출부(320)는 서버의 시스템 운영 현황과 비즈니스 패턴을 기초로 가중치를 가변적으로 결정할 수 있고, 또는, 사용자 인터페이스를 제공하여 사용자로 하여금 직접 가중치를 입력하도록 할 수 있다. 여기에서, 시스템 운영 현황은 시스템에서 사용자의 현재 성능 지표(항목)별 사용량의 비중을 의미할 수 있고, 비즈니스 패턴은 사용량의 변화를 의미할 수 있다. 일 실시예에서, 베이스라인 산출부(320)는 베이스라인 산정 구간내 특정 기준 시점에 해당하는 성능 데이터가 측정되지 않은 경우 기준 시점보다 앞선 시점의 성능 데이터를 특정 기준 시점의 성능 데이터로 결정할 수 있다. 보다 구체적으로, 베이스라인 산출부(320)는 각각의 기준 시점에 대해서 모니터링 기간 중 결정된 베이스라인 산정 구간에서 성능 데이터의 평균으로 베이스라인을 산출하는 과정에서, 수 초 단위로 결정되는 특정 기준 시점에 대한 성능 데이터가 측정되지 않은 경우 해당 특정 기준 시점보다 앞선 기준 시점에 측정된 성능데이터를 해당 특정 기준 시점의 성능 데이터로 결정할 수 있다. 즉, 서버 성능 모니터링 장치(110)는 성능 데이터 측정 주기를 수 초 단위로 결정하기 때문에 성능 데이터의 측정 과정에서 모든 기준 시점들이 정확한 간격으로 결정되지 않을 수 있어 베이스라인 산정 구간에서 동일 기준 시간에 대한 성능 데이터가 없다면 해당 기준 시간의 성능 데이터에 대해서 앞선 기준 시간에 대한 성능 데이터로 치환할 수 있다.
서버 성능 모니터링부(330)는 베이스라인과 동일한 기준 시점에서 측정된 현재의 성능 데이터를 베이스라인과 비교하여 서버의 성능을 모니터링할 수 있다. 일 실시예에서, 서버 성능 모니터링부(330)는 베이스라인과 현재 성능 데이터의 차이를 통해 서버 성능의 추세를 결정할 수 있다. 일 실시예에서, 서버 성능 모니터링부(330)는 산출된 베이스라인과 현재의 성능 데이터의 차이가 기 설정된 임계치를 초과하는 경우 사용자에게 경보를 제공할 수 있다. 서버 성능 모니터링부(330)는 복수의 베이스라인 산정 구간별로 결정된 복수의 베이스라인들과 현재 성능 데이터를 표시하는 베이스라인 차트를 구성하여 제공할 수 있다.
제어부(340)는 서버 성능 모니터링 장치(110)의 동작 전반을 제어하고, 성능 데이터 측정부(310), 베이스라인 산출부(320) 및 서버 성능 모니터링부(330)간 제어 및 데이터 흐름을 관리할 수 있다.
도 4는 본 발명의 일 실시예에 따른 서버 성능 모니터링 방법을 나타내는 순서도이다.
도 4에서, 서버 성능 모니터링 장치(110)는 성능 데이터 측정부(310)를 통해 과거의 특정 시간부터 현재 시간까지로 정의되는 모니터링 기간 동안, 수 초 단위로 결정되는 적어도 하나의 기준 시점에서의 서버의 성능 데이터를 측정할 수 있다(단계 S410). 일 실시예에서, 성능 데이터 측정부(310)는 모니터링 기간내에서 각 날짜에 적어도 하나의 기준 시점으로 구성되는 성능 데이터의 측정 주기를 결정하여 실시간으로 성능 데이터를 측정할 수 있다. 예를 들어, 성능 데이터 측정부(310)는 모니터링 기간 동안 2초 간격으로 결정되는 적어도 하나의 기준 시점 각각에 대하여 실시간으로 서버의 시스템 또는 독립 프로세스들에 대한 성능 데이터를 측정할 수 있다.
서버 성능 모니터링 장치(110)는 베이스라인 산출부(320)를 통해 모니터링 기간 내에서 베이스라인 산정 구간을 결정하고, 베이스라인 산정 구간동안 동일 기준 시점에서 측정된 복수의 성능 데이터들의 평균값을 베이스 라인으로 산출할 수 있다(단계 S420). 일 실시예에서, 베이스라인 산출부(320)는 복수의 성능 데이터들에 각 성능 지표별로 가변적인 가중치를 부여하고 평균을 산출하여 베이스라인으로 결정할 수 있다. 여기에서, 가중치는 사용자 인터페이스를 통해 사용자에 의해 입력될 수 있고, 따라서, 서버 성능 모니터링 장치(110)는 사용자의 시스템 운영 현황 및 비즈니스 패턴에 대한 이해도에 따라 서버의 성능에 대한 보다 정확한 모니터링을 할 수 있다.
서버 성능 모니터링 장치(110)는 서버 성능 모니터링부(330)를 통해 베이스라인과 동일 기준 시점에서 측정된 현재의 성능 데이터를 베이스라인과 비교하여 서버의 성능을 모니터링할 수 있다(단계 S430). 일 실시예에서, 서버 성능 모니터링부(330)는 베이스라인을 기준으로 현재의 성능 데이터와의 차이를 산출하고 산출된 차이가 사용자에 의해 기 설정된 특정 임계치를 넘는 경우 사용자에게 특정 알림을 제공할 수 있다.
도 5는 일 실시예에 따른 서버 성능 모니터링 장치를 통해 측정된 성능 데이터 및 베이스라인에 대한 표를 보여주는 예시도이다.
도 5에서, 서버 성능 모니터링 장치(110)는 성능 데이터 측정부(310)를 통해 과거 측정 데이터(baseline 모수)를 10월 2일부터 10월 9일까지 측정할 수 있다. 예를 들어, 성능 데이터 측정부(310)는 모니터링 기간에 해당하는 과거 10월 2일부터 10월 9일까지와 10월 10일인 현재의 성능 데이터를 적어도 하나의 기준 시점에 해당하는 9:00 부터 9:10까지에 대해서 측정할 수 있다. 베이스라인 산출부(320)는 2일부터 7일까지의 베이스라인 산정 구간을 결정할 수 있고, 베이스라인 산정 구간에서 동일 기준 시점에 해당하는 복수의 성능 데이터들의 평균을 베이스라인으로 결정할 수 있다. 예를 들어, 베이스라인 산출부(320)는 10월 9일과 10월 8일의 2일에 해당하는 베이스라인 구간을 산정하고 해당 구간에서 동일한 기준 시점인 9:00에 각각 17과 21의 평균인 19를 베이스라인으로 산출할 수 있다. 일 실시예에서, 베이스라인 산출부(320)는 그 크기를 2일부터 7일로 달리하는 복수의 베이스라인 산정 구간들을 결정할 수 있다. 서버 성능 모니터링부(330)는 베이스라인과 동일한 기준 시점의 현재 성능 데이터와 베이스라인을 비교하여 서버 성능을 모니터링할 수 있다. 예를 들어, 기준 시점 9:00에 현재 성능 데이터 값인 22와 10월5일부터 10월9일까지 5일에 해당하는 베이스라인 산정 구간에서의 베이스라인에 해당하는 22를 비교하고 그 차이가 없는 경우 현재의 서버 성능을 기준에 해당하는 베이스라인과 비교하여 안정적인 것으로 결정할 수 있다.
도 6은 도 5의 표에 따라 그려지는 베이스라인 차트에 대한 예시도이다.
서버 성능 모니터링 장치(110)는 복수의 동일한 기준 시점에서의 현재의 성능 데이터와 복수의 베이스라인 산정 구간에서의 베이스라인을 표시하는 그래프를 제공할 수 있다. 도 6에서, 9:06의 기준 시점에서 현재의 성능 데이터와 복수의 베이스라인간 급격한 차이를 보임에 따라 서버 성능 모니터링 장치(110)는 해당 기준 시점을 이상 사용 구간으로 결정할 수 있고, 그 차이가 사용자에 의해 설정된 임계치에 도달한 경우라면 사용자에게 경보를 보낼 수 있다.
도 7은 다른 일 실시예에 따른 서버 성능 모니터링 장치를 통해 측정된 가중치가 적용된 성능 데이터 및 베이스라인에 대한 표를 보여주는 예시도이다.
도 7에서, 서버 성능 모니터링 장치(110)는 시스템 자체뿐만 아니라 CPU, memory, I/O, Disk로 분류되는 특정 성능 지표별로 성능 데이터를 측정할 수 있다. 일 실시예에서, 서버 성능 모니터링 장치(110)는 각각의 성능 지표에 대해서 가중치를 적용하여 측정할 수 있다. 예를 들어, 서버 성능 모니터링 장치(110)는 사용자에게 인터페이스를 제공하여 사용자로 하여금 측정하고자 하는 성능 지표를 결정하고, 성능 지표별 가중치를 입력하도록 할 수 있다. 예를 들어, 서버 성능 모니터링 장치(110)는 CPU에 120%, memory에 100%, I/O에 150%, Disk에 80%의 가중치를 각각 부여하여 모니터링 기간 동안의 성능 데이터를 측정하고 평균값을 통해 베이스라인을 산출하여 현재 데이터와 비교할 수 있다.
도 8은 도 7의 표에 따라 그려지는 베이스라인 차트에 대한 예시도이다.
도 8에서, 서버 성능 모니터링 장치(110)는 가중치를 통해 측정된 현재의 성능 데이터와 2일 및 3일의 베이스라인 산정 기간 동안의 베이스라인 간의 차이를 보여주는 그래프를 제공할 수 있다. 서버 성능 모니터링 장치(110)는 가중치의 적용 결과, 가중치가 적용되지 않는 경우의 그래프와 비교할 때, 사용자에게 사용자의 시스템 운영 현황과 비즈니스 패턴에 따라 서버의 성능을 보다 정확하게 표현할 수 있는 그래프를 제공할 수 있다.
상기에서는 본 발명의 바람직한 실시예를 참조하여 설명하였지만, 해당 기술 분야의 숙련된 당업자는 하기의 특허 청구의 범위에 기재된 본 발명의 사상 및 영역으로부터 벗어나지 않는 범위 내에서 본 발명을 다양하게 수정 및 변경시킬 수 있음을 이해할 수 있을 것이다.
100: 서버 성능 모니터링 시스템
110: 서버 성능 모니터링 장치
120: 모니터링 대상 서버
130: 데이터베이스
210: 프로세서 220: 메모리
230: 사용자 입출력부 240: 네트워크 입출력부
310: 성능 데이터 측정부 320: 베이스라인 산출부
330: 서버 성능 모니터링부 340: 제어부

Claims (8)

  1. 과거의 특정 시간부터 현재 시간까지로 정의되는 모니터링 기간 동안, 수 초 단위로 결정되는 적어도 하나의 기준 시점에서의 서버의 성능 데이터를 측정하는 성능 데이터 측정부;
    상기 모니터링 기간 내에서 베이스라인(baseline) 산정 구간을 결정하고, 상기 베이스라인 산정 구간동안 동일 기준 시점에서 측정된 복수의 성능 데이터들의 평균값을 베이스라인으로 산출하는 베이스라인 산출부; 및
    상기 베이스라인과 동일 기준 시점에서 측정된 현재의 성능 데이터를 상기 베이스라인과 비교하여 상기 서버의 성능을 모니터링하는 서버 성능 모니터링부를 포함하되,
    상기 성능 데이터 측정부는 특정 시스템 자체의 성능 데이터뿐만 아니라 상기 특정 시스템의 성능 지표에 해당하는 특정 프로세스 개별 혹은 그룹 단위의 성능 데이터를 측정하고,
    상기 베이스라인 산출부는 상기 성능 지표에 해당하는 특정 프로세스 개별 혹은 그룹 단위의 성능 데이터를 통합하여 하나의 베이스라인을 산출하고, 상기 베이스라인 산정 구간내 특정 기준 시점에 해당하는 성능 데이터가 측정되지 않은 경우 해당 기준 시점보다 앞선 시점의 성능 데이터를 상기 특정 기준 시점의 성능 데이터로 결정하며,
    상기 성능 데이터의 측정 과정 및 상기 베이스라인의 산출 과정 각각에서 상기 성능 데이터에 상기 성능 지표별로 가중치가 적용되고, 상기 가중치는 상기 서버의 시스템 운영 현황과 비즈니스 패턴에 따라 가변적으로 결정되며,
    상기 시스템 운영 현황은 사용자의 현재 성능 지표별 사용량의 비중에 해당하고, 상기 비즈니스 패턴은 상기 사용량의 변화에 해당하는 것을 특징으로 하는 서버 성능 모니터링 장치.
  2. 삭제
  3. 삭제
  4. 제1항에 있어서, 상기 베이스라인 산출부는
    각각은 크기를 달리하는 복수의 베이스라인 산정 구간들을 결정하는 것을 특징으로 하는 서버 성능 모니터링 장치.
  5. 삭제
  6. 삭제
  7. 삭제
  8. 제1항에 있어서, 상기 서버 성능 모니터링부는
    상기 산출된 베이스라인과 현재의 상기 성능 데이터의 차이가 기 설정된 임계치를 초과하는 경우 사용자에게 경보를 제공하는 것을 특징으로 하는 서버 성능 모니터링 장치.
KR1020190031665A 2019-03-20 2019-03-20 서버 성능 모니터링 장치 KR102269647B1 (ko)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020190031665A KR102269647B1 (ko) 2019-03-20 2019-03-20 서버 성능 모니터링 장치

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020190031665A KR102269647B1 (ko) 2019-03-20 2019-03-20 서버 성능 모니터링 장치

Publications (2)

Publication Number Publication Date
KR20200111952A KR20200111952A (ko) 2020-10-05
KR102269647B1 true KR102269647B1 (ko) 2021-06-25

Family

ID=72808983

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020190031665A KR102269647B1 (ko) 2019-03-20 2019-03-20 서버 성능 모니터링 장치

Country Status (1)

Country Link
KR (1) KR102269647B1 (ko)

Families Citing this family (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR102368147B1 (ko) * 2021-10-19 2022-02-25 강동원 서버 모니터링 시스템 및 그 구동 방법
KR102399305B1 (ko) 2022-03-02 2022-05-17 최주림 서버 모니터링 시스템 구동 방법
CN115277471A (zh) * 2022-08-01 2022-11-01 珠海金山数字网络科技有限公司 一种指标监控方法、系统、装置以及电子设备

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2006025892A2 (en) 2004-08-30 2006-03-09 International Business Machines Corporation Techniques for health monitoring and control of application servers
WO2011096859A1 (en) 2010-02-04 2011-08-11 Telefonaktiebolaget L M Ericsson (Publ) Network performance monitor for virtual machines
US10684911B2 (en) 2014-09-24 2020-06-16 Activision Publishing, Inc. Compute resource monitoring system and method associated with benchmark tasks and conditions

Family Cites Families (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20030041612A (ko) * 2001-11-20 2003-05-27 (주)유니트시스템즈 서버 병목을 실시간으로 분석하는 방법
US7269824B2 (en) * 2003-02-13 2007-09-11 Path Reliability, Inc. Software behavior pattern recognition and analysis
KR100926362B1 (ko) 2007-08-27 2009-11-10 주식회사 케이티 서버 성능 관리 방법 및 시스템
KR20100003597A (ko) * 2008-07-01 2010-01-11 포스데이타 주식회사 통합 성능 모니터링 방법 및 모니터링 시스템
KR100994310B1 (ko) 2008-10-17 2010-11-12 엔에이치엔비즈니스플랫폼 주식회사 웹 서버의 성능 지표 추정 방법 및 시스템

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2006025892A2 (en) 2004-08-30 2006-03-09 International Business Machines Corporation Techniques for health monitoring and control of application servers
WO2011096859A1 (en) 2010-02-04 2011-08-11 Telefonaktiebolaget L M Ericsson (Publ) Network performance monitor for virtual machines
US10684911B2 (en) 2014-09-24 2020-06-16 Activision Publishing, Inc. Compute resource monitoring system and method associated with benchmark tasks and conditions

Also Published As

Publication number Publication date
KR20200111952A (ko) 2020-10-05

Similar Documents

Publication Publication Date Title
CN105677538B (zh) 一种基于故障预测的云计算系统自适应监测方法
CN106951984B (zh) 一种系统健康度动态分析预测方法及装置
KR102269647B1 (ko) 서버 성능 모니터링 장치
US9219663B1 (en) Managing the performance of an electronic device
CN110806954B (zh) 评估云主机资源的方法、装置、设备及存储介质
CN111045894B (zh) 数据库异常检测方法、装置、计算机设备和存储介质
US20150233983A1 (en) Systems and methods for processng data relating to energy usage
CN108874640A (zh) 一种集群性能的评估方法和装置
US8171060B2 (en) Storage system and method for operating storage system
JP5354138B1 (ja) キャパシティ管理支援装置、キャパシティ管理方法およびプログラム
EP4020315A1 (en) Method, apparatus and system for determining label
CN107704387B (zh) 用于系统预警的方法、装置、电子设备及计算机可读介质
US20140095696A1 (en) Evaluating utilization of one or more computer systems
US9269062B2 (en) Methods for optimizing energy consumption and devices thereof
KR20060061759A (ko) 트랜잭션 기반 성능 모델을 자동 검증 및 캘리브레이션하기위한 컴퓨터 구현 방법
JP6424273B2 (ja) コンピュータ・インフラストラクチャの管理におけるポリシーの自己調整のための半教師あり機械学習の活用
US9929926B1 (en) Capacity management system and method for a computing resource
US20160080267A1 (en) Monitoring device, server, monitoring system, monitoring method and program recording medium
US20220245010A1 (en) Time-series anomaly detection using an inverted index
JPWO2018073955A1 (ja) システム分析方法、システム分析装置、および、プログラム
Gupta et al. Long range dependence in cloud servers: a statistical analysis based on google workload trace
CN109064211B (zh) 营销业务数据分析方法、装置及服务器
US20200042373A1 (en) Device operation anomaly identification and reporting system
KR102464688B1 (ko) 모니터링 결과의 이벤트 등급 결정 방법 및 장치
JP2020035297A (ja) 機器状態監視装置及びプログラム

Legal Events

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