TECH NOTES
기술노트
현장에서 검증된 개발 지식을 기록합니다.
135313521351135013491348134713461345134413431342
Tools
Git merge와 rebase, 언제 무엇을 쓰나
공유 브랜치는 merge, 내 로컬 정리는 rebase가 원칙. 황금률("공개된 커밋은 rebase 금지")과 충돌 처리.
AI
LLM 환각(hallucination) 줄이는 실전 방법
모델은 모르는 것도 자신 있게 지어낸다. 근거 제공(RAG)·"모르면 모른다"·출력 구조화·검증으로 환각을 억제한다.
AI
LLM 스트리밍 응답 구현 — SSE로 체감 속도 올리기
응답을 다 기다리지 말고 토큰을 흘려보내자. SSE 기본 구조, 프록시 버퍼링·중단 처리·에러 전송까지.
AI
LLM API 비용 줄이기 — 캐싱·모델 라우팅·프롬프트 다이어트
LLM 비용은 토큰에 비례한다. 프롬프트 캐싱·작은 모델 라우팅·컨텍스트 압축·출력 제한으로 같은 품질에 비용을 크게 낮춘다.
AI
임베딩 모델과 벡터DB 선택 기준
차원·다국어·비용·도메인 적합도로 임베딩을 고르고, 규모·필터·운영 부담으로 벡터DB를 고른다. 과한 인프라를 피하는 법.
AI
프롬프트 인젝션, LLM 앱의 가장 흔한 취약점 방어
사용자/문서에 숨긴 지시가 시스템 프롬프트를 덮어쓰는 공격. 신뢰 경계 분리·출력 검증·권한 최소화로 막는다.
Infra
cron과 systemd timer, 정기 작업엔 무엇을
cron은 간단하지만 로그·실패 추적·의존성이 약하다. systemd timer는 journald 로그·정확한 제어를 준다. 선택 기준.
AI
RAG 검색 품질이 낮을 때 — 청킹부터 다시
RAG가 엉뚱한 답을 하면 대개 검색 단계가 문제다. 청크 크기·오버랩·메타데이터·하이브리드 검색·리랭킹으로 적합도를 올린다.
Infra
SSH 키 인증과 서버 접속 보안 하드닝
비밀번호 로그인은 무차별 대입의 표적. 키 인증 전환·root 로그인 제한·포트/접속망 제한·fail2ban까지 기본 하드닝.
Infra
무중단 배포, blue-green과 rolling 쉽게 이해하기
배포 때마다 잠깐 끊기는 걸 없애는 두 가지 전략. 트래픽 전환·헬스체크·롤백 관점에서 비교한다.
Infra
GitHub Actions가 느리다 — 캐시로 빌드 시간 줄이기
매번 의존성을 새로 받으면 CI가 길어진다. actions/cache·setup 캐시·도커 레이어 캐시로 절반 이하로 단축.
Infra
Docker Compose 컨테이너끼리 통신이 안 될 때
localhost로 다른 컨테이너를 부르면 실패한다. 같은 네트워크의 서비스명으로 접속, depends_on의 한계까지.