Builder.shin
Backend
426개의 게시물
Node.js
Node.js 메모리 누수 추적 및 해결
프로덕션 서버에서 메모리 사용량이 지속적으로 증가하는 문제를 발견했다. heapdump와 Chrome DevTools를 활용해 원인을 찾고 해결한 과정을 기록했다.
2021년 4월 5일
Node.js
Node.js 스트림으로 대용량 CSV 파일 처리하기
10GB 이상의 CSV 파일을 메모리 오버플로우 없이 처리해야 하는 상황이 생겼다. Node.js 스트림을 활용해 메모리 사용량을 200MB 이하로 유지하면서 대용량 파일을 처리한 과정을 정리했다.
2021년 3월 25일
Python
FastAPI로 기존 Flask 프로젝트 마이그레이션하기
레거시 Flask 프로젝트를 FastAPI로 점진적으로 마이그레이션한 과정을 정리했다. 타입 힌트 기반 자동 문서화와 성능 개선이 주요 목표였다.
2021년 3월 20일
Node.js
Node.js 환경변수 관리와 dotenv-expand 도입기
환경별로 늘어나는 환경변수 관리가 복잡해지면서 dotenv-expand를 도입했다. 변수 참조 기능으로 중복을 제거하고 관리 포인트를 줄일 수 있었다.
2021년 3월 18일
Python
FastAPI와 SQLAlchemy로 비동기 API 서버 구축
Django에서 FastAPI로 마이그레이션하면서 비동기 처리와 타입 힌팅의 장점을 경험했다. SQLAlchemy 1.4의 async 지원으로 DB 쿼리까지 논블로킹으로 처리할 수 있었다.
2021년 3월 15일
Python
Python 비동기 처리 asyncio 실전 적용기
레거시 API 서버의 성능 병목을 해결하기 위해 asyncio를 도입했다. 동기 방식의 외부 API 호출을 비동기로 전환하면서 겪은 시행착오와 성능 개선 결과를 정리했다.
2021년 2월 27일
Golang
Go 에러 핸들링 패턴 정리
Go 프로젝트에서 에러 처리 방식을 개선하면서 정리한 내용이다. pkg/errors와 표준 라이브러리를 활용한 실용적인 패턴들을 기록했다.
2021년 2월 19일
Python
Python asyncio로 API 호출 병렬 처리 개선하기
외부 API를 순차 호출하던 배치 작업이 30분 넘게 걸려 asyncio로 전환했다. 동시 요청 수 제어와 에러 핸들링을 어떻게 처리했는지 기록한다.
2021년 2월 12일
Golang
Go에서 Context Timeout으로 외부 API 호출 안정성 확보하기
외부 결제 API 호출 시 무한 대기 문제가 발생해 서비스 장애로 이어졌다. context.WithTimeout을 활용해 타임아웃을 강제하고, graceful degradation 패턴을 적용한 과정을 정리했다.
2021년 1월 28일
Node.js
Node.js 프로젝트에 Prisma 2 도입 후기
기존 TypeORM 기반 프로젝트를 Prisma 2로 마이그레이션하면서 겪은 경험을 정리했다. 타입 안정성과 개발 경험이 크게 개선되었지만, 일부 제약 사항도 존재했다.
2021년 1월 25일
Previous
1
More pages
22
23
24
25
26
More pages
43
Next
카테고리