본문 바로가기
Back-end

[server] 대규모 트래픽 처리

by sgyeong 2025. 9. 17.

부하 테스트

어떻게 결과를 해석하고, 어떤 방식으로 전체 시스템의 성능을 개선할 수 있는 테스트

부하테스트 수치들을 해석할 수 있어야 한다. 그 수치들을 통해서 내가 구성한 전체 시스템이 어느 정도 트래픽을 견딜 수 있는지 스스로 판단할 수 있어야 한다.

또한 더 많은 트래픽을 늘리기 위해 어떻게 시스템을 고도화 시키는지 방법을 생각해낼 수 있어야 한다.

 

 

부하 테스트 툴

다양한 형태로 대용량 트래픽을 만들어낼 수 있는 도구

  • 부하 테스트 툴(k6)

메모리를 적게 사용하면서 비교적 많은 요청 수를 보낼 수 있는 부하 테스트 툴

실제 부하테스트를 하면서 결과 데이터를 정확하게 해석할 수 있는 지와, 결과 데이터를 바탕으로 적절한 방식으로 성능 개선을 할 수 있는 지의 역량이 필요하다.

처리량 (Throughput)

서비스가 1초당 처리할 수 있는 트래픽 양

단위는 TPS (Transaction Per Seconds, 1초당 처리한 트랜잭션의 수)를 많이 활용한다. 만약 내가 만든 서비스가 1초에 최대 100개의 API 요청을 처리할 수 있다면 이 서비스의 Throughput은 100TPS라고 한다.

지연 시간 (Latency)

요청에 대한 응답 시간

만약 서비스에 부하 테스트를 했을 때 평균 응답 시간이 2.5초일 경우 평균 Latency가 2.5초라고 한다.

예시)

고속 도로와 비유

자동차 = 트래픽 (요청, 부하)

고속도로 = 네트워크

출발지부터 목적지까지 걸리는 시간 = Latency

단위 시간당 목적지에 도착하는 자동차의 대수 = Throughput

 

 

 

 

 

 

참고

 

https://www.youtube.com/watch?v=u87hrzXM7Nk&list=PLtUgHNmvcs6qAqWz-UhH-_ploSbK2eHwG&index=4