소프트웨어
6편
아키텍처 · 소프트웨어 · 캐싱
[아키텍처/소프트웨어] 캐싱
2025. 7. 29.
캐싱(caching)이란 데이터 원본을 별도의 저장소에 복제하여 빠르게 제공하는 것이다. 캐싱은 데이터의 응답 지연 시간을 단축시키고 데이터를 제공하는 서버와 데이터를 제공받는 클라이언트 모두의 성능을 향상시킬 수 있는 중요한 방법이다. 원본 데이터를 복제하여 저장하는 저장소를 캐시 저장소(cache store)라고 한다
소프트웨어 · 테스트
[소프트웨어] 성능 테스트
2024. 4. 2.
성능 테스트 성능 테스트(performance test)란 시스템(또는 소프트웨어)의 성능이 요구사항을 충족하는지 확인하기 위해 시스템의 속도, 안정성, 확장성 등 다양한 지표를 측정하고 평가하는 테스트이다. 성능 테스트의 목적은 시스템의 최대 성능 및 처리량을 파악하기 위한 것만은 아니며 다양한 시나리오에 따른 시스템의
소프트웨어 · 테스트
[소프트웨어] 카오스 엔지니어링과 리트머스 카오스
2024. 4. 2.
카오스 엔지니어링 카오스 엔지니어링(chaos engineering)이란 시스템에 의도적으로 장애나 오류, 예상치 못한 이벤트를 주입하여 시스템이 어떻게 동작하는지 확인함으로써 시스템의 안정성, 회복성, 탄력성을 강화하는 실험적인 접근 방법이다. 이를 통해 장애 상황에서 시스템이 어떻게 반응하고 복구하는지 관찰하여 취약점
소프트웨어 · 프로그래밍 · 테스트
[소프트웨어/프로그래밍] 테스트
2023. 9. 21.
프로그램이 의도된 대로 동작하는지 검증 및 확인하는 것을 테스트(test)라고 한다. 테스트는 프로그램이 요구사항에 맞게 동작하는지, 동작 도중 에러가 발생하지 않는지 등 프로그램의 정상적인 실행 흐름과 동작을 확인하는 과정을 포함한다. 테스트의 목적에는 여러가지가 있겠지만 가장 중요한 것은 프로그램의 예기치 않은 동작으
소프트웨어
[소프트웨어] 디자인 패턴 - 빌더 패턴
2023. 5. 12.
빌더 패턴 빌더 패턴(builder pattern)이란 클래스를 인스턴스화하여 다양한 복합 객체(complex object)를 만드는 과정을 단순화한 디자인 패턴이다. 빌더 패턴을 사용하면 복합 객체를 만드는 동일한 구성 프로세스가 서로 다른 표현을 만들 수 있도록 하여 복합 객체를 구성하는 로직과 표현을 선택하는 로직을
소프트웨어 · 의존성 · 종속성
[소프트웨어] 의존성, 종속성
2022. 12. 22.
의존성 또는 종속성이라는 용어가 많이 사용되고 있다. 의존성 주입, 의존성 역전 법칙이라는 용어가 널리 사용되는 것으로 보아 종속성 보다는 의존성이 더 많이 사용되는 듯하다. 어떤 것에 의존한다는 것, 어떤 것에 종속되었다는 표현은 두 대상이 얼마나 서로 연관되어 있냐는 관점에서 서로의 관계에 대해 논하는 것이다. 당연해