동시제어1 [Kafka & Zookeeper 일지] Subscriber 에서 생기는 하나의 테이블에 같은 객체 쓰기(write)에 대한 동시 접근 제어 만약 FOO라는 객체에 속성이 A부터 D까지 4가지가 있다. 빨간 박스인 A가 primaryKey 이다. 먼저 카프카 클러스터에는 2개의 브로커가 떠있고 Subscriber가 2개의 토픽을 구독하고 있는 상황이다. topic1 에서 읽은 메세지인 Foo의 pk 인 A와 topic2 에서 읽은 메세지인 Foo의 pk인 A 가 다르다면 문제 되지 않는다. 하지만 pk가 같은 객체에 똑같이 쓰기를 한다면 다음과 같이 생각할 것이다. 1. topic1에서 읽어 드린 메세지에서 똑같은 pk를 가진 객체가 DB에 있는지 검사후 없다면 DB에 생성한다. 1-1. 똑같은 pk를 가진 객체가 DB에 있다면 B,C 속성을 업데이트한다. 2. topic2에서 읽어 드린 메세지에서 똑같은 pk를 가진 객체가 DB에 있는지 검.. 2021. 3. 16. 이전 1 다음