KR20200111952A - Server performance monitoring apparatus - Google Patents

Server performance monitoring apparatus Download PDF

Info

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

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

The present invention relates to a server performance monitoring device, which comprises: a performance data measurement unit which measures performance data of a server at one or more reference points determined in units of several seconds during a monitoring period defined from a specific time in the past to the present time; a baseline calculation unit which determines a baseline calculation interval within the monitoring period and calculates an average value of multiple types of performance data measured at the same reference point during a baseline calculation period as a baseline; and a server performance monitoring unit which is configured to monitor performance of the server by comparing current performance data measured at the same reference point as the baseline with the baseline. Accordingly, the present invention can monitor the performance of the server based on the baseline determined as the average value of the same reference time point for each specific section during the monitoring period.

Description

서버 성능 모니터링 장치 {SERVER PERFORMANCE MONITORING APPARATUS}Server performance monitoring device {SERVER PERFORMANCE MONITORING APPARATUS}

본 발명은 서버 성능 모니터링 기술에 관한 것으로, 보다 상세하게는 모니터링 기간동안 수 초단위로 성능 데이터를 수집하고 베이스라인을 결정하여 현재의 성능 데이터와 비교함으로써 서버의 성능을 모니터링하는 서버 성능 모니터링 장치에 관한 것이다.The present invention relates to a server performance monitoring technology, and more particularly, to a server performance monitoring device that monitors server performance by collecting performance data every few seconds during a monitoring period, determining a baseline, and comparing it with current performance data. About.

서버는 한 대의 컴퓨터에 여러 대의 컴퓨터를 통신회선으로 연결하여 공동으로 사용하는 정보를 저장해 두거나 컴퓨터 자원을 많이 사용하는 프로그램을 모아 놓은 컴퓨터를 의미한다. 따라서, 서버는 많은 사용자가 이용하므로 서버 고장을 대비하기 위해 서버 성능을 주기적으로 모니터링하는 과정이 필요하다.A server refers to a computer in which a number of computers are connected to one computer through a communication line to store shared information or programs that use a lot of computer resources. Therefore, since the server is used by many users, it is necessary to periodically monitor the server performance to prepare for server failure.

종래의 시스템 성능 분석의 과거 데이터를 통한 성능 추세의 확인을 위한 기준선 설정 및 추이 분석은 주어진 모수(수집된 성능 데이터의 평균값)을 바탕으로 한 이동 평균법에 의한 신뢰 구간을 추정하였다. 즉, 종래의 대부분의 솔루션들의 수집 주기는 1분 이상으로 설정이 되어있어 자원 사용률이 실제 시스템이 사용했던 사용현황과 다르게 많은 부분 왜곡이 되어 완만하게 표현된다는 문제점이 있다. 본 발명은 상기 문제점을 개선하기 위해 개시된다.The baseline setting and trend analysis for confirming the performance trend through the historical data of the conventional system performance analysis estimated the confidence interval by the moving average method based on the given parameter (average value of the collected performance data). In other words, the collection period of most of the conventional solutions is set to 1 minute or more, and thus there is a problem that the resource usage rate is distorted in many parts and expressed smoothly, unlike the actual system used. The present invention is disclosed to improve the above problem.

한국등록특허 제 10-0926362호는 서버 성능 관리 방법 및 시스템을 개시한다. 이러한 기술에 따르면, 구비된 복수의 하드웨어 및 설치된 어플리케이션에 대한 하나 이상의 로그 및 프로파일 정보들을 분석하여 미리 정해진 방법에 따라 펙터(factor) 데이터들을 생성하여 상기 데이터베이스에 저장하는 n(임의의 자연수)개의 서버; 및 임의의 보고서 생성을 위한 항목들에 상응하는 펙터 데이터들 중 상기 데이터베이스에 미저장된 펙터 데이터에 대한 수집 요청 정보를 생성하여 각각의 서버로 송신하는 성능 관리 웹서버를 포함하되, 상기 각각의 서버는 상기 수집 요청 정보에 상응하여 상기 로그 및 상기 프로파일 정보들을 분석하여 미리 정해진 방법에 따라 확장 펙터 데이터를 생성하여 전송하며, 상기 성능 관리 웹서버는 상기 데이터베이스로부터 추출된 펙터 데이터 및 상기 수신된 확장 펙터 데이터를 이용하여 미리 정해진 방법에 따라 보고서를 생성하여 출력하는 것을 특징으로 하는 성능 관리 시스템이 제공될 수 있다. 따라서, 이기종의 서버에 대한 성능 및 이용 현황에 대한 보고서 생성을 용이하게 할 수 있다.Korean Patent Registration No. 10-0926362 discloses a server performance management method and system. According to this technology, n (arbitrary natural numbers) servers that analyze one or more logs and profile information of a plurality of hardware and installed applications, generate factor data according to a predetermined method, and store them in the database. ; And a performance management web server for generating collection request information for factor data not stored in the database among factor data corresponding to items for generating a random report and transmitting it to each server, wherein each server According to the collection request information, the log and the profile information are analyzed to generate and transmit extended factor data according to a predetermined method, and the performance management web server includes the factor data extracted from the database and the received extended factor data. A performance management system may be provided, characterized in that the report is generated and output according to a predetermined method. Therefore, it is possible to easily generate a report on the performance and usage status of heterogeneous servers.

한국등록특허 제 10-0994310호는 웹 서버의 성능 지표 추정 방법 및 시스템에 대한 기술을 개시한다. 이러한 기술에 따르면, 웹 서버로부터 성능 지표 추정 모델을 선정하기 위한 샘플 데이터를 추출하는 단계, 상기 추출된 샘플 데이터의 분포를 이용하여 상기 웹 서버의 리소스에 따른 성능 지표에 대응하는 성능 지표 추정 모델을 선정하는 단계 및 상기 선정된 성능 지표 추정 모델을 최적화하는 상기 성능 지표 추정 모델의 파라미터를 결정하는 단계를 포함할 수 있다.Korean Patent Registration No. 10-0994310 discloses a method and system for estimating a performance index of a web server. According to this technique, the step of extracting sample data for selecting a performance index estimation model from a web server, and a performance index estimation model corresponding to a performance index according to a resource of the web server using the distribution of the extracted sample data And determining a parameter of the performance index estimation model for optimizing the selected performance index estimation model.

한국등록특허 제 10-0926362호Korean Patent Registration No. 10-0926362 한국등록특허 제 10-0994310호Korean Patent Registration No. 10-0994310

본 발명의 일 실시예는 모니터링 기간동안 특정 구간 별 동일 기준 시점의 평균값으로 결정된 베이스라인(baseline, 기준선)을 기초로 서버의 성능을 모니터링하는 서버 성능 모니터링 장치를 제공하고자 한다.An embodiment of the present invention is to provide a server performance monitoring device that monitors server performance based on a baseline determined as an average value of the same reference time point for each specific section during a monitoring period.

본 발명의 일 실시예는 성능 모니터링 기간내 특정 기준 시간 단위의 성능 데이터의 평균값을 베이스라인으로 결정하고 현재 성능 데이터와 비교하여 서버 성능을 모니터링하는 서버 성능 모니터링 장치를 제공하고자 한다.An embodiment of the present invention is to provide a server performance monitoring apparatus that determines the average value of performance data in a specific reference time unit within a performance monitoring period as a baseline and compares it with current performance data to monitor server performance.

본 발명의 일 실시예는 모니터링 기간 내 수 초 단위로 결정되는 적어도 하나의 기준 시점 각각에서 베이스라인 산정 구간 동안의 성능 데이터의 평균값에 해당하는 베이스라인과 현재 성능 데이터의 차이를 통해 서버의 성능 추세를 분석하는 서버 성능 모니터링 장치를 제공하고자 한다.An embodiment of the present invention is a performance trend of the server through the difference between the current performance data and the baseline corresponding to the average value of the performance data during the baseline calculation period at each of at least one reference point determined in units of several seconds within the monitoring period. To provide a server performance monitoring device that analyzes.

