
매일 새롭게 만나는 세 가지 주제
새로 올라온 글들을 확인해보세요!
실제 서비스에서 마주한 문제들을 분석하고 해결 과정에서 얻은 경험들을 공유합니다

1. 문제 상황 NestJS 프로젝트 개발 중 코드를 수정했음에도 불구하고 dist 폴더 내의 결과물이 갱신되지 않거나 심지어 dist 폴더 자체가 생성되지 않는 현상을 겪었다. nest start --watch 모드를 사용 중임에도 변경사항이 반영되지 않아 매번 수동으로 폴더를 지우고 다시 실행해야 하는 번거로움이 발생했다. 2. 원인 분석 이 문제의 핵심 원인은 TypeScript의 증분 빌드(Incremental Build) 메커니즘과 그

최근 NestJS를 활용해 관리자 CMS 프로젝트를 진행하던 도중 백엔드 설계 시 고유 ID 값으로 BigInt를 사용할 때 발생할 수 있는 치명적인 자바스크립트 정밀도 유실 문제에 대해 알게 되었다. 당장 내 코드에서 에러가 나지 않더라도 서비스가 커져 ID 값이 커지는 순간 문제가 될 수 있기 때문에 왜 자바스크립트에서 큰 숫자를 다룰 때 문자열 처리가 필수인지 정리해보자. 1. 자바스크립트 숫자의 한계: IEEE 754 표준자바스크립트는

[문제 요약] 증상: GitHub Actions를 통한 배포 중 Connection timeout 발생원인: 프로젝트 규모 증가로 홈서버에서 직접 Docker 빌드가 오래 걸려 SSH 세션/작업 제한 시간을 초과해결: GitHub Actions에서 GHCR(GitHub Container Registry)로 이미지를 빌드·푸시, 서버는 이미지 pull 후 재배포 기존에 사용하던 GitHub Actions 구성은 다음과 같았다. name: De

[문제 요약] 증상: 검색엔진 봇(Yeti)이 sitemap 요청 시 Connection timed out 오류 발생 원인: sitemap을 요청 시 기존 목록 API를 페이지 단위로 순회 호출하여 응답 지연 발생 해결: 각 도메인 별로 /sitemap 엔드 포인트 추가 및 ISR 주기 변경 프론트엔드(Next.js) 서버에서 sitemap을 생성할 때 백엔드(Spring Boot) API를 통해 글 목록과 카테고리 목록을 받아오는 기존 구조