Java 웹 기반 시스템의 실시간 성능 모니터링을 위한 APM시스템에서 사용자화면과 APM서버 간 데이터 전송방식 개선
An improvement of Data Transmission Method from the APM server to user screen on the APM system which is real-time monitoring of Java web based system performance
- 주제(키워드) WebSocket , HTML5 , APM , 모니터링
- 발행기관 서강대학교 정보통신대학원
- 지도교수 장직현
- 발행년도 2013
- 학위수여년월 2013. 2
- 학위명 석사
- 학과 및 전공 정보통신대학원 소프트웨어공학
- 실제URI http://www.dcollection.net/handler/sogang/000000049586
- 본문언어 한국어
- 저작권 서강대학교 논문은 저작권 보호를 받습니다.
초록/요약
E-비즈니스화가 가속화되고 많은 부분의 IT 환경이 웹(Web)기반으로 전환 되면서 웹 기반 시스템(System)의 가용성 확보는 곧 비즈니스의 연속성 확보와 같은 의미가 되었다. 실시간으로 웹 시스템의 상태를 모니터링(Monitoring)하여 시스템 관리자가 사전에 위험을 감지하고 조치할 수 있도록 실시간으로 알려주는 APM(Application Performance Management)의 활용이 필수적이다. 웹 기반 시스템에서 APM을 이용해 수집한 모니터링 데이터(Data)를 실시간으로 사용자화면에게 전송하는 방법에는 3가지 전송방식이 있는데 Polling, Long Polling, TCP/IP 소켓(Socket) 방식을 이용한 기술이다. 본 논문에서는 HTML5 WebSocket(웹소켓) 기능을 이용하여 APM이 모니터링 한 데이터를 사용자화면으로 실시간 전송하는 기술 방식을 제안한다. 모니터링 된 데이터는 별도 데이터 저장소(DB)에 저장되고 사용자화면에 출력을 위한 데이터들은 WebSocket을 이용하여 PUSH 방식으로 사용자화면에 송신된다. 기존 전송방식 보다 서버 Memory나 JVM Heap Memory 사용률 측면에서는 안정적이다. 그러나 CPU 사용률은 기존 방식에 대비해 10% 많이 사용한다. 다수의 사용자와 대량의 트랜잭션이 발생하는 웹 기반 시스템에서 성능 모니터링을 위해서는 CPU의 사용률 보다 서버의 자원 측면에서 안정적인 APM 운영이 중요하기 때문에 실시간으로 시스템의 상태를 인지할 수 있고 데이터 전송처리로 인한 시스템 오버헤드(overhead)를 최소화한 데이터 송수신 방식으로는 더 효율적이고 효과적임을 주장할 수 있다.
more초록/요약
In recent year, e-business is accelerated and a large part of the IT environment move to Web-based IT infrastructure. Because of this, the availability of a web-based system means ensuring the continuity of business. Therefore, APM is essential to inform the system administrator on real time of collected monitoring data from Web-based system. There are three technical approaches for sending collected monitoring data to user screen from APM server. Such technical approaches are Pooling, Long Polling and TCP/IP based data transmission. This thesis proposes the use of HTML5 WebSocket based data transmission to send data to user screen from APM server. All monitoring data are stored in repository and some data are pushed to the user screen by using WebSocket protocol. It is more stable than traditional method such as Polling Long Polling and TCP in term of system and JVM Memory performance. However, CPU utilization 10% heavy use against traditional method. Keeping stable Memory usage is important than CPU utilization for monitor application performance in Web-based system which is used by a large number of users and occurred the bulk of transactions. Be able to recognize the real-time state of the system from the user's point of view, It could be efficient and effective method to minimize the system overhead for transmitting and receiving data between users screen and APM server.
more