본 발명의 일 실시예는 측정된 성능 데이터에 사용자 서버의 시스템 상황에 따라 성능 지표 별로 부여된 가중치를 부여하고 이를 기초로 베이스라인을 결정하여 현재 서버의 성능을 모니터링하는 서버 성능 모니터링 장치를 제공하고자 한다.An embodiment of the present invention is to provide a server performance monitoring device that monitors the performance of the current server by assigning a weight assigned to each performance index to the measured performance data according to the system status of the user server, and determining a baseline based on this. do.

실시예들 중에서, 서버 성능 모니터링 장치는 과거의 특정 시간부터 현재 시간까지로 정의되는 모니터링 기간 동안, 수 초 단위로 결정되는 적어도 하나의 기준 시점에서의 서버의 성능 데이터를 각각 측정하는 성능 데이터 측정부, 상기 모니터링 기간 내에서 베이스라인(baseline) 산정 구간을 결정하고, 상기 베이스라인 산정 구간동안 동일 기준 시점에서 측정된 복수의 성능 데이터들의 평균값을 베이스라인으로 산출하는 베이스라인 산출부 및 상기 베이스라인과 동일 기준 시점에서 측정된 현재의 성능 데이터를 상기 베이스라인과 비교하여 상기 서버의 성능을 모니터링하는 서버 성능 모니터링부를 포함한다.Among embodiments, the server performance monitoring device is a performance data measuring unit that measures performance data of the server at at least one reference time point determined in units of several seconds during a monitoring period defined from a specific time in the past to the present time. , A baseline calculator for determining a baseline calculation section within the monitoring period, and calculating an average value of a plurality of performance data measured at the same reference point in time during the baseline calculation period as a baseline, and the baseline And a server performance monitoring unit configured to monitor the performance of the server by comparing the current performance data measured at the same reference point with the baseline.

상기 성능 데이터 측정부는 특정 시스템 자체의 성능 데이터뿐만 아니라 상기 특정 시스템이 포함하는 성능 지표에 해당하는 특정 프로세스 개별 혹은 그룹 단위의 성능 데이터를 측정할 수 있다.The performance data measurement unit may measure not only performance data of a specific system itself, but also performance data of an individual or group unit of a specific process corresponding to a performance index included in the specific system.

상기 베이스라인 산출부는 각각은 크기를 달리하는 복수의 베이스라인 산정 구간들을 결정할 수 있다.Each of the baseline calculation units may determine a plurality of baseline calculation intervals having different sizes.

상기 성능 데이터 측정부는 상기 성능 데이터를 측정하는 과정에서 상기 성능 데이터에 상기 성능 지표별로 가중치를 적용할 수 있다.The performance data measurement unit may apply a weight for each performance index to the performance data in the process of measuring the performance data.

상기 베이스라인 산출부는 상기 베이스라인을 산출하는 과정에서 상기 성능 데이터에 상기 성능 지표별로 상기 가중치를 부여할 수 있다.The baseline calculator may assign the weight to the performance data for each performance index in the process of calculating the baseline.

상기 성능 데이터 측정부 및 상기 베이스라인 산출부는 상기 서버의 시스템 운영 현황과 비즈니스 패턴을 기초로 상기 가중치를 가변적으로 결정할 수 있다.The performance data measurement unit and the baseline calculation unit may variably determine the weight based on the system operation status and business pattern of the server.

상기 베이스라인 산출부는 상기 베이스라인 산정 구간내 특정 시간의 기준 시점에 해당하는 성능 데이터가 측정되지 않은 경우 상기 기준 시점보다 앞선 시점의 성능 데이터를 상기 기준 시점의 성능 데이터로 결정할 수 있다.When performance data corresponding to a reference time point of a specific time within the baseline calculation section is not measured, the baseline calculator may determine performance data at a time point preceding the reference time point as the performance data at the reference time point.

상기 서버 성능 모니터링부는 상기 산출된 베이스라인과 현재의 상기 성능 데이터의 차이가 기 설정된 임계치를 초과하는 경우 사용자에게 경보를 제공할 수 있다.The server performance monitoring unit may provide an alert to a user when a difference between the calculated baseline and the current performance data exceeds a preset threshold.

개시된 기술은 다음의 효과를 가질 수 있다. 다만, 특정 실시예가 다음의 효과를 전부 포함하여야 한다거나 다음의 효과만을 포함하여야 한다는 의미는 아니므로, 개시된 기술의 권리범위는 이에 의하여 제한되는 것으로 이해되어서는 아니 될 것이다.The disclosed technology can have the following effects. However, since it does not mean that a specific embodiment should include all of the following effects or only the following effects, it should not be understood that the scope of the rights of the disclosed technology is limited thereby.

본 발명의 일 실시예에 따른 서버 성능 모니터링 장치는 모니터링 기간동안 특정 구간 별 동일 기준 시점의 평균값으로 결정된 베이스라인(baseline, 기준선)을 기초로 서버의 성능을 모니터링할 수 있다.The server performance monitoring apparatus according to an embodiment of the present invention may monitor server performance based on a baseline determined as an average value of the same reference time point for each specific section during the monitoring period.

본 발명의 일 실시예에 따른 서버 성능 모니터링 장치는 모니터링 기간 내 수 초 단위로 결정되는 적어도 하나의 기준 시점 각각에서 베이스라인 산정 구간 동안의 성능 데이터의 평균값에 해당하는 베이스라인과 현재 성능 데이터의 차이를 통해 서버의 성능 추세를 분석할 수 있다.Server performance monitoring apparatus according to an embodiment of the present invention is the difference between the baseline and the current performance data corresponding to the average value of the performance data during the baseline calculation interval at each of at least one reference point determined in units of several seconds within the monitoring period Through this, you can analyze the performance trend of the server.

본 발명의 일 실시예에 따른 서버 성능 모니터링 장치는 성능 데이터의 측정 주기를 수 초단위로 개선시켜 사용자는 실시간으로 서버의 성능을 모니터링할 수 있고, 수 초단위로 측정된 성능 데이터를 데이터베이스에 저장하여 성능 히스토리 분석도 가능하다.The server performance monitoring apparatus according to an embodiment of the present invention improves the measurement period of performance data in units of several seconds so that the user can monitor the performance of the server in real time, and stores the performance data measured in seconds in a database Therefore, it is possible to analyze the performance history.

본 발명의 일 실시예에 따른 서버 성능 모니터링 장치는 사용자 서버의 시스템 상황에 따라 측정된 성능 데이터에 성능 지표 별로 부여된 가중치에 따라 베이스라인을 결정하여 현재 서버의 성능을 모니터링할 수 있다.The server performance monitoring apparatus according to an embodiment of the present invention may monitor performance of a current server by determining a baseline according to a weight assigned to each performance index to performance data measured according to a system condition of a user server.

본 발명의 일 실시예에 따른 서버 성능 모니터링 장치는 베이스라인 선정 구간의 크기에 따른 베이스라인 선정의 범위 오차를 줄이고 일상적인 업무 시간내의 시스템 사용량의 변화 추이를 직관적으로 판단할 수 있으며, 베이스라인 기반의 추세 분석으로 보다 정확한 예측이 가능하다.The server performance monitoring device according to an embodiment of the present invention can reduce the error in the range of the baseline selection according to the size of the baseline selection section, and intuitively determine the change in system usage within the daily working hours, and can be based on the baseline. More accurate prediction is possible by analyzing the trend of

