Weakest

[algorithm] 이진탐색

이진 트리는 자식 노드가 최대 2개인 트리를 말한다. 또한 이진 트리는 데이터 크기를 따져 크기가 작으면 왼쪽 자식에 위치시키고, 크거나 같으면 오른쪽 자식 위치에 배치하는 독특한 정렬 방식을 갖는다. 이러한 구성으로 찾고자하는 값이 현재 노드의 값보다 작으면 왼쪽, 크면 오른쪽으로 이동하여 찾고자하는 값을 검색한다. 이진 탐색의 시간 복잡도...

Transactional Outbox Pattern by Kafka

살펴보기 메시지 브로커를 활용한 마이크로서비스 아키텍처에서는, 하나의 비즈니스 트랜잭션이 여러 서비스에 걸쳐 분산되어 처리되는 경우가 많습니다. 이때 각 서비스는 자신의 로컬 데이터베이스에 데이터를 저장하는 동시에, 다른 서비스로의 이벤트 전파를 위해 메시지를 발행해야 합니다. 하지만 이러한 구조에서 자주 발생하는 문제는 다음과 같습니다 D...