현재 동작하는 서버의 성능을 알아보고, 늘려보자!

서버 성능 기본 지표: 응답 시간과 처리량

클라이언트 (브라우저) <-> 서버 <-> DB

클라이언트, 서버, DB로 이루어진 기본 서버의 모습이다.

가장 주요한 기본 지표는 응답 시간과 처리량이다.

처리량 (Transaction Per Second)

  • 처리량은 초당 몇 개의 요청을 처리할 수 있는 지에 관한 지표이다. 약어로 TPS라고도 부른다.

응답 시간 (Response Time)

  • 응답 시간은 클라이언트가 어떤 동작을 수행했을 때 서버와 DB를 거쳐 동작이 수행 될 때까지의 총 응답 시간을 말한다.
  • 응답 시간은 대기 시간 (Latency Time)과 처리 시간 (Processing Time)으로 나눌 수 있다.
    • 대기 시간은 클라이언트의 요청이 서버에 도달할 때까지의 시간이다.
    • 처리 시간은 서버가 DB를 읽고 쓰는 처리에 필요한 총 시간을 말한다.

처리량 (TPS)를 높이려면

더 좋은 스펙의 컴퓨팅 서버 쓰기 (Scale Up)

  • CPU와 Memory 성능을 높인다. 더 빠르게 처리 가능하고 더 많은 양의 데이터를 메모리에 올려 빠르게 처리 가능하다.
  • DB의 경우 처리량 높은 DB 머신 쓰기

서버 늘리기 (Scale Out)

  • 서버 1대가 10 TPS라면 2대면 20 TPS
  • DB의 경우 쓰레드 풀 만들기 (쓰레드 풀 5 -> TPS 5, 쓰레드 풀 10 -> TPS 10)

Reference

  • 최범균님 서버 성능 올리기 영상 :Link

'개발 관심사' 카테고리의 다른 글

소프트웨어 신뢰성 선언문  (0) 2024.03.04
MSA 관련 자료집  (0) 2022.04.13
Gradle과 Maven  (0) 2022.02.16
Apache Log4j 원격코드 실행 취약점 (cve-2021-44228)  (0) 2021.12.14

+ Recent posts