Bank-End Chronicles

「Memory gets GC’d, but this blog stays committed.」

DB복제란?

<데이터 중심 애플리케이션 설계를 읽고>

복제란? 네트워크로 연결된 여러 장비에 동일한 데이터 복사본을 유지한다는 의미다. 복제에서 모든 어려움은 복제된 데이터의 변경 처리에 있으며, 이것을 single leader, multi leader, leaderless알고리즘으로 처리할 수 있다. 복제시 주요 고려 포인트 동기식 복제 vs 비동기식 복제 잘못된 복제본을 어떻게 처리할 ...

Heartbeat란?

고가용성 시스템을 설계해보자

Heartbeat Heartbeat란, 분산 시스템 환경 등에서, 서버나 서비스나 어떤 컴포넌트가 정상적으로 작동하고 있는지 주기적으로 체크하는 메세지 교환 방식이다. 지금 현재 실행 중인지, 네트워크에 접속 되어 있는지 node 들에 정기적으로 신호를 보내서 검증하는 방식이다. 일정 기간 안에 하트비트 체크 메세지가 응답이 안 올 경우에 시스템이 ...

HA Acitve-acitve, Active Passive

고가용성 시스템을 설계해보자

Active-Active vs. Active-Passive HA 고가용성(HA)을 구현하는 방식에는 크게 액티브-액티브(Active-Active)와 액티브-패시브(Active-Passive) 구조가 있다. 액티브-액티브 구성은 여러 노드가 동시에 서비스 트래픽을 처리하여 부하를 분산하고, 한 노드가 장애가 나도 다른 노드들이 계속 서비스를 제공...

Logging Deep Dive

Logger? Logback? Slf4j?

스프링에서 로깅이란 스프링은 원래 JCL Jakarta Commons Logging을 사용해서 로깅을 했다고 한다. JCL (commons-logging) JCL은 로깅 라이브러리가 아니라 로깅 추상화 라이브러리인데, 로깅 라이브러리의 선택권은 애플리케이션 개발자에게 있다. 라이브러리나 프레임워크는 주로 로깅 추상화 라이브러리를...

분산 데이터베이스의 역사

분산DB의 역사 톺아보기를 했다

분산 데이터베이스의 역사와 핵심 개념 소개: 요즘의 애플리케이션은 대용량 데이터를 처리하고 고가용성을 유지하기 위해 분산 데이터베이스 구조를 채택하는 경우가 많다. 오늘 분산 DB에 주요 내용은 데이터베이스 복제(replication)의 종류와 이슈, Oracle RAC와 같은 클러스터링 기법, 샤딩(sharding)을 통한 수평 확장, 프록시 시스...

Artifactory란?

Repository Manager?

Artifactory란? 패키지(라이브러리, 빌드 결과물 등)를 저장, 관리, 배포할 수 있는 저장소 관리 시스템(Repository Manager) Repository Manager (저장소 관리자)라는 개념을 JFrog에서 Artifactory라는 제품으로 내놓았는데, 저장소 관리의 대명사처럼 쓰임 사용 이유 ...

2025년 5월, 금결원 문서를 다시 읽으며

마침내 오픈을 하고 운영을 시작하며

금융결제원 연계 프로젝트를 14개월, 최종 오픈을 3월에 했다. 그리고 이제 운영모드에 들어섰다. 금결원은 백여개가 넘는 은행 사이에서 거래를 중계하며, 각종 자금 처리를 한다. 그러기 위해 각종 기관이 장애일 경우에에도, 사라지는 거래가 없고, 금융 거래가 한정된 시간 내에 문제 없이 수행되도록 업무를 설계해두어서 설계서를 읽으면서 장애에 대비한 ...

OS - 운영체제, 프로세스, 메모리

그림으로 쉽게 배우는 운영체제 강의를 보고 정리

운영체제란? 운영체제가 하는 일의 종류 프로세스를 관리하기 pc에 여러가지 프로그램을 한번에 켜 두면, 자연스럽게 지금 사용하지 않는 프로그램을 background에 둔다. 메모리 관리 하드웨어 관리 사용자가 하드웨어에 직접적으로 접근하는 것을 금지하고, 운영체제가 대...

Java - 8부터 17까지의 변화

자바는 어떤 세월을 쌓아왔나?

자바 8부터 17까지의 주요 변경사항에 대해 알아보자! ✅ Java 8 (2014년) 기점이 되는 LTS (Long Term Support) 버전. 지금도 많이 쓰임. 람다식 (Lambda Expression) 데이터베이스 질의 언어에서 표현식을 처리하는 것처럼 병렬 연산을 지원하는 스트림이라는 새로운 API를 ...

Kafka란?

MQ와 비교를 곁들인

카프카란? 카프카와 MQ는 메세지 브로커라는 점에서 같은 범주라고 볼 수 있다. producer -> broker -> consumer 라는 구조로 비동기 메세지 전달을 처리하는 시스템이다. 둘의 가장 큰 차이점은, MQ는 “메세지를 안전하게 한 곳으로 보내자”인 반면, Kafka는 “이벤트를 저장해서 여러 군데에서 활용하자”라는 서로 다...