신규하 블로그

개발 기록 보관소

검색에는 Elasticsearch, 벡터에는 Pinecone, 캐시에는 Redis, 문서에는 MongoDB, 큐에는 Kafka, 시계열에는 InfluxDB — 그리고 나머지는 PostgreSQL. 축하합니다. 이제 관리해야 할 데이터베이스가 7개입니다. 7개의 쿼리 언어, 7개의 백업 전략, 7개의 보안 모델, 7개의 모니터링 대시보드. 새벽 3시에 뭔가 터지면? 디버깅을 위한 테스트 환경 구축부터 악몽입니다. 다른 방법이 있습니다. 그냥 Postgres를 쓰세요. 더보기

8억 명의 ChatGPT 사용자, 지난 1년간 10배 성장한 트래픽, 수백만 QPS — OpenAI는 이 모든 것을 단일 Primary PostgreSQL 인스턴스와 약 50개의 읽기 복제본으로 처리하고 있습니다. 샤딩 없이 이 규모를 달성한 비결은 무엇일까요? OpenAI 엔지니어 Bohan Zhang이 공유한 실전 전략을 분석합니다. 더보기

AI 에이전트를 만들려고 검색하면 정말 다양한 도구들이 터져 나옵니다. 랭체인, 랭그래프, 구글 ADK, 파이덴틱 AI, 클로드 에이전트 SDK까지. 하지만 이 중에서 아무거나 골라서 시작했다가 6개월 뒤에 갈아엎는 팀이 정말 많습니다. 겉보기엔 다 똑같아 보이지만, 속을 열어보면 완전히 다른 문제를 풀고 있기 때문입니다. 더보기

Claude Code가 이제 24/7 AI 직원이 되었습니다. Anthropic이 드디어 Claude Code에 네이티브 Scheduled Tasks 기능을 추가했기 때문입니다. 이 기능이 의미하는 바는 단순합니다. 여러분이 자고 있을 때도, 회의 중일 때도, Claude Code는 정해진 시간에 자동으로 깨어나 작업을 수행합니다. 기존에 구축한 모든 스킬, 워크플로우, 자동화가 이 한 번의 업데이트로 10배 더 강력해졌습니다. 그리고 설정은 놀라울 정도로 간단합니다. 더보기

Java 21에서 정식 도입된 Virtual Threads(JEP 444) 는 “가벼운 스레드를 수백만 개 만들 수 있다"는 개념만으로도 관심을 끌었습니다. 하지만 실제 프로덕션에서 어떤 문제가 생기고, 프레임워크 수준에서 어떻게 설계해야 하는지를 다루는 자료는 많지 않습니다. 이 글은 Oracle Helidon 팀 Joe DiPalma의 발표를 기반으로, Virtual Threads를 프레임워크 설계 중심 에 놓았을 때 무엇이 달라지는지, 그리고 운영에서 반드시 알아야 할 핀닝·동시성 제어·Thread Local 이슈를 정리합니다. 더보기