도 1은 본 발명의 일 실시예에 따른 서버 성능 모니터링 시스템을 나타내는 도면이다.
도 2는 도 1에 있는 서버 성능 모니터링 장치를 나타내는 블록도이다.
도 3은 본 발명의 일 실시예에 따른 서버 성능 모니터링 장치의 기능적 구성을 나타내는 블록도이다.
도 4는 본 발명의 일 실시예에 따른 서버 성능 모니터링 방법을 나타내는 순서도이다.
도 5는 일 실시예에 따른 서버 성능 모니터링 장치를 통해 측정된 성능 데이터 및 베이스라인에 대한 표를 보여주는 예시도이다.
도 6은 도 5의 표에 따라 그려지는 베이스라인 차트에 대한 예시도이다.
도 7은 다른 일 실시예에 따른 서버 성능 모니터링 장치를 통해 측정된 가중치가 적용된 성능 데이터 및 베이스라인에 대한 표를 보여주는 예시도이다.
도 8은 도 7의 표에 따라 그려지는 베이스라인 차트에 대한 예시도이다.
1 is a diagram illustrating a server performance monitoring system according to an embodiment of the present invention.
FIG. 2 is a block diagram illustrating a server performance monitoring device in FIG. 1.
3 is a block diagram showing a functional configuration of a server performance monitoring apparatus according to an embodiment of the present invention.
4 is a flowchart illustrating a server performance monitoring method according to an embodiment of the present invention.
5 is an exemplary diagram showing a table of performance data and baselines measured by the server performance monitoring apparatus according to an exemplary embodiment.
6 is an exemplary view of a baseline chart drawn according to the table of FIG. 5.
7 is an exemplary diagram showing a table of weighted performance data and a baseline measured by the server performance monitoring apparatus according to another embodiment.
8 is an exemplary view of a baseline chart drawn according to the table of FIG. 7.

본 발명에 관한 설명은 구조적 내지 기능적 설명을 위한 실시예에 불과하므로, 본 발명의 권리범위는 본문에 설명된 실시예에 의하여 제한되는 것으로 해석되어서는 아니 된다. 즉, 실시예는 다양한 변경이 가능하고 여러 가지 형태를 가질 수 있으므로 본 발명의 권리범위는 기술적 사상을 실현할 수 있는 균등물들을 포함하는 것으로 이해되어야 한다. 또한, 본 발명에서 제시된 목적 또는 효과는 특정 실시예가 이를 전부 포함하여야 한다거나 그러한 효과만을 포함하여야 한다는 의미는 아니므로, 본 발명의 권리범위는 이에 의하여 제한되는 것으로 이해되어서는 아니 될 것이다.Since the description of the present invention is merely an embodiment for structural or functional description, the scope of the present invention should not be construed as being limited by the embodiments described in the text. That is, since the embodiments can be variously changed and have various forms, the scope of the present invention should be understood to include equivalents capable of realizing the technical idea. In addition, since the object or effect presented in the present invention does not mean that a specific embodiment should include all of them or only those effects, the scope of the present invention should not be understood as being limited thereto.

한편, 본 출원에서 서술되는 용어의 의미는 다음과 같이 이해되어야 할 것이다.Meanwhile, the meaning of terms described in the present application should be understood as follows.

"제1", "제2" 등의 용어는 하나의 구성요소를 다른 구성요소로부터 구별하기 위한 것으로, 이들 용어들에 의해 권리범위가 한정되어서는 아니 된다. 예를 들어, 제1 구성요소는 제2 구성요소로 명명될 수 있고, 유사하게 제2 구성요소도 제1 구성요소로 명명될 수 있다.Terms such as "first" and "second" are used to distinguish one component from other components, and the scope of rights is not limited by these terms. For example, a first component may be referred to as a second component, and similarly, a second component may be referred to as a first component.

어떤 구성요소가 다른 구성요소에 "연결되어"있다고 언급된 때에는, 그 다른 구성요소에 직접적으로 연결될 수도 있지만, 중간에 다른 구성요소가 존재할 수도 있다고 이해되어야 할 것이다. 반면에, 어떤 구성요소가 다른 구성요소에 "직접 연결되어"있다고 언급된 때에는 중간에 다른 구성요소가 존재하지 않는 것으로 이해되어야 할 것이다. 한편, 구성요소들 간의 관계를 설명하는 다른 표현들, 즉 "~사이에"와 "바로 ~사이에" 또는 "~에 이웃하는"과 "~에 직접 이웃하는" 등도 마찬가지로 해석되어야 한다.When a component is referred to as being "connected" to another component, it should be understood that although it may be directly connected to the other component, another component may exist in the middle. On the other hand, when it is mentioned that a certain component is "directly connected" to another component, it should be understood that no other component exists in the middle. On the other hand, other expressions describing the relationship between components, that is, "between" and "directly between" or "neighboring to" and "directly neighboring to" should be interpreted as well.

단수의 표현은 문맥상 명백하게 다르게 뜻하지 않는 한 복수의 표현을 포함하는 것으로 이해되어야 하고, "포함하다"또는 "가지다" 등의 용어는 실시된 특징, 숫자, 단계, 동작, 구성요소, 부분품 또는 이들을 조합한 것이 존재함을 지정하려는 것이며, 하나 또는 그 이상의 다른 특징이나 숫자, 단계, 동작, 구성요소, 부분품 또는 이들을 조합한 것들의 존재 또는 부가 가능성을 미리 배제하지 않는 것으로 이해되어야 한다.Singular expressions are to be understood as including plural expressions unless the context clearly indicates otherwise, and terms such as “comprise” or “have” refer to implemented features, numbers, steps, actions, components, parts, or It is to be understood that it is intended to designate that a combination exists and does not preclude the presence or addition of one or more other features or numbers, steps, actions, components, parts, or combinations thereof.

각 단계들에 있어 식별부호(예를 들어, a, b, c 등)는 설명의 편의를 위하여 사용되는 것으로 식별부호는 각 단계들의 순서를 설명하는 것이 아니며, 각 단계들은 문맥상 명백하게 특정 순서를 기재하지 않는 이상 명기된 순서와 다르게 일어날 수 있다. 즉, 각 단계들은 명기된 순서와 동일하게 일어날 수도 있고 실질적으로 동시에 수행될 수도 있으며 반대의 순서대로 수행될 수도 있다.In each step, the identification code (for example, a, b, c, etc.) is used for convenience of explanation, and the identification code does not describe the order of each step, and each step has a specific sequence clearly in context. Unless otherwise stated, it may occur differently from the stated order. That is, each of the steps may occur in the same order as specified, may be performed substantially simultaneously, or may be performed in the reverse order.

본 발명은 컴퓨터가 읽을 수 있는 기록매체에 컴퓨터가 읽을 수 있는 코드로서 구현될 수 있고, 컴퓨터가 읽을 수 있는 기록 매체는 컴퓨터 시스템에 의하여 읽혀질 수 있는 데이터가 저장되는 모든 종류의 기록 장치를 포함한다. 컴퓨터가 읽을 수 있는 기록 매체의 예로는 ROM, RAM, CD-ROM, 자기 테이프, 플로피 디스크, 광 데이터 저장 장치 등이 있다. 또한, 컴퓨터가 읽을 수 있는 기록 매체는 네트워크로 연결된 컴퓨터 시스템에 분산되어, 분산 방식으로 컴퓨터가 읽을 수 있는 코드가 저장되고 실행될 수 있다.The present invention can be embodied as computer-readable codes on a computer-readable recording medium, and the computer-readable recording medium includes all types of recording devices storing data that can be read by a computer system. . Examples of computer-readable recording media include ROM, RAM, CD-ROM, magnetic tape, floppy disk, and optical data storage devices. Further, the computer-readable recording medium is distributed over a computer system connected by a network, so that the computer-readable code can be stored and executed in a distributed manner.

여기서 사용되는 모든 용어들은 다르게 정의되지 않는 한, 본 발명이 속하는 분야에서 통상의 지식을 가진 자에 의해 일반적으로 이해되는 것과 동일한 의미를 가진다. 일반적으로 사용되는 사전에 정의되어 있는 용어들은 관련 기술의 문맥상 가지는 의미와 일치하는 것으로 해석되어야 하며, 본 출원에서 명백하게 정의하지 않는 한 이상적이거나 과도하게 형식적인 의미를 지니는 것으로 해석될 수 없다.All terms used herein have the same meaning as commonly understood by one of ordinary skill in the field to which the present invention belongs, unless otherwise defined. Terms defined in commonly used dictionaries should be construed as having meanings in the context of related technologies, and cannot be construed as having an ideal or excessive formal meaning unless explicitly defined in the present application.

