글쓴이의 개인적인 정리임을 밝힙니다.
page fault 자주 발생 - 물리메모리(=피지컬메모리)가 부족
swap
- 메모리 공간이 부족해지면 하드디스크로 데이터를 저장시키는 역할을 함
swap | Page In = 하드디스크 저장
Page out = 하드디스크 배출
스왑을 사용한 흔적이 있다 = 물리 메모리가 부족했다고 생각할 수 있지만(의심) 무조건은 아님
Elapsed Time = 평균 응답시간
Elapsed Time 90% = 너무 큰거 뺴고, 너무 적은거 뺴고 평균 응답시간
자바에서 지역변수안에서 쓴 변수들이 중괄호를 벗어나면 가비지가 되고, 가비지 콜렉터가 회수함
GC Time 보는 이유
- 자바에서 GC 쓰레드가 우선순위로, 이것이 도는 순간 다른 것들은 blocking됨. 일을 안하면 동작을 안한다는 뜻임
- 최대 1초가 넘어가면 사용자 응답시간에 영향 미친다고 판단. 1초 미만의 GC Time을 갖게 튜닝
- JVM 발전하는데 GC Collection이 발전함
Heap Used 그래프 볼 때, 뭘 보냐
- 단순하게 하루 이틀 보는게 아니고, 아주 길게 1주일 지표를 보고, 쓰고 떨어지고 쓰고 떨어지고 패턴을 보임. 메모리 저점의 패턴을 봄.
- 저점을 증가하는 패턴을 보이면, 언젠가 메모리가 떨어질 거임.
- 이런 패턴을 보이면(찾을 때 heap dump 봐야됌)
-
Metaspace(JAVA8) = Permanent Generation(JAVA7까지) = 교제 Perm%
- WAS 실행하고, 하루 이틀 운영하고 지켜보고, 그래프가 증가하다가 더 이상은 일자로 머물면 정상
- 서서히 위로 계속 올라가면, Permanent를 지켜봐야됌
PermGen(Permanent Generation)
- 클래스와 메서드 메타데이타, static 내용들이 저장되는 힙에서 분리된 별도의 힙 공간
- 바이트 코드, 이름, JIT 정보 저장
- 기본 최대 메모리 32bit에서 64MB, 64bit에서 82MB임
메타 데이터
- ‘속성 정보’라고도 불리며, ‘데이터에 관한 구조화된 데이터’, ‘다른 데이터를 설명해주는 데이터’라고도 함
- 대량의 정보 가운데에서 찾고 있는 정보를 효율적으로 찾아내서 이용하기 위해 일정한 규칙에 따라 콘텐츠에 대하여 부여하는 데이터(ex. 인스타 #해시태그 와 유사한 역할)
- 콘텐츠의 위치와 내용, 작성자에 관한 정보, 권리 조건, 이용 조건 . 내력등이 기록
- 목적 1. 데이터를 표현하기 위함
2. 데이터를 빨리 찾기 위한 목적 (정보의 인덱스 역할)
- 데이터 표현 목적위해 사용하는 메타 데이터의 좋은 예: HTML
- head, body, table, table안에 tr 등등 다 메타데이터
Recent User
- 일반적으로 Web System은 동시 사용자 수를 정확하게 측정 X
JMeter(핵심)
- 부하량을 얼마만큼 줄건지
- 사용자를 얼마나 줄건지(어려움)
TPS(젤 중요, Transaction Per Second, 초당 트랜젝션 수)
- TPS는 응답시간 분의 요청건수(가상유저수), 응답시간이 길어지면 TPS가 분모가 커져 떨어짐
- TPS가 높을수록 더 많은 사용자가 처리가능
Client서버가 data베이스에 직접 connection(과거)
- 문제는 client수가 많아지면 디비도 많아짐 그래서 부담스러워지고, connection 및 session을 맺는게 되게 많은 자원을 순간적으로 사용하게 됨
- 그래서 웹시스템으로 오면서 middle웨어(Application = was)를 사용하게 됨
- was에서 미리 디비 컨넥션들을 맺어줌.
- 쓰고 반납함
- 컨넥션 풀 10개 잡으면 10개 사용하고, 10개 넘어가면 응답시간이 지연됨
Respond time
= CPU time(cpu가 돌아가면서 걸린 시간) + Wait time(일 안하고 기다리는 시간)
+ network time
- Resp time 줄일려면, cpu time줄이기 (ex. 개발자들이 코드 효율적으로 짜기(힘듬))
- Wait time 줄여주기
Xlog의 x축은 요청하고 완료된 시간, y축은 걸린시간
Rdb = rock 덩어리 = 데이터의 정확성(깨지면 안됨.)
'IT 제품 용어 정리 > Scouter' 카테고리의 다른 글
[Scouter] Network connection failed 에러 상황 시 (0) | 2023.03.17 |
---|---|
[IT용어] 스냅샷(Snapshot)이란? (0) | 2023.03.14 |
[Scouter] agent.batch (0) | 2023.03.10 |