back-end study

성능 지표에 관하여 (ThroughPut, Latency)

코앤미 2023. 6. 21. 10:31

이번 글에선, 간단하게 성능 지표관련된 지표 2가지를 알아보겠다.

 

Throughput:

간당 처리량을 의미한다 흔히 TPS라고도 불리며, 초당 처리하는 단위 작업, 혹은 HTTP 요청들으로 해석할 수 도 있다.

TPS: 초당 완료되는 트랜잭션의 수. 많은 작업을 동시에 처리할 수 있는 동시성에 관한 성능을 나타낸다.

 

 

Latency

하나의 패킷이 출발지에서 도착지까지 걸리는 시간이다. 

사용자의 체감 시간과 관련되어있다.

 

 

각 지표가 실제 성능에 미치는 영향

 

ThroughPut

위와 같이, DB, WAS의 성능을 개선하더라도, 웹서버의 ThroughPut이 그대로라면, 여전히 500이라는 TPS에 제한이 걸리는

병목현상이 발생한다. 

따라서 맹목적인 성능 향상도 좋지만, 이와 같은 Critical Path를 찾고, 가장 적은 ThrougPut을 가지는 영역을 개선해서

병목현상을 줄이는 것이 가장 중요한 일이다.

 

 

Latency

 

latency를 개선하기 위해서 고려할 요소들은 굉장히 많다.

- 하드웨어의 처리 성능 개선

- 향상된 애플리케이션 로직

- 쿼리 인덱스 구성 등을 통한 query Optimization

- 캐싱

 

등 다양한 원인으로 작업의 Latency가 발생할 수 있다. 

 

ThroughPut과 달리, 각각의 Latency저하는 전체 서비스의 Latency 저하로 이어지기에, Latenct를 최대한 개선하는 것이 정답이다.