도 1은 본 발명의 일 실시예에 따른 서버 성능 모니터링 시스템을 나타내는 도면이다.1 is a diagram illustrating a server performance monitoring system according to an embodiment of the present invention.

도 1을 참조하면, 서버 성능 모니터링 시스템(100)은 서버 성능 모니터링 장치(110), 모니터링 대상 서버(120) 및 데이터베이스(130)를 포함한다.Referring to FIG. 1, the server performance monitoring system 100 includes a server performance monitoring device 110, a server to be monitored 120, and a database 130.

서버 성능 모니터링 장치(110)는 적어도 하나의 모니터링 대상 서버(120)와 연결된 컴퓨팅 장치에 해당하고, 예를 들어, 데스크톱, 노트북, 태블릿 PC 또는 스마트폰으로 구현될 수 있다. 서버 성능 모니터링 장치(110)는 적어도 하나의 모니터링 대상 서버(120) 각각에 대하여 과거 특정 시간부터 현재 시간까지로 정의될 수 있는 모니터링 기간동안 서버의 성능을 모니터링하고 추세를 분석할 수 있다. 일 실시예에서, 서버 성능 모니터링 장치(110)는 모니터링 기간에서 사용자에 의해 산정된 복수의 특정 기간동안 성능 데이터의 평균치를 베이스라인으로 결정하여 성능의 추세를 분석하고, 베이스라인과 현재 성능 데이터의 갭(gap)분석을 통해 성능을 모니터링할 수 있다. 예를 들어, 성능의 모니터링 중 베이스라인과 현재 성능 데이터의 차이가 사용자에 의해 기 설정된 임계치에 도달하면 사용자에게 알림을 제공할 수 있다.The server performance monitoring device 110 corresponds to a computing device connected to at least one server to be monitored 120 and may be implemented as, for example, a desktop, a laptop computer, a tablet PC, or a smartphone. The server performance monitoring apparatus 110 may monitor the performance of the server for each of the at least one monitoring target server 120 and analyze a trend during a monitoring period that can be defined as from a specific time in the past to the present time. In one embodiment, the server performance monitoring device 110 determines an average of the performance data for a plurality of specific periods calculated by the user in the monitoring period as a baseline, analyzes the trend of performance, and analyzes the performance trend between the baseline and the current performance data. Performance can be monitored through gap analysis. For example, during performance monitoring, when the difference between the baseline and current performance data reaches a threshold preset by the user, a notification may be provided to the user.

모니터링 대상 서버(120)는 서버 성능 모니터링 장치(110)와 연결될 수 있다. 일 실시예에서, 모니터링 대상 서버(120)는 서버 성능 모니터링 장치(110)로부터 서버 성능 데이터의 전송 요청을 수신할 수 있다. 모니터링 대상 서버(120)는 서버 성능 모니터링 장치(110)로부터 서버 성능 데이터의 전송 요청을 수신하면 과거 특정 시간으로부터 현재 시간까지로 정의될 수 있는 모니터링 기간 동안의 서버 성능 데이터를 서버 성능 모니터링 장치(110)로 전송할 수 있다.The monitoring target server 120 may be connected to the server performance monitoring device 110. In an embodiment, the monitoring target server 120 may receive a request to transmit server performance data from the server performance monitoring device 110. When the server to be monitored 120 receives a request for transmission of server performance data from the server performance monitoring device 110, the server performance monitoring device 110 transmits server performance data for a monitoring period that can be defined as from a specific time in the past to the present time. ).

서버 성능 모니터링 장치(110)는 데이터베이스(130)를 포함하여 구현될 수 있고, 데이터베이스(130)와 독립적으로 구현될 수 있다. 데이터베이스(130)와 독립적으로 구현된 경우 서버 성능 모니터링 장치(110)는 데이터베이스(130)와 유선 또는 무선으로 연결되어 파일을 주고받을 수 있다. 데이터베이스(130)는 서버 성능 모니터링을 수행하는데 필요한 정보들을 저장할 수 있는 저장장치이다. 일 실시예에서, 데이터베이스(130)는 서버의 시스템 성능 데이터 및 시스템에 포함되는 성능 지표들에 해당하는 다양한 프로세스들의 성능 데이터들을 저장할 수 있고, 반드시 이에 한정되지 않으며, 서버 성능 모니터링 과정에서 다양한 형태로 수집 또는 가공된 정보들을 저장할 수 있다.The server performance monitoring apparatus 110 may be implemented including the database 130, and may be implemented independently of the database 130. When implemented independently of the database 130, the server performance monitoring device 110 may be connected to the database 130 by wire or wirelessly to exchange files. The database 130 is a storage device capable of storing information necessary for performing server performance monitoring. In one embodiment, the database 130 may store system performance data of the server and performance data of various processes corresponding to performance indicators included in the system, and are not necessarily limited thereto, and in various forms during the server performance monitoring process. You can store collected or processed information.

도 2는 도 1에 있는 서버 성능 모니터링 장치를 나타내는 블록도이다.FIG. 2 is a block diagram illustrating a server performance monitoring device in FIG. 1.

도 2를 참조하면, 서버 성능 모니터링 장치(110)는 프로세서(210), 메모리(220), 사용자 입출력부(230) 및 네트워크 입출력부(240)를 포함할 수 있다.Referring to FIG. 2, the server performance monitoring apparatus 110 may include a processor 210, a memory 220, a user input/output unit 230, and a network input/output unit 240.

프로세서(210)는 서버의 성능 모니터링을 수행할 수 있고, 이러한 과정에서 읽혀지거나 작성되는 메모리(220)를 관리할 수 있으며, 메모리(220)에 있는 휘발성 메모리와 비휘발성 메모리 간의 동기화 시간을 스케줄 할 수 있다. 프로세서(210)는 서버 성능 모니터링 장치(110)의 동작 전반을 제어할 수 있고, 메모리(220), 사용자 입출력부(230) 및 네트워크 입출력부(240)와 전기적으로 연결되어 이들 간의 데이터 흐름을 제어할 수 있다. 프로세서(210) 서버 성능 모니터링 장치(110)의 CPU(Central Processing Unit)로 구현될 수 있다.The processor 210 can monitor the performance of the server, manage the memory 220 that is read or written in this process, and schedule a synchronization time between the volatile memory and the nonvolatile memory in the memory 220. I can. The processor 210 can control the overall operation of the server performance monitoring device 110, and is electrically connected to the memory 220, the user input/output unit 230, and the network input/output unit 240 to control data flow between them. can do. The processor 210 may be implemented as a CPU (Central Processing Unit) of the server performance monitoring device 110.

메모리(220)는 SSD(Solid State Disk) 또는 HDD(Hard Disk Drive)와 같은 비휘발성 메모리로 구현되어 서버 성능 모니터링 장치(110)에 필요한 데이터 전반을 저장하는데 사용되는 보조기억장치를 포함할 수 있고, RAM(Random Access Memory)과 같은 휘발성 메모리로 구현된 주기억장치를 포함할 수 있다.The memory 220 is implemented as a nonvolatile memory such as a solid state disk (SSD) or a hard disk drive (HDD), and may include an auxiliary storage device used to store all data required for the server performance monitoring device 110, and , And a main memory device implemented as a volatile memory such as random access memory (RAM).

사용자 입출력부(230)은 사용자 입력을 수신하기 위한 환경 및 사용자에게 특정 정보를 출력하기 위한 환경을 포함하고, 예를 들어, 마우스, 트랙볼, 터치 패드, 그래픽 태블릿, 스캐너, 터치 스크린, 키보드 또는 포인팅 장치와 같은 어댑터를 포함하는 입력장치 및 모니터와 같은 어댑터를 포함하는 출력장치를 포함할 수 있다. 일 실시예에서, 사용자 입출력부(230)은 원격 접속을 통해 접속되는 컴퓨팅 장치에 해당할 수 있고, 그러한 경우, 서버 성능 모니터링 장치(110)는 서버로서 수행될 수 있다.The user input/output unit 230 includes an environment for receiving a user input and an environment for outputting specific information to a user, and, for example, a mouse, a trackball, a touch pad, a graphic tablet, a scanner, a touch screen, a keyboard or a pointing device. It may include an input device including an adapter such as a device and an output device including an adapter such as a monitor. In one embodiment, the user input/output unit 230 may correspond to a computing device connected through a remote connection, and in such a case, the server performance monitoring device 110 may be performed as a server.

