JSCODE Logo
프로그래밍 과외블로그후기멘토진
회사명 : JSCODE대표 : 박재성사업자 등록번호 : 244-22-01557통신판매업 : 제 2023-인천미추홀-0381 호
학원 명칭 : 제이에스코드(JSCODE)원격학원학원설립ㆍ운영 등록번호 : 제6063호

서울특별시 구로구 경인로 20가길 11(오류동, 아델리아)

Copyright ⓒ 2025 JSCODE - 최상위 현업 개발자들의 프로그래밍 교육 All rights reserved.

이용약관개인정보처리방침
← 블로그 목록으로 돌아가기

가용성(Availability), 시스템 이중화

JSCODE 박재성
JSCODE 박재성
2025-12-06
author
JSCODE 박재성
category
부하테스트
createdAt
Dec 6, 2025
series
대규모 트래픽 처리를 위한 부하테스트 입문/실전
slug
availability-and-redundancy
type
post
updatedAt
Dec 6, 2025 04:46 AM
🧑🏻‍🏫
대규모 트래픽을 처리하기 위해 시스템을 고도화해야 한다. 고도화 할 때 성능(Throughput, Latency)만 신경쓰면 안 된다. ‘가용성(Availability)’도 같이 신경쓰면서 시스템을 고도화해야 한다. 그럼 지금부터 가용성(Availability)이 뭔지 알아보자.

✅ 가용성(Availability)

가용성(Availability)이란 시스템이 서비스를 정상적으로 제공할 수 있는 가능성을 의미한다. 서비스에 장애가 발생할 가능성이 극히 작은 시스템을 가용성이 높은 시스템이라고 말할 수 있다. 반대로 서비스가 다운되는 시간이 긴 시스템을 가용성이 낮은 시스템이라고 한다.
가용성이 높고 낮음은 서비스의 정상 가동률(%)로 표시된다. 가용성 99.99%라는 경우 99.99% 시간을 정상적으로 이용 가능한 시스템을 말한다. 이를 바꿔 말하면 1년에 53분 정도는 서비스가 다운된다고 말할 수 있다.
 
[높은 가용성을 가진 시스템 설계 방법]
가용성을 높이기 위해서는 서비스 사용 불가능 시간을 최대한 발생시키지 않게 하고 설령 발생하더라도 그 시간을 짧게 만들어야 한다. 다운 타임을 줄이는 데 가장 중요한 설계 방법 중 하나가 시스템 이중화이다.
 
 

✅ 시스템 이중화

시스템 이중화라는 건 시스템의 일부분을 사용할 수 없게 되어도 다른 시스템을 이용하여 서비스를 계속 이용할 수 있게 만드는 걸 의미한다.
예를 들어, 도시를 연결하는 도로가 하나가 아닌 두 개가 있다면 둘 중 하나의 도로에서 사고가 발생하더라도 다른 도로를 이용하여 수송할 수 있다. 또한, 두 개의 도로가 존재함으로써 도로 공사 중에도 정상적으로 수송을 할 수 있다.
notion image
notion image
 
시스템에서 이중화는 아래와 같이 설계할 수 있다. 이와 같이 이중화 설계를 하면 다운 타임을 줄일 수 있게 된다. 즉, 서비스의 가용성을 높일 수 있게 된다.
notion image
 
author
category
부하테스트
createdAt
Dec 6, 2025
series
대규모 트래픽 처리를 위한 부하테스트 입문/실전
slug
type
series-footer
updatedAt
Dec 6, 2025 04:54 AM
📎
이 글은 대규모 트래픽 처리를 위한 부하테스트 입문/실전 강의의 수업 자료 중 일부입니다.