분류 전체보기 101

Tabellarius CDC, Cursus 생태계의 시작

메시지 브로커로 시작한 오픈소스 프로젝트 cursus는 작업해온 양이 방대해서 문서화하는데도 오래 걸리고 있다. 플랫폼화해서 생태계를 이루는 것을 다음 목표로 생각하고 있던 터라, cursus connector에 해당하는 CDC 사이드 프로젝트를 함께 시작했다. https://github.com/downfa11-org/tabellarius GitHub - downfa11-org/tabellarius: Change data capture sourceChange data capture source. Contribute to downfa11-org/tabellarius development by creating an account on GitHub.github.com 이번 글은 CDC 프로젝트의 시작과 함께 ..

tech 2025.12.30

오픈소스 입문자를 위한 Kubernetes 지역화: 누락된 문서 탐지 스크립트 구현

쿠버네티스 문서 생태계의 지역화(localization)한번쯤은 모두들 들어가봤을 공식 문서다. https://kubernetes.io/ko/ kubernetes-sigs/docs쿠버가 오픈소스인만큼 문서도 사용자들의 자유로운 참여로 추가, 수정되고 있다. 이 문서의 저장소인 kubernetes-sigs/docs는 kubernetes.io에 배포되는 모든 문서나 번역본을 모두 포함하고 있다. 지역화(localization)는 영문 문서를 진실의 원천(Source of Truth)로 두고 관리하는 SIG-DOCS팀의 산하 서브 프로젝트이다.이 공식 문서 생태계를 지역별로 번역·관리하는 활동으로, 영문 문서를 두고 다국어 번역, 동기화하는 downstream 작업이다. 쿠버네티스 지역화를 입문자에게 추천..

tech 2025.12.22

[논문 직역] In Search of an Understandable Consensus Algorithm

Diego Ongaro and John Ousterhout Stanford University Paxos나 불필요한 부분은 공부하면서 제외했음. 자체적으로 넘버링 및 생략한 문단이 있음.모든 사진은 내렸고, usenix의 원본 논문을 찾아가면 볼 수 있으니 직접 찾아가길 권장함. AbstractRaft는 복제된 로그를 관리하기 위한 consensus 알고리즘이다. 이 방법은 (multi-)Paxos와 같은 결과를 내며 효율적이지만, 그 구조는 Paxos와 다르다. 이로 인해서 Raft가 Paxos보다 이해하기 쉬워지고, 실용적인 시스템을 구축하는데 더 나은 기반을 제공한다.이해를 쉽게 하기 위해서 Raft는 Leader election, Log Replication, Safety같은 consensus 핵..

tech 2025.12.07

콘클라베를 통해 Raft 합의 알고리즘을 이해해보자 (feat. Kubernetes etcd)

근황 잠깐 말하자면 오픈소스를 직접 만들고 있다. 추후 목표중 하나로 '분산 클러스터링'을 염두하여 설계해왔다. https://github.com/downfa11-org/go-broker/issues/16 Add Distributed Coordination for Broker Cluster · Issue #16 · downfa11-org/go-brokerSummary The current broker is designed for single-node deployment, but the architecture already targets future scale-out. This proposal introduces etcd to enable a distributed, highly available bro...

tech 2025.12.06

Hack-Playground: 부산대-부경대 해킹캠프 회고

11월 8일자로 진행된 부산대-부경대 연합 해킹캠프에서 'Hack-Playground' 서비스 내의 CTF 대회를 시범적으로 도입했다. 서비스 자체는 KOREN망 안에서 호화롭게 실험하고 성능 걱정없이 트래픽 때려박던 공모전 기간이 끝나면서, 초라한 운영 서버로 겨우 무료로 연명하고 있었다. 1. 학술 행사에서의 서비스 실사용부산대와 부경대 정보보안 동아리끼리 문제를 제작했고, 해운대에 위치한 동남정보보호클러스터의 훈련장을 지원받아서 오프라인으로 행사를 진행했다. 12시부터 오프라인으로 대회장에 모여서 회원가입 및 소속을 등록하는 참가 수속을 진행하고, 13시부터 CTF 대회를 진행했다. 최대 5명까지 팀을 생성 혹은 참가해서 경쟁하는 구조인데, 무려 8시간 넘게 진행되기에 색다른 트래픽 경험이 될거라..

backend 2025.11.10

ArgoCD OSS - 오픈소스 멤버로 날 받아다오 (진행중)

그동안 ArgoProj 전반에 걸쳐서 기여해온 내용을 바탕으로 Member 신청을 진행했다. ArgoProj 자체는 CNCF graduated해서 오픈소스 성숙도를 인정받은 Argo-CD로 가장 유명하다. 나는 내부적으로 Argo-CD 이외에도 Argo-Workflows, Argo-Rollouts, Argo-Helm 등에 자잘한 기여를 이어왔다.반년 조금 안되게 진행해온거 같은데, 멤버 승인 과정이 까다롭고 절차가 복잡했다. 커뮤니티에서 정의하는 'ArgoProj Member'는 적극적인 기여자로써 Github 조직의 구성원을 말한다. 2명의 approver 또는 leads로부터 스폰받은 기여자가 신청할 수 있다. 예???? 오픈(Open) 소스인데 회원제라뇨??? 아무튼 가장 최근 멤버 모집이 올해 ..