네트워크 입출력부(240)은 적어도 서버 성능 모니터링 장치(110)와 연결하기 위한 환경을 포함하고, 예를 들어, LAN(Local Area Network) 통신을 위한 어댑터를 포함할 수 있다. 일 실시예에서, 서버 성능 모니터링 장치(110)는 네트워크 입출력부(240)를 통해 모니터링 대상 서버(120) 또는 데이터베이스(130)로 연결될 수 있다.The network input/output unit 240 includes at least an environment for connecting with the server performance monitoring device 110, and may include, for example, an adapter for LAN (Local Area Network) communication. In one embodiment, the server performance monitoring device 110 may be connected to the monitoring target server 120 or the database 130 through the network input/output unit 240.

도 3은 본 발명의 일 실시예에 따른 서버 성능 모니터링 장치의 기능적 구성을 나타내는 블록도이다.3 is a block diagram showing a functional configuration of a server performance monitoring apparatus according to an embodiment of the present invention.

도 3을 참조하면, 서버 성능 모니터링 장치(110)는 성능 데이터 측정부(310), 베이스라인 산출부(320), 서버 성능 모니터링부(330) 및 제어부(340)를 포함할 수 있다.Referring to FIG. 3, the server performance monitoring device 110 may include a performance data measurement unit 310, a baseline calculation unit 320, a server performance monitoring unit 330, and a control unit 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)는 성능 데이터를 측정하고자 하는 개별 프로세스 또는 그룹 단위의 프로세스를 선택할 수 있는 사용자 인터페이스를 제공하여 사용자로 하여금 직접 선택하도록 할 수 있다.The performance data measurement unit 310 may measure performance data of the server at at least one reference time point determined in units of several seconds during a monitoring period defined from a past specific time to a current time. In one embodiment, the performance data measurement unit 310 may provide a user interface to the user so that the user can set a monitoring period. More specifically, the performance data measurement unit 310 may measure performance data representing the performance of the server during a set monitoring period from each monitoring target server 120. The performance data measurement unit 310 may set a time range in units of several seconds corresponding to a specific reference time point within the monitoring period, and the average of the performance data in the time range at the specified reference time point is calculated as the performance at the specific reference time point It can be measured as data. For example, the performance data measurement unit 310 may measure an average of performance data at a reference time point corresponding to a time range determined in units of 2 seconds (intervals) as performance data at the reference time point. The performance data measurement unit 310 may measure current performance data as well as past performance data for baseline calculation at at least one reference point during the monitoring period. In one embodiment, the performance data measurement unit 310 includes not only performance data of a specific system in the server 120 to be monitored, but also performance indicators (CPU, memory, I/O, disk, etc.) included in the specific system. You can measure performance data for individual or group units of a specific process. For example, the performance data measurement unit 310 can measure the usage of CPU (Central Processing Unit), memory, and character I/O on the system as performance data in units of several seconds, and can measure a specific process as usage per user. You can measure performance data by grouping. In an embodiment, the performance data measurement unit 310 may apply a weight for each performance index to the performance data in the process of measuring performance data from the monitored server 120. Here, the weight may correspond to an arbitrary value assigned according to a criterion determined for the most important factors in the user's system situation. For example, the performance data measurement unit 310 may measure performance data by assigning a weight of 120% to the CPU, 100% to the memory, 150% to I/O, and 80% to the disk, respectively, depending on the system. have. In an embodiment, the performance data measurement unit 310 may variably determine a weight based on the system operation status and business pattern of the server. In another embodiment, the performance data measurement unit 310 may provide a user interface to allow a user to input a weight for each performance index. The performance data measurement unit 310 may provide a user interface for selecting an individual process or a group-based process for which the performance data is to be measured, so that the user can directly select it.

베이스라인 산출부(320)는 모니터링 기간 내에서 베이스라인(baseline) 산정 구간을 결정하고, 베이스라인 산정 구간동안 동일 기준 시점에서 측정된 복수의 성능 데이터들의 평균값을 베이스라인으로 산출할 수 있다. 여기에서, 베이스라인(baseline)은 서버 성능을 모니터링하기 위한 기준선으로, 모니터링 기간내에서 특정 크기의 베이스라인 산정 구간동안 동일한 특정 기준 시점에서 측정된 성능 데이터들의 평균값을 의미할 수 있다. 베이스라인 산출부(320)는 베이스라인을 산출하여 서버의 사용량 변화를 실시간으로 판단하고, 추세 분석시 베이스라인을 기반으로 하여 보다 정확한 예측을 가능하게 할 수 있다. 일 실시예에서, 베이스라인 산출부(320)는 각각은 크기를 달리하는 복수의 베이스라인 산정 구간들을 결정할 수 있다. 예를 들어, 베이스라인 산출부(320)는 현재로부터 소급하여 2일간, 3일간 내지 6일간의 성능 데이터들의 평균을 통해 복수의 베이스라인들을 산출하는 복수의 베이스라인 산정 구간들을 결정할 수 있다. 일 실시예에서, 베이스라인 산출부(320)는 베이스라인을 산출하는 과정에서 성능 데이터에 성능 지표별로 가중치를 부여할 수 있다. 예를 들어, 베이스라인 산출부(320)는 시스템에 따라 성능 데이터에 성능 지표별로 가중치를 각각 CPU에 120%, memory에 100%, I/O에 150%, Disk에 80% 부여하여 평균값을 산출하여 베이스라인으로 결정할 수 있다. 베이스라인 산출부(320)는 서버의 시스템 운영 현황과 비즈니스 패턴을 기초로 가중치를 가변적으로 결정할 수 있고, 또는, 사용자 인터페이스를 제공하여 사용자로 하여금 직접 가중치를 입력하도록 할 수 있다. 여기에서, 시스템 운영 현황은 시스템에서 사용자의 현재 성능 지표(항목)별 사용량의 비중을 의미할 수 있고, 비즈니스 패턴은 사용량의 변화를 의미할 수 있다. 일 실시예에서, 베이스라인 산출부(320)는 베이스라인 산정 구간내 특정 기준 시점에 해당하는 성능 데이터가 측정되지 않은 경우 기준 시점보다 앞선 시점의 성능 데이터를 특정 기준 시점의 성능 데이터로 결정할 수 있다. 보다 구체적으로, 베이스라인 산출부(320)는 각각의 기준 시점에 대해서 모니터링 기간 중 결정된 베이스라인 산정 구간에서 성능 데이터의 평균으로 베이스라인을 산출하는 과정에서, 수 초 단위로 결정되는 특정 기준 시점에 대한 성능 데이터가 측정되지 않은 경우 해당 특정 기준 시점보다 앞선 기준 시점에 측정된 성능데이터를 해당 특정 기준 시점의 성능 데이터로 결정할 수 있다. 즉, 서버 성능 모니터링 장치(110)는 성능 데이터 측정 주기를 수 초 단위로 결정하기 때문에 성능 데이터의 측정 과정에서 모든 기준 시점들이 정확한 간격으로 결정되지 않을 수 있어 베이스라인 산정 구간에서 동일 기준 시간에 대한 성능 데이터가 없다면 해당 기준 시간의 성능 데이터에 대해서 앞선 기준 시간에 대한 성능 데이터로 치환할 수 있다.The baseline calculator 320 may determine a baseline calculation interval within the monitoring period, and calculate an average value of a plurality of performance data measured at the same reference time point during the baseline calculation interval as a baseline. Here, the baseline is a baseline for monitoring server performance, and may mean an average value of performance data measured at the same specific reference time point during a baseline calculation interval of a specific size within the monitoring period. The baseline calculation unit 320 may calculate a baseline to determine a change in usage of the server in real time, and enable a more accurate prediction based on the baseline when analyzing a trend. In an embodiment, the baseline calculator 320 may determine a plurality of baseline calculation sections each having a different size. For example, the baseline calculator 320 may retroactively determine a plurality of baseline calculation intervals for calculating a plurality of baselines based on an average of performance data for 2 days, 3 days to 6 days. In an embodiment, the baseline calculator 320 may assign a weight to performance data for each performance index in the process of calculating the baseline. For example, the baseline calculator 320 calculates an average value by assigning 120% to the CPU, 100% to the memory, 150% to the I/O, and 80% to the disk, respectively, to the performance data according to the system. This can be determined as a baseline. The baseline calculator 320 may variably determine the weight based on the system operation status and business pattern of the server, or provide a user interface to allow the user to directly input the weight. Here, the system operation status may mean the proportion of the user's current performance index (item) usage in the system, and the business pattern may mean a change in usage. In an embodiment, when performance data corresponding to a specific reference point in the baseline calculation interval is not measured, the baseline calculator 320 may determine performance data at a point in time preceding the reference point as performance data at a specific reference point. . More specifically, in the process of calculating the baseline with the average of the performance data in the baseline calculation interval determined during the monitoring period for each reference time point, the baseline calculation unit 320 at a specific reference point determined in units of several seconds. When the performance data for the corresponding reference point is not measured, the performance data measured at a reference point prior to the specific reference point may be determined as the performance data at the specific reference point. That is, since the server performance monitoring device 110 determines the performance data measurement period in units of several seconds, all reference points may not be determined at an exact interval during the performance data measurement process. If there is no performance data, the performance data for the reference time can be replaced with the performance data for the previous reference time.

