KR102066178B1 - 웹 모니터링 시스템 및 이를 이용한 응답시간 분포 정보 생성 방법 - Google Patents

웹 모니터링 시스템 및 이를 이용한 응답시간 분포 정보 생성 방법 Download PDF

Info

Publication number
KR102066178B1
KR102066178B1 KR1020170151240A KR20170151240A KR102066178B1 KR 102066178 B1 KR102066178 B1 KR 102066178B1 KR 1020170151240 A KR1020170151240 A KR 1020170151240A KR 20170151240 A KR20170151240 A KR 20170151240A KR 102066178 B1 KR102066178 B1 KR 102066178B1
Authority
KR
South Korea
Prior art keywords
response time
response
web
information
distribution
Prior art date
Application number
KR1020170151240A
Other languages
English (en)
Other versions
KR20190054554A (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 KR1020170151240A priority Critical patent/KR102066178B1/ko
Publication of KR20190054554A publication Critical patent/KR20190054554A/ko
Application granted granted Critical
Publication of KR102066178B1 publication Critical patent/KR102066178B1/ko

Links

Images

Classifications

    • 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
    • G06F11/3006Monitoring arrangements specially adapted to the computing system or computing system component being monitored where the computing system is distributed, e.g. networked systems, clusters, multiprocessor systems
    • 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

Landscapes

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

Abstract

웹 모니터링 시스템이 웹 모니터링을 위한 응답시간 분포 정보를 생성하는 방법으로서, 사용자 단말로의 웹 페이지 제공 여부에 따라 생성된 웹 호출 내역에서 응답 시간을 각각 확인하고, 미리 설정된 응답 시간 구간 중 상기 응답 시간이 포함된 응답 시간 구간을 확인한다. 확인한 응답 시간 구간에 부여된 마스킹 비트를 설정하고, 응답 시간 구간에 대한 인덱스 정보, 마스킹 비트를 포함하는 응답시간 분포 정보를 생성한다. 그리고 응답시간 분포 정보를 토대로 좌표 상에 블럭 마스킹을 표시하여 응답시간 분포도를 생성한다.

Description

웹 모니터링 시스템 및 이를 이용한 응답시간 분포 정보 생성 방법{Web monitoring system and method for generating of response time distribution information using the same}
본 발명은 웹 모니터링 시스템 및 이를 이용한 응답시간 분포 정보 생성 방법에 관한 것이다.
어플리케이션의 성능을 관리하고 모든 웹 호출에 대한 이력을 관리하는 APM(Application Performance Management Solution)은 웹 호출에 대한 모든 이력을 관리함으로써, 해당 웹 시스템의 부하와 트래픽 추이를 확인할 수 있도록 정보를 제공한다. 특히, 응답시간 분포도는 시간별로 웹 페이지 호출 경과 시간을 차트에 표현함으로써, 서비스 규모와 상태를 한눈에 확인하는 기능을 제공하는데, APM의 여러 기능 중 가장 핵심적인 기능으로 손꼽히고 있다.
APM이 응답시간 분포도를 구하기 위해서는 웹 호출이 발생한 각각의 호출 내역을 수집하여 데이터베이스에 저장하여야 하고, 사용자 화면의 차트에 모든 데이터 전달이 필요하다. 따라서, 상당한 데이터 전송량으로 인해 네트워크 전송량이 급격히 늘어나 서버에 과부하가 유발된다. 또한, APM 성능이 불안정해지거나, 수집 서버 또는 사용자 브라우저가 정지되는 상황, 더 나아가서는 APM으로 인해 제공되는 고객 서비스에 장애가 발생하는 상황이 문제점이 있다.
따라서, 본 발명은 응답 시간도의 데이터 저장과 전달을 효율적으로 하여 안정적인 성능 확보와 유연한 조회 기간 변경이 가능하도록 하는 웹 모니터링 시스템 및 이를 이용한 응답시간 분포 정보 생성 방법을 제공한다.
상기 본 발명의 기술적 과제를 달성하기 위한 본 발명의 하나의 특징인 웹 모니터링 시스템이 웹 모니터링을 위한 응답시간 분포 정보를 생성하는 방법으로서,
사용자 단말로의 웹 페이지 제공 여부에 따라 생성된 웹 호출 내역에서 응답 시간을 각각 확인하는 단계, 미리 설정된 응답 시간 구간 중 상기 응답 시간이 포함된 응답 시간 구간을 확인하는 단계, 확인한 상기 응답 시간 구간에 부여된 마스킹 비트를 설정하는 단계,
상기 응답 시간 구간에 대한 인덱스 정보, 상기 마스킹 비트를 포함하는 응답시간 분포 정보를 생성하여 저장하는 단계, 그리고 상기 응답시간 분포 정보를 토대로 좌표 상에 블럭 마스킹을 표시하여 응답시간 분포도를 생성하는 단계를 포함한다.
상기 웹 호출 내역은 사용자 단말로부터 웹 호출 신호가 발생된 발생 시간, 상기 발생 시간으로부터 상기 사용자 단말로 웹 호출 신호에 따른 웹 페이지를 제공하기까지 소요된 응답 시간, 상기 사용자 단말의 식별 정보를 포함할 수 있다.
상기 응답시간 분포 정보를 생성하는 단계는, 상기 좌표 상에 표시된 블럭 마스킹에는 동일한 시간에 동일한 응답 시간 구간을 나타내는 적어도 하나의 웹 호출 내역이 매핑될 수 있다.
상기 본 발명의 기술적 과제를 달성하기 위한 본 발명의 또 다른 특징인 사용자 단말과 APM(Application Performance Management) 서버와 연동하고, 상기 사용자 단말로 웹 서비스를 제공하는 시스템으로서,
복수의 상기 사용자 단말로부터 수신한 복수의 웹 호출 신호를 토대로 상기 사용자 단말에 제공할 URL 호출을 처리하고, 처리한 URL 호출에 의한 복수의 호출 내역 정보를 생성하는 웹 호출 처리 모듈, 상기 웹 호출 처리 모듈이 생성한 복수의 호출 내역 정보에 포함된 응답 시간과 웹 호출 신호가 발생한 시간 정보를 토대로, 복수의 호출 내역 정보를 미리 설정된 응답 시간 구간으로 분류하는 응답 시간 블록 처리 모듈, 그리고 상기 응답 시간 블록 처리 모듈이 분류한 응답 시간 구간에 포함된 복수의 호출 내역 정보를 하나의 블럭 마스킹에 삽입하는 응답 분포 처리 모듈을 포함한다.
상기 시스템은 상기 미리 설정된 응답 시간 구간에 대한 정보를 저장하고, 상기 복수의 호출 내역 정보가 하나의 블럭 마스킹에 삽입된 응답 분포 정보를 저장하는 메모리, 그리고 상기 메모리에 저장된 응답 분포 정보를 미리 설정된 시간 간격으로 상기 APM 서버에 전달하여, 응답 분포도가 생성되도록 하는 인터페이스를 포함할 수 있다.
상기 APM 서버는, 상기 웹 서비스 서버로부터 미리 설정된 시간 간격으로 복수의 응답 분포 정보를 수신하는 인터페이스, 상기 수신한 복수의 응답 분포 정보를 각각 블록 마스킹에 삽입하여 응답 분포도를 생성하는 응답 분포도 생성 모듈, 그리고 상기 생성한 응답 분포도를 저장하고, 상기 관리자 단말로부터 요청이 발생하면 저장한 응답 분포도를 제공하는 메모리를 포함하고, 상기 응답 분포 정보는 미리 설정된 응답 시간 구간에 대응하는 인덱스 정보와 상기 응답 시간 구간 각각에 부여된 마스킹 비트만을 포함할 수 있다.
본 발명에 따르면 블록 마스킹을 통해 대용량 감시에 따른 부하를 줄여, 감시 시스템의 장애를 해소할 수 있으며, 장시간에 걸친 웹 모니터링 서비스를 제공할 수 있다.
도 1은 본 발명의 실시예에 따른 웹 모니터링 시스템이 적용된 환경의 예시도이다.
도 2는 본 발명의 제1 실시예에 따른 웹 서비스 서버의 구조도이다.
도 3은 본 발명의 제1 실시예에 따른 성능 관리 서버의 구조도이다.
도 4는 본 발명의 제1 실시예에 따른 응답시간 분포 정보 생성 방법에 대한 흐름도이다.
도 5는 본 발명의 제2 실시예에 따른 성능 관리 서버의 구조도이다.
도 6은 본 발명의 제2 실시예에 따른 응답시간 분포 정보 생성 방법에 대한 흐름도이다.
도 7은 본 발명의 실시예에 따른 응답 분포도와 일반적인 응답 분포도를 비교한 예시도이다.
도 8은 본 발명의 실시예와 일반적인 웹 모니터링 시스템의 저장 용량을 비교한 예시도이다.
도 9는 본 발명의 실시예에 따른 모니터링 서비스 화면에 대한 예시도이다.
아래에서는 첨부한 도면을 참고로 하여 본 발명의 실시예에 대하여 본 발명이 속하는 기술 분야에서 통상의 지식을 가진 자가 용이하게 실시할 수 있도록 상세히 설명한다. 그러나 본 발명은 여러 가지 상이한 형태로 구현될 수 있으며 여기에서 설명하는 실시예에 한정되지 않는다. 그리고 도면에서 본 발명을 명확하게 설명하기 위해서 설명과 관계없는 부분은 생략하였으며, 명세서 전체를 통하여 유사한 부분에 대해서는 유사한 도면 부호를 붙였다.
명세서 전체에서, 어떤 부분이 어떤 구성요소를 "포함"한다고 할 때, 이는 특별히 반대되는 기재가 없는 한 다른 구성요소를 제외하는 것이 아니라 다른 구성요소를 더 포함할 수 있는 것을 의미한다.
이하 도면을 참조로 하여 본 발명의 실시예에 따른 웹 모니터링 시스템 및 이를 이용한 응답시간 분포 정보 생성 방법에 대해 상세히 설명한다.
도 1은 본 발명의 실시예에 따른 웹 모니터링 시스템이 적용된 환경의 예시도이다.
도 1에 도시된 바와 같이, 웹 모니터링 시스템은 사용자 단말(400) 및 관리자 단말(300)과 연동한다. 본 발명의 실시예에서는 설명의 편의를 위하여 웹 모니터링 시스템에 성능 관리 서버(100)와 웹 서비스 서버(200)를 포함하는 것을 예로 하여 설명하나, 성능 관리 서버(100)만을 지칭할 수도 있다.
사용자가 자신의 단말(400)을 통해 웹 서비스를 이용하기 위하여 시도하는 웹 호출이 전달되는 웹 서비스 서버(200)와, 성능 관리 서버(100)에서 확인한 모든 웹 호출에 대한 이력 정보를 확인할 수 있는 관리자 단말(300)과 연동한다.
웹 서비스 서버(200)는 복수의 사용자 단말(400)로부터 발생하는 모든 웹 호출 시간과, 호출된 웹 호출이 성공하여 웹 서비스가 성공적으로 제공되었는지 또는 웹 서비스의 제공이 실패하였는지 여부를 알리는 정보들을 수집한다. 본 발명의 실시예에서는 웹 서비스 서버(200)가 수집한 정보들을 호출 내역 정보라 지칭한다. 그리고 수집한 호출 내역 정보들은 성능 관리 서버(100)으로 제공된다.
그리고 웹 서비스 서버(200)는 본 발명의 실시예에 따라 호출 내역 정보를 가공하지 않고 성능 관리 서버(100)로 전달하여, 성능 관리 서버(100)가 응답 분포 정보와 응답 분포도를 생성하도록 한다. 또는 웹 서비스 서버(200)는 호출 내역 정보를 가공하여 응답 분포 정보를 생성하고, 생성한 응답 분포 정보를 성능 관리 서버(100)로 전달하여 성능 관리 서버(100)가 응답 분포도를 생성하도록 한다.
성능 관리 서버(100)는 웹 서비스 서버(200)로부터 수집한 응답 분포 정보 또는 호출 내역 정보를 수신하여, 응답 분포도를 생성한다. 이때, 웹 서비스 서버(200)로부터 전송된 정보가 호출 내역 정보라면 수집한 복수의 호출 내역을 미리 설정된 규칙에 따라 블록으로 처리하여, 동일한 조건을 가지는 복수의 호출 내역 정보를 하나의 블록에 매핑, 응답 분포 정보와 응답 분포도를 생성하여 관리자 단말(300)로 제공한다. 그리고, 웹 서비스 서버(200)로부터 전송된 정보가 응답 분포 정보라면, 응답 분포 정보를 토대로 응답 분포도를 생성하여 관리자 단말(300)로 제공한다.
이상에서 설명한 환경에서, 사용자 단말(400)과 관리자 단말(300)과 연동하는 성능 관리 서버(100)와 웹 서비스 서버(200)의 구조에 대해 이후 도면을 참조로 하여 설명한다. 본 발명의 실시예에서는 웹 서비스 서버(200)가 호출 내역 정보를 가공하여 응답 분포 정보를 생성하는 제1 실시예와, 성능 관리 서버(100)가 호출 내역 정보를 토대로 응답 분포도를 생성하는 제2 실시예로 구분지어 설명한다.
도 2는 본 발명의 제1 실시예에 따른 웹 서비스 서버의 구조도이고, 도 3은 본 발명의 제1 실시예에 따른 성능 관리 서버의 구조도이다.
먼저 도 2에 도시된 바와 같이, 웹 서비스 서버(200)는 인터페이스(210), 프로세서(220), 그리고 메모리(230)를 포함하며, 프로세서(220)는 웹 호출 처리 모듈(221), 블록 처리 모듈(222) 및 응답 분포 처리 모듈(223)을 포함한다.
인터페이스(210)는 복수의 사용자 단말(400)로부터 전송되는 복수의 웹 호출 신호를 수신한다. 그리고, 프로세서(220)에서 웹 호출 내역을 처리하여 웹 서비스를 제공하거나, 프로세서(220)가 생성한 응답 분포도를 성능 관리 서버(100)으로 제공한다. 여기서 웹 호출 신호에는 웹 호출을 시도한 발생 시간 정보, 서비스를 이용할 URL 정보, 그리고 사용자 단말(400)의 식별 정보를 포함한다.
웹 호출 처리 모듈(221)은 인터페이스(210)를 통해 수신한 웹 호출 신호를 처리하여 URL 정보를 확인한다. 그리고 확인한 URL 정보에 대응하는 웹 페이지를 인터페이스(210)를 통해 사용자 단말(400)로 제공한다. 웹 호출 처리 모듈(221)이 웹 호출 신호를 처리하여 웹 페이지를 제공하는 방법은 여러 방법을 통해 실행할 수 있으므로, 본 발명의 실시예에서는 어느 하나의 방법으로 한정하지 않는다.
웹 호출 처리 모듈(221)은 웹 페이지를 제공하거나 웹 호출에 대한 웹 페이지를 제공하지 못한 후, 웹 호출 신호 발생 시간, 응답 시간 또는 웹 페이지를 제공하지 못함을 나타내는 웹 페이지 제공 실패 식별 정보, 웹 페이지를 제공한 사용자 단말(400)의 식별 정보를 포함하는 호출 내역 정보를 생성한다.
블록 처리 모듈(222)은 웹 호출 처리 모듈(221)이 생성한 복수의 호출 내역 정보를 미리 설정된 기준에 따라 복수의 호출 내역 정보를 하나의 호출 내역 정보 군으로 설정한다. 여기서, 미리 설정된 기준은 사용자가 웹 호출을 시도한 시점에서부터 웹 서비스가 제공되기 까지 소요된 응답 시간을 임의의 구간으로 나눈 응답 시간 그룹에 따라 호출 내역 정보 군을 설정한다.
응답 분포 처리 모듈(223)은 블록 처리 모듈(222)이 설정한 하나의 호출 내역 정보 군을 좌표에 삽입하여 응답 분포 정보로 생성한다. 응답 분포 처리 모듈(223)이 생성한 응답 분포 정보는 인터페이스(210)를 통해 성능 관리 서버(100)으로 제공된다.
메모리(230)는 웹 서비스 서버(200)를 구동하기 위한 프로그램이 저장되어 있다. 또한, 메모리(230)는 프로세서(220)에서 생성된 호출 내역 정보 군과 응답 분포 정보를 저장, 관리한다.
한편 도 3에 도시된 바와 같이, 본 발명의 제1 실시예에 따른 성능 관리 서버(100)는 인터페이스(110), 응답 분포도 생성 모듈(120) 그리고 메모리(130)를 포함한다.
인터페이스(110)는 웹 서비스 서버(200)로부터 미리 정의된 시간 간격으로 전송되는 복수의 응답 분포 정보를 수신한다. 그리고, 응답 분포도 생성 모듈(120)에서 생성한 응답 분포도를 관리자 단말(300)로 제공한다.
응답 분포도 생성 모듈(120)은 인터페이스(110)가 수신한 복수의 응답 분포 정보를 대응하는 좌표에 삽입하여 응답 분포도로 생성한다. 응답 분포도 생성 모듈(120)이 생성한 응답 분포도는 인터페이스(110)를 통해 관리자 단말(300)로 제공된다.
메모리(130)는 성능 관리 서버(100)을 구동하기 위한 프로그램이 저장되어 있다. 또한, 메모리(130)는 응답 분포도 생성 모듈(120)에서 생성된 응답 분포도를 저장, 관리한다.
이상에서 설명한 웹 모니터링 시스템을 통해 응답시간 분포 정보를 생성하여 관리하는 방법에 대해 도 4를 참조로 설명한다.
도 4는 본 발명의 제1 실시예에 따른 응답시간 분포 정보 생성 방법에 대한 흐름도이다.
도 4에 도시된 바와 같이 웹 서비스 서버(200)는 사용자 단말(400)로부터 웹 호출 신호를 수신하면(S100), 수신한 웹 호출 신호를 토대로 URL 호출을 처리한다(S101). 그리고 URL 호출에 의한 호출 내역 정보를 생성한다. 여기서 호출 내역 정보에는 웹 호출 발생 시간, URL 호출에 따라 웹페이지를 처리 완료한 시점까지의 응답 시간, 만약 웹 페이지 제공이 안 되었을 경우에는 웹 호출 실패를 알리는 식별 정보를 포함한다.
웹 서비스 서버(200)는 S101 단계에서 생성한 호출 내역 정보를 토대로 호출 내역 정보에 포함된 응답 시간이 미리 설정된 복수의 응답 시간 구간 중 어느 구간에 포함되는지 확인한다(S102). 웹 서비스 서버(200)는 확인한 응답 시간이 대응하는 응답 시간 구간의 마스킹 비트가 0인지 1인지 확인하여 마스킹 비트를 변경해야 하는지 판단한다(S103).
즉, 웹 서비스 서버(200)는 복수의 응답 시간을 일정 간격으로 묶어 미리 응답 시간 블록을 설정해 두고 있고, S103 단계에서 확인한 응답 시간이 응답 시간 블록 중 어느 한 구간에 속하는지 확인한다. 그리고 확인한 응답 시간 블록에 마스킹 비트가 0으로 되어 있는지 1로 되어 있는지 확인한다.
확인한 응답 시간에 대한 응답 시간 구간을 확인하고, 해당 응답 시간 구간에 대한 마스킹 비트를 확인한다. 마스킹 비트가 0이라면 1로의 마스킹 비트 변경이 필요하기 때문에, 성능 관리 서버(100)은 마스킹 비트의 변경이 필요한지 판단한다(S105). 여기서 마스킹 비트에 대해 도 8을 참조로 먼저 설명한다.
도 8은 본 발명의 실시예와 일반적인 웹 모니터링 시스템의 저장 용량을 비교한 예시도이다.
도 8의 (a)는 일반적인 성능 관리 서버(100)에 저장된 호출 내역 정보의 예시도이고, 도 8의 (b)는 본 발명의 실시예에 따른 성능 관리 서버(100)에 저장된 호출 내역 정보의 예시도이다.
먼저 도 8의 (a)에 나타낸 바와 같이, 종래에는 모든 웹 호출 건에 대해 호출이 발생한 시간과 응답 시간을 각각 저장, 관리하였다. 그러나, 본 발명의 실시예에서는 도 8의 (b)에 나타낸 바와 같이 응답 시간을 응답 시간 블록으로 설정해 둔다. 본 발명의 실시예에서는 0∼99ms, 100∼199ms 등의 응답 시간 블록을 설정해 둔 것을 예로 하여 설명하나, 반드시 이와 같이 한정되는 것은 아니다.
그리고, 각 응답 시간 블록에는 일대 일로 인덱스가 부여되어 있다. 예를 들어, 0∼99ms에는 인덱스 0이 부여되어 있고, 100∼199ms에는 인덱스 1이 부여되어 있다.
그리고 호출 내역 정보에 포함된 응답 시간이 130ms라 가정한다면, 도 7의 (b)에 100∼199ms의 인덱스 1에 대한 마스킹 비트가 0인지 1인지 확인한다. 본 발명의 실시예에서는 인덱스 1에 대한 응답 시간 블록 구간의 마스킹 비트가 0으로 되어 있는 것을 알 수 있다. 이는 응답 시간을 확인한 호출 내역 정보가 전송되기 이전의 다른 호출 내역 정보에 포함된 응답 시간이 인덱스 1에 해당하는 응답 시간이 없었다는 것을 의미한다.
또한, 기존 방식에 따라 웹 호출 건을 저장할 경우 저장 용량이 'TPS(Transaction Per Second)*64bit*2' 만큼 필요하므로 대용량의 정보를 처리하는데 부하가 발생하게 된다. 그러나, 본 발명의 실시예에 따르면 저장 용량이 '64bit*2' 만큼만 필요하므로, 대용량의 웹 호출 데이터를 용이하게 저장하고 처리할 수 있다.
상기 도 4를 이어 설명하면, S103 단계에서 확인한 결과 만약 마스킹 비트의 변경이 필요하면, 웹 서비스 서버(200)는 마스킹 비트를 0에서 1로 변경한다(S104). 그러나, 이미 마스킹 비트가 1인 경우에는 이전에 동일한 응답 시간 구간을 보인 호출 내역 정보가 있었음을 의미하기 때문에, 마스킹 비트를 변경하지 않는다.
웹 서비스 서버(200)는 마스킹 비트를 변경하거나 변경이 필요하지 않음을 확인한 후, 응답 분포 정보를 생성한다(S105). 여기서 응답 분포 정보는 웹 호출 신호에 대한 응답 시간 구간, 응답 시간 구간에 부여된 인덱스 정보, 호출 내역 정보에 대응하는 블록에 호출 내역 정보를 매핑한 정보, 마스킹 비트 등을 포함한다.
웹 서비스 서버(200)는 미리 설정된 시간 동안 복수의 응답 분포 정보를 모아, 성능 관리 서버(100)로 전송한다(S106). 본 발명의 실시예에서는 웹 서비스 서버(200)가 1초 동안 응답 분포 정보를 모아 성능 관리 서버(100)로 전송하는 것을 예로 하여 설명하나, 반드시 이와 같이 한정되는 것은 아니다. 그리고, 1초 동안 응답 분포 정보를 모아 성능 관리 서버(100)로 전송한 후에는 응답 시간 구간에 대한 마스킹 비트를 0으로 리셋하여, 다른 웹 호출 신호에 따른 응답 시간 구간에 대한 마스킹 비트를 반영할 수 있도록 한다.
성능 관리 서버(100)는 S106 단계에서 전송된 복수의 응답 분포 정보를 수신하고, 인덱스에 대응하는 대응 블록에 응답 분포 정보를 매핑한다. 그리고 매핑한 대응 블록을 포함하는 응답 분포도를 생성한다(S107). 성능 관리 서버(100)이 응답 분포 정보를 이용하여 응답 분포도를 생성하는 방법은 다양한 방법으로 실행할 수 있으므로, 본 발명의 실시예에서는 어느 하나의 방법으로 한정하지 않는다.
여기서, S107 단계에서 생성한 응답 분포도의 예에 대해 도 7을 참조로 먼저 설명한다.
도 7은 본 발명의 실시예에 따른 응답 분포도와 일반적인 응답 분포도를 비교한 예시도이다.
도 7의 (a)는 5분 단위의 응답 분포도를 나타낸 것이고, 도 7의 (b)는 1일 단위의 응답 분포도를 나타낸 예시도이다. 그리고 (a-1)과 (b-1)은 일반적인 응답 분포도에 대한 예시도이고 (a-2)와 (b-2)는 본 발명의 실시예에 따른 응답 분포도의 예시도이다.
또한, 그래프의 X축은 발생 시간을, Y축은 응답 시간을 나타낸 것이다. 각각의 응답 분포도의 예를 통해서 알 수 있듯이, 종래에는 모든 웹 호출건에 대하여 웹 호출이 발생된 시간과 그에 응답 시간을 좌표에 나타내어 5분 동안의 응답 분포도의 일부 영역을 확대하더라도 수백 건의 웹 호출건들이 표시됨을 알 수 있다.
그러나, 본 발명의 실시예에 따르면 응답 시간 구간으로 묶여 웹 호출 건들이 표시되기 때문에 동일한 5분의 응답 분포도의 일부 영역을 확대하더라도 몇 개의 블록만을 확인할 수 있다. 이는 응답 분포도의 표현을 효율적으로 개선할 수 있으므로 어플리케이션 성능 관리 서비스를 용이하게 제공하고 빠른 웹 호출 감시를 제공할 수 있음을 의미한다.
한편, 본 발명의 또 다른 실시예에 따라 응답 분포도를 생성하는 성능 관리 서버(100)의 구조에 대해 도 5를 참조로 설명한다.
도 5는 본 발명의 제2 실시예에 따른 성능 관리 서버의 구조도이다.
도 5에 도시된 바와 같이, 성능 관리 서버(100')은 인터페이스(110'), 프로세서(120') 그리고 메모리(130')를 포함한다. 그리고 프로세서(120')는 블록 처리 모듈(121')과 응답 분포 처리 모듈(122')을 포함한다.
인터페이스(110')는 웹 서비스 서버(200)로부터 전송되는 복수의 호출 내역 정보를 수신한다. 그리고, 프로세서(120')에서 생성한 응답 분포도를 관리자 단말(300)로 제공한다.
블록 처리 모듈(121')은 인터페이스(110')를 통해 수신한 복수의 호출 내역 정보를 미리 설정된 기준에 따라 복수의 호출 내역 정보를 하나의 호출 내역 정보 군으로 설정한다. 여기서, 미리 설정된 기준은 사용자가 웹 호출을 시도한 시점에서부터 웹 서비스가 제공되기 까지 소요된 응답 시간을 임의의 구간으로 나누어 그룹화 한 기준에 따라 호출 내역 정보 군을 설정한다.
응답 분포 처리 모듈(122')은 블록 처리 모듈(121')이 설정한 하나의 호출 내역 정보 군을 좌표에 삽입하여 응답 분포도로 생성한다. 응답 분포 처리 모듈(122')이 생성한 응답 분포도는 인터페이스(110')를 통해 관리자 단말(300)로 제공된다.
메모리(130')는 성능 관리 서버(100')을 구동하기 위한 프로그램이 저장되어 있다. 또한, 메모리(130')는 프로세서(120')에서 생성된 호출 내역 정보 군과 응답 분포도를 저장, 관리한다.
이상에서 설명한 성능 관리 서버(100')를 통해 어플리케이션 성능을 관리하는 방법에 대해 도 6을 참조로 설명한다.
도 6은 본 발명의 제2 실시예에 따른 응답시간 분포 정보 생성 방법에 대한 흐름도이다.
도 6에 도시된 바와 같이, 웹 서비스 서버(200)는 사용자 단말(400)로부터 발생한 URL 주소가 포함되어 있는 웹 호출 신호를 수신하면, 수신한 웹 호출 신호를 토대로 URL 호출을 처리한다(S200). 그리고 URL 호출에 의한 호출 내역 정보를 생성한다(S201).
여기서 호출 내역 정보에는 웹 호출 발생 시간, URL 호출에 따라 웹페이지를 처리 완료한 시점까지의 응답 시간, 만약 웹 페이지 제공이 안 되었을 경우에는 웹 호출 실패를 알리는 식별 정보를 포함한다. 웹 서비스 서버(200)는 S201 단계에서 생성한 호출 내역 정보를 성능 관리 서버(100')로 전달한다(S202).
성능 관리 서버(100')는 웹 서비스 서버(200)로부터 전송되는 복수의 호출 내역 정보에서 응답 시간 정보를 확인한다. 그리고 미리 설정된 응답 시간 블록 구간에 확인한 응답 시간 정보가 해당하는지 확인하여 응답 시간 블록 구간을 확인한다(S203). 응답 시간 블록 구간을 확인하면, 확인한 응답 시간 블록 구간에 대응하는 마스킹 비트가 변경되어 있는지 판단한다(S204).
즉, 성능 관리 서버(100')는 복수의 응답 시간을 일정 간격으로 묶어 미리 응답 시간 블록을 설정해 두고 있고, S203 단계에서 확인한 응답 시간이 응답 시간 블록 중 어느 한 구간에 속하는지 확인한다. 그리고 확인한 응답 시간 블록에 마스킹 비트가 0으로 되어 있는지 1로 되어 있는지 확인한다. 마스킹 비트가 0인 것은 해당 응답 시간 블록에 속한 이전 호출 내역 정보가 없었음을 의미하고, 마스킹 비트가 1인 것은 해당 응답 시간 블록에 속한 이전 호출 내역 정보가 있었음을 의미한다.
따라서, 성능 관리 서버(100')는 확인한 응답 시간에 대한 응답 시간 구간을 확인하고, 해당 응답 시간 구간에 대한 마스킹 비트를 확인한다. 마스킹 비트가 0이라면 1로의 마스킹 비트 변경이 필요하기 때문에, 성능 관리 서버(100)은 마스킹 비트의 변경이 필요한지 판단한다.
만약 마스킹 비트의 변경이 필요하면, 성능 관리 서버(100')은 마스킹 비트를 0에서 1로 변경한다(S205). 그러나, 이미 마스킹 비트가 1인 경우에는 이전에 동일한 응답 시간 구간을 보인 호출 내역 정보가 있었음을 의미하기 때문에, 마스킹 비트를 변경하지 않는다.
성능 관리 서버(100')은 마스킹 비트를 변경하거나 변경하지 않더라도, 호출 내역 정보에 대응하는 블록에 호출 내역 정보를 매핑한 후, 응답 분포도로 생성한다(S206).
이상에서 설명한 어플리케이션 성능 관리 방법을 통해 생성된 응답 분포도를 모니터링 서비스 정보로 수신한 관리자 단말(300)의 화면 예에 대해 도 9를 참조로 설명한다.
도 9는 본 발명의 실시예에 따른 모니터링 서비스 화면에 대한 예시도이다.
도 9에 나타낸 바와 같이, 모니터링 서비스 화면을 통해 2017년 9월 8일 하루치 웹 호출에 대한 서비스 모니터링을 블록 마스킹을 통하여 관리자 단말(300)에 제공하였다.
종래에는 조회 버튼(500)을 클릭할 경우 전체 웹 호출 내역을 받아들여 차트로 제공해야 하기 때문에 수십초 이상이 소요되고, 성능 관리 서버(100)가 불안정해지는 문제가 발생하였다. 그러나, 본 발명의 실시예에 따르면 블록 마스킹을 통해 대용량의 웹 호출 내역 용량을 줄여 저장, 관리하므로, 차트에 처리되는 시간이 1∼2초 이내에 표시되고 성능 관리 서버(100)가 불안정해지는 문제를 해결할 수 있다.
이상에서 본 발명의 실시예에 대하여 상세하게 설명하였지만 본 발명의 권리범위는 이에 한정되는 것은 아니고 다음의 청구범위에서 정의하고 있는 본 발명의 기본 개념을 이용한 당업자의 여러 변형 및 개량 형태 또한 본 발명의 권리범위에 속하는 것이다.

Claims (8)

  1. 웹 모니터링 시스템이 웹 모니터링을 위한 응답시간 분포 정보를 생성하는 방법으로서,
    사용자 단말로의 웹 페이지 제공 여부에 따라 생성된 웹 호출 내역에서, 웹 호출이 시도된 시점에서부터 웹 서비스가 제공되기까지 소요된 응답 시간을 각각 확인하는 단계,
    미리 설정된 응답 시간 구간 중 상기 응답 시간이 포함된 응답 시간 구간을 확인하는 단계,
    확인한 상기 응답 시간 구간에 부여된 2진수의 마스킹 비트를 설정하는 단계,
    상기 응답 시간 구간에 대한 인덱스 정보, 상기 마스킹 비트를 포함하는 응답시간 분포 정보를 생성하여 저장하는 단계, 그리고
    상기 응답시간 분포 정보를 토대로 좌표 상에 블럭 마스킹을 표시하여 응답시간 분포도를 생성하는 단계
    를 포함하고,
    상기 응답 시간 구간 중 어느 하나의 응답 시간을 나타내는 호출 내역 정보가 있다면, 상기 마스킹 비트를 기준 비트에서 다른 비트로 변경하는 응답시간 분포 정보 생성 방법.
  2. 제1항에 있어서,
    상기 웹 호출 내역은 사용자 단말로부터 웹 호출 신호가 발생된 발생 시간, 상기 발생 시간으로부터 상기 사용자 단말로 웹 호출 신호에 따른 웹 페이지를 제공하기까지 소요된 응답 시간, 상기 사용자 단말의 식별 정보를 포함하는 응답시간 분포 정보 생성 방법.
  3. 제1항에 있어서,
    상기 응답시간 분포 정보는 복수의 응답 시간 구간 각각에 대응하는 인덱스 정보 및 상기 응답 시간 구간 각각에 부여된 마스킹 비트를 포함하는 응답시간 분포 정보 생성 방법.
  4. 제1항에 있어서,
    상기 응답시간 분포 정보를 생성하는 단계는,
    상기 좌표 상에 표시된 블럭 마스킹에는 동일한 시간에 동일한 응답 시간 구간을 나타내는 적어도 하나의 웹 호출 내역이 매핑되어 있는 응답시간 분포 정보 생성 방법.
  5. 사용자 단말과 APM(Application Performance Management) 서버와 연동하고, 상기 사용자 단말로 웹 서비스를 제공하는 시스템으로서,
    복수의 상기 사용자 단말로부터 수신한 복수의 웹 호출 신호를 토대로 상기 사용자 단말에 제공할 URL 호출을 처리하고, 처리한 URL 호출에 의한 복수의 호출 내역 정보를 생성하는 웹 호출 처리 모듈,
    상기 웹 호출 처리 모듈이 생성한 복수의 호출 내역 정보에 포함되어 있는 웹 호출 신호가 발생한 시점에서부터 웹 서비스가 제공되기까지 소요된 응답 시간과, 상기 웹 호출 신호가 발생한 시점에 대한 시간 정보를 토대로, 복수의 호출 내역 정보를 미리 설정된 응답 시간 구간으로 분류하는 응답 시간 블록 처리 모듈, 그리고
    상기 응답 시간 블록 처리 모듈이 분류한 응답 시간 구간에 포함된 복수의 호출 내역 정보를 하나의 블럭 마스킹에 삽입하는 응답 분포 처리 모듈
    을 포함하고,
    상기 하나의 마스킹에 삽입된 응답 분포 정보는 상기 응답 시간 구간에 대응하는 인덱스 정보, 그리고 상기 응답 시간 구간 각각에 부여된 2진수의 마스킹 비트를 포함하는 웹 모니터링 시스템.
  6. 제5항에 있어서,
    상기 미리 설정된 응답 시간 구간에 대한 정보를 저장하고, 상기 복수의 호출 내역 정보가 하나의 블럭 마스킹에 삽입된 응답 분포 정보를 저장하는 메모리, 그리고
    상기 메모리에 저장된 응답 분포 정보를 미리 설정된 시간 간격으로 상기 APM 서버에 전달하여, 응답 분포도가 생성되도록 하는 인터페이스
    를 포함하는 웹 모니터링 시스템.
  7. 제6항에 있어서,
    상기 응답 시간 구간 중 어느 하나의 응답 시간을 나타내는 호출 내역 정보가 있다면, 마스킹 비트를 기준 비트에서 다른 비트로 변경하여 알리는 웹 모니터링 시스템.
  8. 제5항에 있어서,
    상기 APM 서버는,
    상기 웹 서비스로부터 미리 설정된 시간 간격으로 복수의 응답 분포 정보를 수신하는 인터페이스,
    상기 수신한 복수의 응답 분포 정보를 각각 블록 마스킹에 삽입하여 응답 분포도를 생성하는 응답 분포도 생성 모듈, 그리고
    상기 생성한 응답 분포도를 저장하고, 관리자 단말로부터 요청이 발생하면 저장한 응답 분포도를 제공하는 메모리
    를 포함하고,
    상기 응답 분포 정보는 미리 설정된 응답 시간 구간에 대응하는 인덱스 정보와 상기 응답 시간 구간 각각에 부여된 마스킹 비트만을 포함하는 웹 모니터링 시스템.
KR1020170151240A 2017-11-14 2017-11-14 웹 모니터링 시스템 및 이를 이용한 응답시간 분포 정보 생성 방법 KR102066178B1 (ko)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020170151240A KR102066178B1 (ko) 2017-11-14 2017-11-14 웹 모니터링 시스템 및 이를 이용한 응답시간 분포 정보 생성 방법

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020170151240A KR102066178B1 (ko) 2017-11-14 2017-11-14 웹 모니터링 시스템 및 이를 이용한 응답시간 분포 정보 생성 방법

Publications (2)

Publication Number Publication Date
KR20190054554A KR20190054554A (ko) 2019-05-22
KR102066178B1 true KR102066178B1 (ko) 2020-02-17

Family

ID=66679794

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020170151240A KR102066178B1 (ko) 2017-11-14 2017-11-14 웹 모니터링 시스템 및 이를 이용한 응답시간 분포 정보 생성 방법

Country Status (1)

Country Link
KR (1) KR102066178B1 (ko)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN114328139A (zh) * 2021-12-17 2022-04-12 江苏银承网络科技股份有限公司 大厅接口的监控方法、装置、存储介质及服务器

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2017076161A (ja) * 2015-10-13 2017-04-20 日本電信電話株式会社 分析方法、分析装置、および分析プログラム
KR101788250B1 (ko) 2016-03-16 2017-10-20 주식회사 에이치비 데이터 시각화 장치 및 그 방법

Family Cites Families (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20010090246A (ko) * 2000-03-24 2001-10-18 홍미선 관심 화면 감시/실조회 시간 측정/인센티브 산정 방법 및그 시스템
KR101367120B1 (ko) * 2012-03-09 2014-02-27 네이버비즈니스플랫폼 주식회사 웹브라우저와 프록시를 이용하여 웹페이지 로딩 시간을 측정하는 시스템 및 방법

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2017076161A (ja) * 2015-10-13 2017-04-20 日本電信電話株式会社 分析方法、分析装置、および分析プログラム
KR101788250B1 (ko) 2016-03-16 2017-10-20 주식회사 에이치비 데이터 시각화 장치 및 그 방법

Also Published As

Publication number Publication date
KR20190054554A (ko) 2019-05-22

Similar Documents

Publication Publication Date Title
US11586673B2 (en) Data writing and reading method and apparatus, and cloud storage system
EP3221795B1 (en) Service addressing in distributed environment
CN111555963B (zh) 消息推送方法、装置、电子设备及存储介质
CN106981024B (zh) 一种交易限额计算处理系统及其处理方法
CN103338243A (zh) Web节点的缓存数据更新方法和系统
CN105512283A (zh) 数据质量管理控制方法及装置
CN111399756A (zh) 一种数据存储方法、数据下载方法及装置
CN104579765A (zh) 一种集群系统的容灾方法和装置
CN112230847B (zh) 一种监控K8s存储卷的方法、系统、终端及存储介质
US10715628B2 (en) Attribute operating method and device
CN111026761B (zh) 一种金融数据的存储系统、处理方法和装置
CN115080272A (zh) 一种业务数据处理方法、电子设备及存储介质
KR102066178B1 (ko) 웹 모니터링 시스템 및 이를 이용한 응답시간 분포 정보 생성 방법
US8136012B2 (en) Method and system for updating topology changes of a computer network
CN111026606A (zh) 基于hystrix熔断器监控的报警方法、装置及计算机设备
US8295199B2 (en) Methods and systems for maintaining diversity for telecommunication services
CN111614701B (zh) 一种分布式集群、以及容器状态切换方法、装置
CN108768766B (zh) 对数据链路的状态信息进行显示的方法、装置及存储介质
CN112685157B (zh) 任务处理方法、装置、计算机设备及存储介质
CN112688818B (zh) 数据发送方法、装置、电子设备及可读存储介质
JP5380999B2 (ja) 複数の機能エンティティの状態依存性データ保守システム
CN114428704A (zh) 全链路分布式监控的方法、装置、计算机设备和存储介质
CN112667447B (zh) 一种数据修复方法及装置
CN112732757B (zh) 一种降级数据的处理方法、系统、装置、设备及存储介质
CN103886075A (zh) 分布式网络感知信息存储和查询系统

Legal Events

Date Code Title Description
A201 Request for examination
E902 Notification of reason for refusal
AMND Amendment
E601 Decision to refuse application
AMND Amendment
X701 Decision to grant (after re-examination)
GRNT Written decision to grant