tech 2025.11.09

Proactor 기반 게임서버에서 Kafka를 IO Completion Port와 통합하기

Reactor 환경에서는 Spring WebFlux와 Reactor-Kafka를 활용해 Kafka 메시지를 Flux 스트림으로 자연스럽게 처리하는 것이 익숙하다. 하지만 Proactor 환경에서는 Kafka를 어떻게 처리할까? 이번 글에서는 C++ 게임 서버에서 Kafka Consumer를 IOCP 이벤트 루프에 통합했던 경험을 공유한다. 1. OS가 어디까지 처리하는지에 따라서 구분한다.데이터가 소켓 버퍼에 수신되면 OS가 수신 이벤트를 전달(reactor)하거나, 나아가서 OS가 직접 IO 작업까지 하고 완료 결과를 통보(proactor)하여서 비동기적으로 IO 멀티플렉싱을 진행한다. 쉽게 설명해서 IO 멀티플렉싱은 읽을 데이터가 왔을때 작업하는 Reactor와 실제 작업이 완료되면 통보받는 Pro..

kafka 2025.09.11

25년 9월 토스뱅크 탈락 후기 (서버 개발 직군)

쩝 보기좋게 떨어졌다. 너무 가고 싶은 기업이었고, 우연히 기회가 닿아 생각했던 것보다 일찍 만났지만 준비가 부족했었다.쉽게 오지 않는 기회를 잡지 못했다. 원래 이런거에 일희일비하지 않고 취준 글같은거 안올리는데, 기록으로 남겨서 곱씹어 성장하고자 한다. 서류서류 합격까지의 기간이 보름? 좀 오래 걸려서 소문만큼 채용 프로세스가 빠르진 않았다.난 진짜 서탈한줄 알았다............................... 채용팀의 연락도 여러 명한테 와서 문의를 어떤 분에게 해야할지 모르겠다. (면접 결과 피드백을 받을려는데 아직도 누구한테 보내야할지 모르겠다) 특히나 채용팀과의 커뮤니케이션 과정에서 이름을 틀리는 일이 잦아서 유쾌한 경험은 아니였다.민석이랑 헷갈린 적도 있고, 오타인지 AI 돌린건..

카테고리 없음 2025.09.11

ArgoCD OSS - 다음 페이즈로 넘어가는 회고 (feat. 그동안 작업한 내용)

재밌어서 하고 있지만 만만치 않다. 슬슬 걸음마를 뗐다고 생각하고, CNCF Slack에 가입하면서 회고를 작성한다. 다음 페이즈로 넘어가는 레벨업 단계라고 받아들이는 좋은 터닝 포인트가 되었다.이제 슬랙에서 PR 봐달라고 올리고 거기서 토론하는 수준까지 나아가겠다. 2Phase에서는 Slack에서 메인테너들과 직접 소통하는 수준까지 가는 것을 생각하고 있다.최종적으로는 올해 안에 ArgoProj 멤버가 되는 것을 마지막 페이즈로 목표하고 있다. 지금까지는 PR이나 이슈를 통해서만 대화하고 주제에 대해서 이야기를 나눴었다. 일단 다른 사람들에 비해서 코멘트 수가 많아지니 이목이 집중돼서 부담스럽다.그리고 코멘트만으로는 사실 무슨 의도인지 이해하기 어려운 경우가 많아서 채팅 형식의 포럼이 필요했다. ..

tech 2025.08.29

ArgoCD OSS - 전 아직 Git이 어려워요 (feat. Git rebase 오류)

요즘 딴거 안하고 Go 배우면서 오픈소스만 쳐다보고 있다.잘못해서 맨날 인도형님이 도와준다. 나도 언젠가 뉴비들 괴롭힐거다 니티시 형님 오늘도 PR 올렸습니다. 하 걍번호딸까? 몰두하고 있는 오픈소스는 CNCF를 졸업한 argo 프로젝트이다.자동화에 관심이 많아서 선언형으로 관리하는 GitOps 도구에 매력을 느꼈고, 그전에도 argo-cd나 argo-rollout은 써봤다. 재밌어서 꾸준히 시간내서 보고 있긴 한데, 숟가락으로 동굴 파는 느낌이다깨작거리면서 뭔가 알거 같긴 한데 너무 방대하니 시간 박아도 몰라서 자신 없을듯 사실 오늘 겪은 쪽팔린 사고를 동네방네 떠벌리고자 똥글 쓴다. ㅠㅠㅠ그리고 영어로 대화하기 너무 힘들다. 다같이 나한테 손가락질하는데 영문도 모른채 지건당해야 한다 처음에는 ..

tech 2025.08.25