서버 성능 모니터링부(330)는 베이스라인과 동일한 기준 시점에서 측정된 현재의 성능 데이터를 베이스라인과 비교하여 서버의 성능을 모니터링할 수 있다. 일 실시예에서, 서버 성능 모니터링부(330)는 베이스라인과 현재 성능 데이터의 차이를 통해 서버 성능의 추세를 결정할 수 있다. 일 실시예에서, 서버 성능 모니터링부(330)는 산출된 베이스라인과 현재의 성능 데이터의 차이가 기 설정된 임계치를 초과하는 경우 사용자에게 경보를 제공할 수 있다. 서버 성능 모니터링부(330)는 복수의 베이스라인 산정 구간별로 결정된 복수의 베이스라인들과 현재 성능 데이터를 표시하는 베이스라인 차트를 구성하여 제공할 수 있다.The server performance monitoring unit 330 may monitor the performance of the server by comparing the current performance data measured at the same reference point as the baseline with the baseline. In an embodiment, the server performance monitoring unit 330 may determine a trend of server performance through a difference between the baseline and current performance data. In an embodiment, the server performance monitoring unit 330 may provide an alert to a user when a difference between the calculated baseline and current performance data exceeds a preset threshold. The server performance monitoring unit 330 may configure and provide a baseline chart displaying current performance data and a plurality of baselines determined for each of the plurality of baseline calculation intervals.

제어부(340)는 서버 성능 모니터링 장치(110)의 동작 전반을 제어하고, 성능 데이터 측정부(310), 베이스라인 산출부(320) 및 서버 성능 모니터링부(330)간 제어 및 데이터 흐름을 관리할 수 있다. The control unit 340 controls the overall operation of the server performance monitoring device 110, and controls and manages data flow between the performance data measurement unit 310, the baseline calculation unit 320, and the server performance monitoring unit 330. I can.

도 4는 본 발명의 일 실시예에 따른 서버 성능 모니터링 방법을 나타내는 순서도이다.4 is a flowchart illustrating a server performance monitoring method according to an embodiment of the present invention.

도 4에서, 서버 성능 모니터링 장치(110)는 성능 데이터 측정부(310)를 통해 과거의 특정 시간부터 현재 시간까지로 정의되는 모니터링 기간 동안, 수 초 단위로 결정되는 적어도 하나의 기준 시점에서의 서버의 성능 데이터를 측정할 수 있다(단계 S410). 일 실시예에서, 성능 데이터 측정부(310)는 모니터링 기간내에서 각 날짜에 적어도 하나의 기준 시점으로 구성되는 성능 데이터의 측정 주기를 결정하여 실시간으로 성능 데이터를 측정할 수 있다. 예를 들어, 성능 데이터 측정부(310)는 모니터링 기간 동안 2초 간격으로 결정되는 적어도 하나의 기준 시점 각각에 대하여 실시간으로 서버의 시스템 또는 독립 프로세스들에 대한 성능 데이터를 측정할 수 있다.In FIG. 4, the server performance monitoring device 110 includes a server at at least one reference point determined in units of several seconds during a monitoring period defined from a specific time in the past to the current time through the performance data measurement unit 310. The performance data of can be measured (step S410). In an embodiment, the performance data measurement unit 310 may measure the performance data in real time by determining a measurement period of performance data composed of at least one reference point in each day within the monitoring period. For example, the performance data measurement unit 310 may measure performance data for a system of a server or independent processes in real time for each of at least one reference time point determined at 2-second intervals during the monitoring period.

서버 성능 모니터링 장치(110)는 베이스라인 산출부(320)를 통해 모니터링 기간 내에서 베이스라인 산정 구간을 결정하고, 베이스라인 산정 구간동안 동일 기준 시점에서 측정된 복수의 성능 데이터들의 평균값을 베이스 라인으로 산출할 수 있다(단계 S420). 일 실시예에서, 베이스라인 산출부(320)는 복수의 성능 데이터들에 각 성능 지표별로 가변적인 가중치를 부여하고 평균을 산출하여 베이스라인으로 결정할 수 있다. 여기에서, 가중치는 사용자 인터페이스를 통해 사용자에 의해 입력될 수 있고, 따라서, 서버 성능 모니터링 장치(110)는 사용자의 시스템 운영 현황 및 비즈니스 패턴에 대한 이해도에 따라 서버의 성능에 대한 보다 정확한 모니터링을 할 수 있다.The server performance monitoring device 110 determines a baseline calculation section within the monitoring period through the baseline calculation unit 320, and uses the average value of a plurality of performance data measured at the same reference point in time during the baseline calculation section as a baseline. It can be calculated (step S420). In an embodiment, the baseline calculator 320 may determine a baseline by assigning a variable weight to each performance index to the plurality of performance data and calculating an average. Here, the weight may be input by the user through the user interface, and therefore, the server performance monitoring device 110 performs more accurate monitoring of the server performance according to the user's understanding of the system operation status and business pattern. I can.

서버 성능 모니터링 장치(110)는 서버 성능 모니터링부(330)를 통해 베이스라인과 동일 기준 시점에서 측정된 현재의 성능 데이터를 베이스라인과 비교하여 서버의 성능을 모니터링할 수 있다(단계 S430). 일 실시예에서, 서버 성능 모니터링부(330)는 베이스라인을 기준으로 현재의 성능 데이터와의 차이를 산출하고 산출된 차이가 사용자에 의해 기 설정된 특정 임계치를 넘는 경우 사용자에게 특정 알림을 제공할 수 있다.The server performance monitoring apparatus 110 may monitor the performance of the server by comparing the current performance data measured at the same reference point as the baseline with the baseline through the server performance monitoring unit 330 (step S430). In one embodiment, the server performance monitoring unit 330 may calculate a difference from the current performance data based on the baseline, and provide a specific notification to the user when the calculated difference exceeds a specific threshold preset by the user. have.

도 5는 일 실시예에 따른 서버 성능 모니터링 장치를 통해 측정된 성능 데이터 및 베이스라인에 대한 표를 보여주는 예시도이다.5 is an exemplary diagram showing a table of performance data and baselines measured by the server performance monitoring apparatus according to an exemplary embodiment.

