네이버클라우드

네이버클라우드

개발팀 리뷰

위 내용은 네이버클라우드 전 • 현 재직자의 응답 결과입니다.

기술 스택

기술 스택 정보가 없어요.

재직자가 작성한 글

profile picture

이양일

NaverCloud 백엔드 개발자

✍️ Apache Kafka의 새로운 협의 프로토콜인 KRaft 에 대해

초기 Apache Kafka 는 Apache ZooKeeper를 사용하여 클러스터 메타데이터의 관리와 코디네이터 기능을 활용했는데요, Kafka 가 점점 발전하고 다양한 기능을 제공하면서 이러한 주키퍼의 의존성은 카프카의 확장성과 유지보수에 여러 제약을 가져왔습니다. 이를 해결하기 위해 새롭게 도입된 메커니즘이 바로 KRaft(Kafka Raft)인데요, Apache Kafka 관련 책을 2권이나 집필하시고, Facebook 카프카 한국 사용자 모임(facebook.com/groups/kafka.kru)을 운영중이신 고승범님께서 KRaft 와 관련된 내용을 정리해주셔서 공유드립니다. 총 2편의 글을 정리해주셨는데요, KRaft 의 등장과 배경, 목적, Zookeeper 모드와의 차이, KRaft 모드의 구성과 마이그레이션에 대해 자세히 정리되어있으니 관심있으신 분들께서는 한번 보시면 좋겠습니다. 좋은 내용들이 많았지만 인상깊었던 부분은 추가로 정리해주신 KRaft 단어에 대한 발음 정리였는데요, 기술 단어에 대한 발음의 통일은 효과적인 커뮤니케이션을 용이하게 하고 기술적 대화의 명확성에 기여하기 때문에 이를 위해 직접 컨플루언트 코리아(Confluent Korea)의 임직원분들에게 확인하셨다고 합니다. 그 결과 '크래프트' 또는 '케이래프트' 라고 발음하는 경우가 많다고 하는데 '크래프트' 라고 발음하는게 맞다고 합니다. 📚 원문 * 1편: https://devocean.sk.com/experts/techBoardDetail.do?ID=165711&boardType=experts&page=&searchData=&subIndex=&idList=#none * 2편: https://devocean.sk.com/experts/techBoardDetail.do?page=&boardType=undefined&query=&ID=165737&searchData=&subIndex= 📚 함께 보면 좋은 글 * KRaft 를 사용하실 준비가 되었나요??: https://careerly.co.kr/comments/68823 * 🪄 분산 시스템에서 리더를 선택하는 알고리즘 4가지: https://careerly.co.kr/comments/64092

profile picture

이양일

NaverCloud 백엔드 개발자

🧩 멀티모듈 설계 이야기 with Spring, Gradle

최근에 진행하게된 신규 프로젝트를 멀티 모듈 프로젝트로 구현하였는데요, 이때 참고했던 글 중 큰 도움이 되었던 글이 있어 공유드립니다. 멀티 모듈 프로젝트는 기존의 단일 프로젝트를 프로젝트 안의 모듈로 종속시킴으로써 공통적인 기능이나 도메인을 하나의 모듈에서 담당할 수 있게 합니다. 멀티 모듈 프로젝트를 구성할 때 가장 큰 어려움이 모듈을 얼마나 어떤 기준으로 나눌것인가 인데요 이를 잘 정해놓지 않으면 공통(Common) 모듈의 저주 같은 문제점을 마주할 수 있습니다. 멀티 모듈 프로젝트는 앞서 설명드린대로 하나의 모듈에 공통(Common)된 기능을 담당할 수 있게 구성할 수 있습니다. 모듈을 분리하는 정책을 잘 정하지 못하면 기능 구현시 이 기능도 공통 기능일것 같고, 저 기능도 공통 기능일것 같아 모든 기능을 공통 모듈에 담아버리는 실수를 할 수 있습니다. 그러다보면 공통 모듈에 대한 의존성이 심해지고 스파게티 코드나 불필요한 의존성이 발생하게 되며 작은 수정만으로도 많은 사이드 이펙트를 경험할 수 있습니다. 공유드린 글에서는 이러한 멀티 모듈 프로젝트 설계의 문제점을 극복할 수 있는 방안을 자세히 설명하고 있으니 관심있으신 분들께서는 한번 보시면 좋겠습니다. 📚 원문 * https://techblog.woowahan.com/2637/

재직자가 좋아한 글