인프런 커뮤니티 질문&답변

dohyun_lim님의 프로필 이미지
dohyun_lim

작성한 질문수

카프카 완벽 가이드 - 코어편

Producer의 acks 설정 관련 실습

Producer의 acks 설정 관련 실습 질문

작성

·

146

0

안녕하세요 선생님 질문이 있습니다.

acks = -1 이 All이라 하셨는데

예제에서 erorr를 따로 던지지 않는 이유가 min_insync_replicas 가 기본값이 0 이라서

그냥 성공하는것인가요?

답변 2

0

dohyun_lim님의 프로필 이미지
dohyun_lim
질문자

Producer의 acks 설정 관련 실습 강의에서

바로 이전 이론강의에서 acks 가 All 이면 client send 하는 경우에 min_insync_replica 값이 2면
2개의 replica에게 복제를 한 후에 client에게 ack 를 돌려주고

replica가 고장이라 복제를 2번 못하면 NOT_ENOUGH_REPLICAS 에러를 낸다고 하셔서

예제의 경우 acks = -1 이고 저희는 replica가 하나도 없으니 min_insync_replica가 0 이라 에러를 안내는것인가 하고 궁금했습니다.

 

권 철민님의 프로필 이미지
권 철민
지식공유자

min_insync_replica가 0 이라 에러를 안내는 것으로 보셔도 되지만, 그것보다는

acks=-1 이 반드시 여러개의 replica가 있지 않아도 적용이 되기 때문이니다. 한개의 broker/topic에서도 적용이 됩니다. 다만 이 경우에는 복제 topic이 없다고 보시면 됩니다.

 

감사합니다.

0

권 철민님의 프로필 이미지
권 철민
지식공유자

안녕하십니까,

질문을 잘 이해하지 못했습니다.

acks=-1 이면 어느 코드에서 error를 던져줘야 한다고 생각하시는 건지요?

어떤 설정으로 실습 코드를 작성하셨고, 어느 코드에서 error를 던져줘야 하는지 좀 더 자세하게 기술해 주시겠습니까?

감사합니다.

dohyun_lim님의 프로필 이미지
dohyun_lim

작성한 질문수

질문하기