사실 이 프로젝트는 이제는 퇴사한 회사의 대표님께서 제안하신 프로젝트로 나름의 알바(?)처럼 진행을 해 보려던 프로젝트입니다.

 

WPF를 5년여 전에 조금 사용해 보고 이제 다시 써 볼 겸 해서 진행을 해 보고 싶다고 하였고, 초기 구성이나 설계 및 정리한 요구사항 및 개발 방향에 대해 남겨둡니다.

 

Resource Monitor란?

 

PC, 서버등의 컴퓨터에서의 자원(CPU, Memory, Disk(Storage), Network, 등... 의 사용량 및 현황을 확인하는 것입니다.

 

윈도에서 기본으로 제공하는 것은 아래와 같습니다.

 

 

<사진 1> Windows10의 기본 Taskmanager

 

 

 

 

 

 

요구사항을 추상적으로 받은 것은 서버 트래픽 및 부하 체크를 할 수 있는 프로그램이 필요하다였습니다. 이미 호스팅 하여 서버를 대여하고 있으며 해당 호스팅 업체별로 리소스 모니터를 어느 정도는 웹페이지의 일부에 제공을 하지만, 그것으로는 실시간 확인이나 알람이 불가능(무료의 범위에서)하며, 유료로 사용하는 경우 월 5만 원여 (연간 60만 원) 비용이 발생하는 것을 부담스럽게 생각하셨습니다. 따라서 그러한 기능을 제공하며, 보다 저렴한 비용이 발생한다면 이 프로젝트는 성공이 아닐까 싶었습니다.

 

따라서 요구사항을 일단 보다 세부적으로만 나누면 아래와 같습니다.

 

1. 서버의 리소스 현황을 모니터링한다.

2. 서버별로 정보를 표시하며 모든 서버의 정보를 한 곳에서 관리한다

3. 특정 설정에 의해 사용량, 점유율등의 자원 모니터링 결괏값에 따라 알람 기능을 제공한다

 

간단하게는 이렇게 3가지의 기능이 필요했습니다.

 

먼저 1번을 작업하는 과정의 UI를 제외한 4가지 리소스 중 네트워크를 제외한 3가지를 현재 작업하였으며, 네트워크의 성능 측정 부분에서 다소 난항을 겪고 있습니다.

2번 기능을 구현하기 위해서는 일괄 프로그램에서 각각의 서버에 정보를 요청하는 방식으로 프로그래밍을 하거나, 아니면 클라이언트 서버 구조로 프로그램을 작성하고 각각의 서버(기기)에 클라이언트용 모니터링 프로그램을 설치 후 서버 프로그램(관리용 기기)에서 일괄적으로 확인할 수 있도록 하면 됩니다.

 

3번 기능은 서버에서 구현을 해도 되고 클라이언트 프로그램에서 구현을 해도 되는 항목이며, 모니터링 중인 각 항목들의 퍼포먼스 값이 특정 설정 값 이상인 경우 알림을 발생시키면 되겠습니다.

 

이번 리소스 모니터 프로젝트 요구사항 분석은 이것으로 마치겠습니다.

+ Recent posts