전체 글
[Kafka] 프로듀서 acks=all, min.insync.replicas, 멱등 프로듀서: 메시지 유실 막고 순서 보장하기
[Kafka] 프로듀서 acks=all, min.insync.replicas, 멱등 프로듀서: 메시지 유실 막고 순서 보장하기지금까지 카프카 컨슈머의 신뢰성을 다뤘는데, 사실 메시지를 안전하게 받으려면 먼저 안전하게 보내야 해요. 프로듀서가 메시지를 어떻게 보내느냐에 따라 유실이 생기기도 하고, 순서가 뒤섞이기도 해요. 컨슈머를 아무리 잘 만들어도 프로듀서에서 메시지가 새면 소용없죠.acks가 무엇을 보장하는지에서 시작해 min.insync.replicas와의 조합, 재시도와 순서 보장, max.in.flight.requests의 함정, 멱등 프로듀서, 배치와 압축 같은 성능 설정, 자주 만나는 문제까지 짚어요. 컨슈머 쪽은 @KafkaListener 컨슈머 설정부터 보면 좋아요. KafkaTemplat..
[Cursor] Bugbot 리뷰가 90초로 줄고 /review 커맨드가 생겼어요
[Cursor] Bugbot 리뷰가 90초로 줄고 /review 커맨드가 생겼어요Cursor가 Bugbot 평균 리뷰 시간을 5분에서 90초로 줄였다고 현지시간 6월 10일 발표했어요. 푸시 전에 에디터 안에서 리뷰를 돌리는 /review 커맨드도 같이 나왔어요. 런당 비용도 22% 내려갔다는 내용이에요.01. 리뷰 한 번이 평균 90초라고 해요Cursor 발표 기준으로 Bugbot 평균 리뷰 시간이 약 5분에서 약 90초로 줄었어요. Composer 2.5 학습 개선이 바탕이라는 설명이에요.찾아내는 버그도 리뷰당 평균 0.56개에서 0.62개로 10% 늘었다고 해요. 다만 이런 수치는 모두 발표 자료 기준이라, 실제 체감은 직접 써보고 판단할 부분이에요.02. 푸시 전에 /review로 미리 돌릴 수 ..
[Claude] Fable 5 공개 — Opus 위에 새 등급이 생겼어요
[Claude] Fable 5 공개 — Opus 위에 새 등급이 생겼어요Anthropic이 현지시간 6월 9일 Claude Fable 5와 Claude Mythos 5를 공개했어요. 지금까지 최상위였던 Opus 위에 Mythos급이라는 새 등급이 생긴 발표예요. 그중 Fable 5는 일반 사용자도 바로 쓸 수 있게 풀렸어요.01. Mythos를 일반용으로 만든 게 Fable 5예요두 모델은 사실 같은 모델이에요. Mythos 5는 세이프가드를 풀어둔 원본으로, Project Glasswing 사이버보안 파트너와 일부 생명과학 연구자에게만 제공돼요.Fable 5는 거기에 세이프가드를 씌워 일반 공개한 버전이에요. 4월에 "너무 강력해서 공개 못 한다"던 Mythos Preview가 두 달 만에 일반 등급으..
[Kafka] Exactly-once 트랜잭션 설정: 멱등 프로듀서, transactional.id, read_committed와 한계
[Kafka] Exactly-once 트랜잭션 설정: 멱등 프로듀서, transactional.id, read_committed와 한계카프카에서 기본 전달 보장은 "최소 한 번(at-least-once)"이라 중복이 생겨요. 그래서 보통은 멱등성으로 중복을 흡수하죠. 그런데 카프카 안에서 메시지를 받아 가공해 다시 내보내는 흐름이라면, 중복 자체를 없애는 "정확히 한 번(exactly-once)"이 가능해요.exactly-once가 무엇을 보장하고 무엇은 보장하지 않는지에서 출발해, 멱등 프로듀서, 카프카 트랜잭션, read_committed, 스프링에서 쓰는 법, 비용과 한계, 자주 만나는 문제 순서로 풀어요. 중복을 멱등성으로 막는 방법은 수동 커밋과 멱등성 글에서 다뤘으니, 여기서는 그 상위 주제를..
[Claude Code] /reload-skills, 세션 안 닫고 Skill 손봐요
CLAUDE CODE · 2.1.152 (2026-05-27)[Claude Code] /reload-skills, 세션 안 닫고 Skill 손봐요저는 /333 패턴으로 identity·voice·anti-ai 세 파일을 매일 갈아끼워요. 그때마다 Claude Code 세션을 닫고 다시 띄우느라 작업 컨텍스트가 통째로 날아갔어요. 그런데 그저께 받은 신기능 /reload-skills 한 줄로 그게 풀린 모양이에요.매일 Skill 갈아끼우는데 세션을 닫고 있었어요저는 voice.md / identity.md / anti-ai.md 세 파일을 매일 한 번 이상 손봐요. 어제는 글 한 편 쓰는 동안 voice.md 만 네 번 수정했어요. 그때마다 Claude Code 세션을 닫고 다시 띄워야 변경이 반영됐어요...
[Obsidian] 내 디스크에 쌓는 마크다운 지식관리
개발자 도구 · 노트 & 지식관리[Obsidian] 내 디스크에 쌓는 마크다운 지식관리Obsidian은 노트를 클라우드 서버가 아니라 내 컴퓨터의 마크다운 파일로 저장하는 노트 앱입니다. Notion·Evernote처럼 서비스에 갇히지 않고, 노트끼리 링크로 엮어 개인 위키를 만드는 데 쓰입니다. 이 글에서는 무엇을 대체하는지, 첫 vault를 만드는 법, 핵심 기능 세 가지와 코어 플러그인, 그리고 시작 전에 알아두면 좋은 점을 정리합니다.노트를 클라우드가 아니라 내 폴더에 둡니다Obsidian의 가장 큰 특징은 저장 방식입니다. 작성한 노트는 전부 내 디스크의 일반 마크다운(.md) 파일로 남습니다. 이 노트들이 들어있는 폴더를 Obsidian에서는 vault(금고)라고 부릅니다. vault는 그냥 ..
[Kafka] 컨슈머 에러 핸들링과 DLQ: 재시도 BackOff, poison pill, 실패 메시지 재처리
[Kafka] 컨슈머 에러 핸들링과 DLQ: 재시도 BackOff, poison pill, 실패 메시지 재처리카프카 리스너에서 예외가 터지면 그 메시지는 기본적으로 재시도되다가 건너뛰어져요. 그런데 계속 실패하는 메시지 하나가 파티션 전체를 막아버릴 수 있어요. 그걸 막는 게 재시도 한도와 DLQ예요.예외가 났을 때 스프링 카프카가 무슨 일을 하는지를 먼저 따라가고, 재시도와 backoff, 재시도 가능한 예외와 불가능한 예외, poison pill 문제, DLQ로 빼는 법, 역직렬화 실패 처리, DLT 운영, 자주 만나는 문제까지 차례로 봐요. 컨슈머 기본 설정은 @KafkaListener 컨슈머 설정 글을 먼저 보면 좋아요.01. 예외가 터지면 기본은 어떻게 되나요리스너 메서드에서 예외가 나면 스프링..
[Kafka] 컨슈머 리밸런싱 원인과 줄이는 법: CooperativeStickyAssignor, static membership, 파티션 할당 전략
[Kafka] 컨슈머 리밸런싱 원인과 줄이는 법: CooperativeStickyAssignor, static membership, 파티션 할당 전략리밸런싱은 컨슈머 그룹이 파티션을 다시 나눠 갖는 과정이에요. 자주 일어나면 그동안 메시지 처리가 멈추고 중복까지 생겨요. 그래서 리밸런싱을 이해하고 빈도를 줄이는 게 컨슈머 안정성의 핵심이에요.컨슈머 그룹과 리밸런싱이 뭔지에서 시작해 언제 일어나는지, 왜 비싼지, eager와 cooperative 방식의 차이, 파티션 할당 전략(Assignor) 네 가지, 리밸런싱을 줄이는 구체적인 방법, 자주 만나는 문제 순으로 짚어요. 컨슈머 동시성과 파티션의 관계는 @KafkaListener 컨슈머 설정 글에서 먼저 다뤘어요.01. 컨슈머 리밸런싱이 뭔가요같은 gro..
[Claude Code] 폰에서 텔레그램 한 줄로 맥을 조종하게 된 이야기
EDIBLOG · AI 꿀팁 · 2026.05.28[Claude Code] 폰에서 텔레그램 한 줄로 맥을 조종하게 된 이야기저는 출퇴근 중에도 끊임없이 아이디어 구상을 해서 제가 구축해놓은 시스템에 실시간으로 반영하길 원했어요. 그래서 텔레그램 봇 하나로 폰에서 맥의 Claude Code를 부르는 환경을 만들어뒀고, 지금은 그 한 줄짜리 인터페이스가 저에겐 아주 큰 의미를 가져다주고 있어요.01. 폰을 통해 아이디어를 실시간으로 반영하고 싶었어요저는 자동화 잡 수십 개를 매일 굴리고 있어요. AI 생태계 모니터링, 영어 학습, 증권 증시 모니터링 AI LLM Wiki 구축, 브레인 스토밍 등 등 같은 걸 폰으로도 확인하고 싶었거든요. 노트북 열고 터미널 띄우고 명령 치는 게 출퇴근 중엔 너무 번거로웠어요..
토스증권 OpenAPI가 드디어 오픈했어요
토스증권 OpenAPI가 드디어 오픈했어요토스증권 OpenAPI가 드디어 오픈했어요. 저는 그동안 자동매매 시그널만 받고 주문은 손으로 넣었는데, 이걸 붙이고 나서는 종목 선정부터 주문까지 자동으로 실행되고 있어요. 쓰면서 좋았던 점과 아직 아쉬운 점을 정리해볼게요.01. 문서를 Claude한테 그대로 던질 수 있어요요즘 API 문서 사이트는 대부분 자바스크립트로 그려져서, AI 코딩 도구가 주소만 보고는 내용을 못 읽는 경우가 많아요. 그래서 보통 문서를 복사해서 붙여넣거나, 스크린샷을 찍어 넘기거나 했거든요. 토스증권 개발자 문서에는 llms.txt가 있어요. llms.txt는 사이트 문서를 LLM이 읽기 좋은 텍스트로 안내해주는 일종의 관례인데, 직접 열어보면 첫 줄부터 이렇게 자기소개를 해요.토스..
[Linear] Jira 대신 쓰는 키보드 우선 이슈 트래커
개발자 도구 · 협업 & 이슈[Linear] Jira 대신 쓰는 키보드 우선 이슈 트래커Linear는 Jira처럼 무겁고 설정 많은 이슈 트래커가 부담스러운 팀이 대안으로 많이 고르는 도구예요. 마우스 없이 단축키로 이슈를 만들고 옮기는 게 핵심이고, GitHub 연동으로 PR을 머지하면 이슈가 알아서 닫혀요. 이 글에서는 Linear가 뭘 대체하는지, 처음 세팅하는 순서, 단축키·사이클·GitHub 연동, 요금제까지 한 번에 정리합니다.무거운 트래커가 부담스러운 팀이 고르는 도구예요Linear는 소프트웨어 팀을 위한 이슈 트래커 겸 프로젝트 관리 도구예요. 공식 사이트 기준으로 33,000개 이상의 회사가 쓴다고 표기돼 있어요. 시장에서 Linear가 주목받은 이유는 기능이 더 많아서가 아니라, 오히려..
[Kafka] 수동 커밋(AckMode MANUAL)과 멱등성: 메시지 중복 처리 원인과 해결
[Kafka] 수동 커밋(AckMode MANUAL)과 멱등성: 메시지 중복 처리 원인과 해결카프카에서 수동 커밋을 켜면 메시지가 중복 처리될 수 있어요. 수동 커밋은 중복을 막는 도구가 아니라, 오히려 중복을 전제로 깔고 가는 방식이거든요. 그래서 수동 커밋과 멱등성은 거의 항상 같이 가요.전달 보장(at-least-once)이 무슨 뜻인지를 먼저 짚고, 자동 커밋의 문제, ackMode 종류, MANUAL과 MANUAL_IMMEDIATE의 차이, 커밋 성능, 중복이 생기는 정확한 이유, 멱등성을 만드는 네 가지 방법, 자주 만나는 문제까지 풀어 갈게요. 컨슈머 기본 설정은 @KafkaListener 컨슈머 설정 글에서 다뤘으니 여기서는 커밋과 중복에 집중할게요.01. 수동 커밋의 본질, 커밋 시점이 ..