도 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를 비교하고 그 차이가 없는 경우 현재의 서버 성능을 기준에 해당하는 베이스라인과 비교하여 안정적인 것으로 결정할 수 있다.In FIG. 5, the server performance monitoring apparatus 110 may measure past measurement data (baseline parameter) from October 2 to October 9 through the performance data measurement unit 310. For example, the performance data measurement unit 310 may measure the current performance data from October 2 to October 9 and October 10 corresponding to the monitoring period from 9:00 corresponding to at least one reference time point. It can be measured up to 9:10. The baseline calculator 320 may determine a baseline calculation interval from the 2nd to the 7th, and determine an average of a plurality of performance data corresponding to the same reference point in the baseline calculation interval as the baseline. For example, the baseline calculation unit 320 calculates the baseline section corresponding to the 2nd day of October 9 and October 8, and the average of 17 and 21, respectively, at 9:00, which is the same reference point in the corresponding section. We can calculate 19 as the baseline. In an embodiment, the baseline calculation unit 320 may determine a plurality of baseline calculation intervals whose size is changed from 2 to 7 days. The server performance monitoring unit 330 may monitor server performance by comparing the current performance data at the same reference point as the baseline with the baseline. For example, compare the current performance data value 22 at the base point of 9:00 and 22 corresponding to the baseline in the baseline calculation interval on the 5th from October 5th to October 9th. In this case, it can be determined that the current server performance is stable by comparing it with the baseline corresponding to the standard.

도 6은 도 5의 표에 따라 그려지는 베이스라인 차트에 대한 예시도이다.6 is an exemplary view of a baseline chart drawn according to the table of FIG. 5.

서버 성능 모니터링 장치(110)는 복수의 동일한 기준 시점에서의 현재의 성능 데이터와 복수의 베이스라인 산정 구간에서의 베이스라인을 표시하는 그래프를 제공할 수 있다. 도 6에서, 9:06의 기준 시점에서 현재의 성능 데이터와 복수의 베이스라인간 급격한 차이를 보임에 따라 서버 성능 모니터링 장치(110)는 해당 기준 시점을 이상 사용 구간으로 결정할 수 있고, 그 차이가 사용자에 의해 설정된 임계치에 도달한 경우라면 사용자에게 경보를 보낼 수 있다.The server performance monitoring apparatus 110 may provide a graph that displays current performance data at a plurality of the same reference time points and baselines at a plurality of baseline calculation intervals. In FIG. 6, as a sharp difference between the current performance data and a plurality of baselines is shown at the reference time point of 9:06, the server performance monitoring apparatus 110 may determine the reference time point as an abnormal use period, and the difference is If the threshold set by the user is reached, an alert can be sent to the user.

도 7은 다른 일 실시예에 따른 서버 성능 모니터링 장치를 통해 측정된 가중치가 적용된 성능 데이터 및 베이스라인에 대한 표를 보여주는 예시도이다.7 is an exemplary diagram showing a table of weighted performance data and a baseline measured by a server performance monitoring apparatus according to another embodiment.

도 7에서, 서버 성능 모니터링 장치(110)는 시스템 자체뿐만 아니라 CPU, memory, I/O, Disk로 분류되는 특정 성능 지표별로 성능 데이터를 측정할 수 있다. 일 실시예에서, 서버 성능 모니터링 장치(110)는 각각의 성능 지표에 대해서 가중치를 적용하여 측정할 수 있다. 예를 들어, 서버 성능 모니터링 장치(110)는 사용자에게 인터페이스를 제공하여 사용자로 하여금 측정하고자 하는 성능 지표를 결정하고, 성능 지표별 가중치를 입력하도록 할 수 있다. 예를 들어, 서버 성능 모니터링 장치(110)는 CPU에 120%, memory에 100%, I/O에 150%, Disk에 80%의 가중치를 각각 부여하여 모니터링 기간 동안의 성능 데이터를 측정하고 평균값을 통해 베이스라인을 산출하여 현재 데이터와 비교할 수 있다.In FIG. 7, the server performance monitoring device 110 may measure performance data for each specific performance index classified into CPU, memory, I/O, and disk as well as the system itself. In an embodiment, the server performance monitoring apparatus 110 may measure each performance index by applying a weight. For example, the server performance monitoring apparatus 110 may provide an interface to the user to allow the user to determine a performance index to be measured and to input a weight for each performance index. For example, the server performance monitoring device 110 measures performance data during the monitoring period by assigning weights of 120% to CPU, 100% to memory, 150% to I/O, and 80% to disk, respectively, and calculates the average value. Through this, the baseline can be calculated and compared with the current data.

도 8은 도 7의 표에 따라 그려지는 베이스라인 차트에 대한 예시도이다.8 is an exemplary view of a baseline chart drawn according to the table of FIG. 7.

도 8에서, 서버 성능 모니터링 장치(110)는 가중치를 통해 측정된 현재의 성능 데이터와 2일 및 3일의 베이스라인 산정 기간 동안의 베이스라인 간의 차이를 보여주는 그래프를 제공할 수 있다. 서버 성능 모니터링 장치(110)는 가중치의 적용 결과, 가중치가 적용되지 않는 경우의 그래프와 비교할 때, 사용자에게 사용자의 시스템 운영 현황과 비즈니스 패턴에 따라 서버의 성능을 보다 정확하게 표현할 수 있는 그래프를 제공할 수 있다.In FIG. 8, the server performance monitoring apparatus 110 may provide a graph showing a difference between the current performance data measured through the weight and the baseline during the baseline calculation period of the 2nd and 3rd days. The server performance monitoring device 110 provides a graph that can more accurately express the server performance according to the user's system operation status and business pattern, when compared with the graph when the weight is applied and the weight is not applied. I can.

상기에서는 본 발명의 바람직한 실시예를 참조하여 설명하였지만, 해당 기술 분야의 숙련된 당업자는 하기의 특허 청구의 범위에 기재된 본 발명의 사상 및 영역으로부터 벗어나지 않는 범위 내에서 본 발명을 다양하게 수정 및 변경시킬 수 있음을 이해할 수 있을 것이다.Although the above has been described with reference to preferred embodiments of the present invention, those skilled in the art will variously modify and change the present invention within the scope not departing from the spirit and scope of the present invention described in the following claims. You will understand that you can do it.

100: 서버 성능 모니터링 시스템
110: 서버 성능 모니터링 장치
120: 모니터링 대상 서버
130: 데이터베이스
210: 프로세서 220: 메모리
230: 사용자 입출력부 240: 네트워크 입출력부
310: 성능 데이터 측정부 320: 베이스라인 산출부
330: 서버 성능 모니터링부 340: 제어부
100: server performance monitoring system
110: server performance monitoring device
120: server to be monitored
130: database
210: processor 220: memory
230: user input/output unit 240: network input/output unit
310: performance data measurement unit 320: baseline calculation unit
330: server performance monitoring unit 340: control unit

Claims (8)

