docker
-
Spring boot + MongoDB Multi-Document TransactionsDB 2022. 7. 22. 17:21
MongoDB 4.0 이전 버전에선 Single-Document Transactions만을 지원하였습니다. RDB는 데이터들을 정규화해서 서로 다른 테이블에 저장하는 반면 MongoDB는 정규화를 거치지 않고 하나의 Document에 몽땅 저장 하기 때문에 MongoDB의 지향점을 생각하면 Single-Document Transactions이면 충분했겠지만 세상은 우리의 뜻(?)대로만 살 수 없기에 4.0 버전부터 Multi-Document Transactions이 지원되게 되었습니다. 여담이지만 4.0 이전 버전에서 Multi-Document Transactions을 위해선 2-Phase-Commits과 같은 방법을 개발자가 직접 처리해야 했습니다. 그럼 버전별로 달라진 점을 간략 설명하자면 v4.0 ..
-
docker-compose으로 Postgresql Replication 구성DB 2022. 1. 17. 10:17
Replication 구성으로 얻을 수 있는 장점으론 당연히 장애로부터 자유(?)로워 질 수 있는 부분도 있지만 서비스적인 측면으로 봤을 때 마스터는 Write(저장, 수정, 삭제)로 활용 슬레이브는 Read(조회)로 활용 볼 수 있다. 이렇게 분리하면 장애 시 서비스에 끼치는 영향도를 낮춤 단일 서버 구성 시 장애가 발생 되면 저장, 삭제, 수정, 조회등 전체적인 서비스에 영향이 발생 되지만 분리 시에는 장애 발생 서버를 제외한 서비스는 가능하다. 퍼포먼스 향상 Read와 Write 작업을 분리함으로서 서로 간에 작업 영향도를 최대한 격리하여 퍼포먼스를 향상 시킬 수 있다. Postgresql(이하 pg)의 Replication은 WAL(write-ahead logging)을 활용하며 pg에선 WAL로..