과거의 특정 시간부터 현재 시간까지로 정의되는 모니터링 기간 동안, 수 초 단위로 결정되는 적어도 하나의 기준 시점에서의 서버의 성능 데이터를 측정하는 성능 데이터 측정부;
상기 모니터링 기간 내에서 베이스라인(baseline) 산정 구간을 결정하고, 상기 베이스라인 산정 구간동안 동일 기준 시점에서 측정된 복수의 성능 데이터들의 평균값을 베이스라인으로 산출하는 베이스라인 산출부; 및
상기 베이스라인과 동일 기준 시점에서 측정된 현재의 성능 데이터를 상기 베이스라인과 비교하여 상기 서버의 성능을 모니터링하는 서버 성능 모니터링부를 포함하는 서버 성능 모니터링 장치.
A performance data measuring unit that measures performance data of the server at at least one reference time point determined in units of several seconds during a monitoring period defined as a past specific time to a current time;
A baseline calculation unit that determines a baseline calculation interval within the monitoring period and calculates an average value of a plurality of performance data measured at the same reference point in time during the baseline calculation period as a baseline; And
Server performance monitoring apparatus comprising a server performance monitoring unit for monitoring the performance of the server by comparing the current performance data measured at the same reference point as the baseline with the baseline.
제1항에 있어서, 상기 성능 데이터 측정부는
특정 시스템 자체의 성능 데이터뿐만 아니라 상기 특정 시스템이 포함하는 성능 지표에 해당하는 특정 프로세스 개별 혹은 그룹 단위의 성능 데이터를 측정하는 것을 특징으로 하는 서버 성능 모니터링 장치.
The method of claim 1, wherein the performance data measuring unit
A server performance monitoring apparatus, characterized in that measuring not only performance data of a specific system itself, but also performance data of an individual or group unit of a specific process corresponding to a performance index included in the specific system.
제2항에 있어서, 상기 성능 데이터 측정부는
상기 성능 데이터를 측정하는 과정에서 상기 성능 데이터에 상기 성능 지표별로 가중치를 적용하는 것을 특징으로 하는 서버 성능 모니터링 장치.
The method of claim 2, wherein the performance data measuring unit
In the process of measuring the performance data, a weight is applied to the performance data for each performance index.
제1항에 있어서, 상기 베이스라인 산출부는
각각은 크기를 달리하는 복수의 베이스라인 산정 구간들을 결정하는 것을 특징으로 하는 서버 성능 모니터링 장치.
The method of claim 1, wherein the baseline calculation unit
Each of the server performance monitoring apparatus, characterized in that to determine a plurality of baseline calculation intervals having different sizes.
제3항에 있어서, 상기 베이스라인 산출부는
상기 베이스라인을 산출하는 과정에서 상기 성능 데이터에 상기 성능 지표별로 상기 가중치를 부여하는 것을 특징으로 하는 서버 성능 모니터링 장치.
The method of claim 3, wherein the baseline calculation unit
The server performance monitoring apparatus, characterized in that in the process of calculating the baseline, assigning the weight to the performance data for each performance index.
제5항에 있어서, 상기 성능 데이터 측정부 및 상기 베이스라인 산출부는
상기 서버의 시스템 운영 현황과 비즈니스 패턴을 기초로 상기 가중치를 가변적으로 결정하는 것을 특징으로 하는 서버 성능 모니터링 장치.
The method of claim 5, wherein the performance data measurement unit and the baseline calculation unit
Server performance monitoring device, characterized in that the weight is variably determined based on the system operation status and business pattern of the server.
제1항에 있어서, 상기 베이스라인 산출부는
상기 베이스라인 산정 구간내 특정 기준 시점에 해당하는 성능 데이터가 측정되지 않은 경우 상기 기준 시점보다 앞선 시점의 성능 데이터를 상기 특정 기준 시점의 성능 데이터로 결정하는 것을 특징으로 하는 서버 성능 모니터링 장치.
The method of claim 1, wherein the baseline calculation unit
When performance data corresponding to a specific reference point in the baseline calculation interval is not measured, the performance data at a point in time preceding the reference point in time is determined as the performance data at the specific reference point in time.
제1항에 있어서, 상기 서버 성능 모니터링부는
상기 산출된 베이스라인과 현재의 상기 성능 데이터의 차이가 기 설정된 임계치를 초과하는 경우 사용자에게 경보를 제공하는 것을 특징으로 하는 서버 성능 모니터링 장치.
The method of claim 1, wherein the server performance monitoring unit
And providing an alert to a user when a difference between the calculated baseline and the current performance data exceeds a preset threshold.
KR1020190031665A 2019-03-20 2019-03-20 Server performance monitoring apparatus KR102269647B1 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020190031665A KR102269647B1 (en) 2019-03-20 2019-03-20 Server performance monitoring apparatus

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020190031665A KR102269647B1 (en) 2019-03-20 2019-03-20 Server performance monitoring apparatus

Publications (2)

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

Family

ID=72808983

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020190031665A KR102269647B1 (en) 2019-03-20 2019-03-20 Server performance monitoring apparatus

Country Status (1)

Country Link
KR (1) KR102269647B1 (en)

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR102368147B1 (en) * 2021-10-19 2022-02-25 강동원 Server monitoring system and the driving method
KR102399305B1 (en) 2022-03-02 2022-05-17 최주림 Server monitoring system driving method
CN115277471A (en) * 2022-08-01 2022-11-01 珠海金山数字网络科技有限公司 Index monitoring method, system and device and electronic equipment

Citations (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20030041612A (en) * 2001-11-20 2003-05-27 (주)유니트시스템즈 A method of realtime analyzing server bottlenecks
WO2006025892A2 (en) * 2004-08-30 2006-03-09 International Business Machines Corporation Techniques for health monitoring and control of application servers
US7269824B2 (en) * 2003-02-13 2007-09-11 Path Reliability, Inc. Software behavior pattern recognition and analysis
KR100926362B1 (en) 2007-08-27 2009-11-10 주식회사 케이티 Method and system for managing of server performance
KR20100003597A (en) * 2008-07-01 2010-01-11 포스데이타 주식회사 Method and system for monitoring integration performance
KR100994310B1 (en) 2008-10-17 2010-11-12 엔에이치엔비즈니스플랫폼 주식회사 Method and system for presumption performance index of web server
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

Patent Citations (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20030041612A (en) * 2001-11-20 2003-05-27 (주)유니트시스템즈 A method of realtime analyzing server bottlenecks
US7269824B2 (en) * 2003-02-13 2007-09-11 Path Reliability, Inc. Software behavior pattern recognition and analysis
WO2006025892A2 (en) * 2004-08-30 2006-03-09 International Business Machines Corporation Techniques for health monitoring and control of application servers
KR100926362B1 (en) 2007-08-27 2009-11-10 주식회사 케이티 Method and system for managing of server performance
KR20100003597A (en) * 2008-07-01 2010-01-11 포스데이타 주식회사 Method and system for monitoring integration performance
KR100994310B1 (en) 2008-10-17 2010-11-12 엔에이치엔비즈니스플랫폼 주식회사 Method and system for presumption performance index of web server
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

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR102368147B1 (en) * 2021-10-19 2022-02-25 강동원 Server monitoring system and the driving method
KR102399305B1 (en) 2022-03-02 2022-05-17 최주림 Server monitoring system driving method
CN115277471A (en) * 2022-08-01 2022-11-01 珠海金山数字网络科技有限公司 Index monitoring method, system and device and electronic equipment

Also Published As

Publication number Publication date
KR102269647B1 (en) 2021-06-25

Similar Documents

Publication Publication Date Title
US11670021B1 (en) Enhanced graphical user interface for representing events
US20210183120A1 (en) Systems and methods for detecting and accommodating state changes in modelling
US11449315B2 (en) Systems and methods for utilizing machine learning to identify non-technical loss
EP3374864B1 (en) Performance monitoring in a distributed storage system
KR102269647B1 (en) Server performance monitoring apparatus
US20140095696A1 (en) Evaluating utilization of one or more computer systems
US20170053011A1 (en) Inferring application type based on input-output characteristics of application storage resources
US20150233983A1 (en) Systems and methods for processng data relating to energy usage
US9269062B2 (en) Methods for optimizing energy consumption and devices thereof
CN107704387B (en) Method, device, electronic equipment and computer readable medium for system early warning
JP6424273B2 (en) Utilizing semi-supervised machine learning for policy self-adjustment in computer infrastructure management
US20080195404A1 (en) Compliant-based service level objectives
EP2901309A1 (en) Data metric resolution ranking system and method
US9929926B1 (en) Capacity management system and method for a computing resource
US20180121856A1 (en) Factor-based processing of performance metrics
WO2012153400A1 (en) Data processing system, data processing method, and program
JP2023502910A (en) Identifying the constituent events of an event storm in operations management
US10936401B2 (en) Device operation anomaly identification and reporting system
CN113114540B (en) Method for setting bandwidth predictor and adjusting service and related device
US7890473B1 (en) Method and system for evaluating performance of a computer system
KR20200108199A (en) Auto monitoring method and apparatus by using anomaly detection
US20150269587A1 (en) Methods for predicting customer satisfaction and devices thereof
Xue et al. Fill-in the gaps: Spatial-temporal models for missing data
CA2719720C (en) System and method for detecting system relationships by correlating system workload activity levels
CN114240102A (en) Line loss abnormal data identification method and device, electronic equipment and storage medium

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