Builder.shin
Backend
426개의 게시물
Node.js
Node.js 24 LTS로 마이그레이션하면서 겪은 이슈들
프로젝트를 Node.js 24 LTS로 업그레이드하면서 발생한 몇 가지 이슈를 정리했다. 특히 네이티브 테스트 러너와 일부 deprecated API 관련 변경사항이 주요했다.
2025년 5월 12일
Node.js
Node.js 메모리 누수 추적과 heapdump 활용기
프로덕션 환경에서 발생한 메모리 누수를 heapdump와 Chrome DevTools를 활용해 추적하고 해결한 과정을 기록했다. 특정 API 엔드포인트에서 발생한 클로저 참조 문제가 원인이었다.
2025년 5월 4일
Node.js
Node.js 워커 스레드로 CPU 집약 작업 병렬 처리하기
대량의 이미지 리사이징 API 요청으로 메인 스레드가 블로킹되는 문제가 발생했다. Worker Threads를 도입해 CPU 집약 작업을 병렬화하고 응답 시간을 70% 개선한 과정을 정리했다.
2025년 5월 3일
Node.js
Node.js 워커 스레드로 CPU 집약 작업 처리하기
이미지 리사이징 API의 응답 속도 문제를 워커 스레드로 해결한 과정. 메인 스레드 블로킹을 피하고 멀티코어를 활용해 처리량을 3배 높였다.
2025년 4월 24일
Rust
Rust의 타입 시스템으로 런타임 에러 줄이기
Node.js 프로젝트에서 자주 발생하던 런타임 타입 에러 문제를 Rust로 마이그레이션하면서 경험한 내용을 정리했다. Option과 Result 타입을 활용해 에러 처리를 컴파일 타임에 강제하는 방법을 공유한다.
2025년 3월 25일
Golang
Go 1.24 제네릭 성능 개선과 실무 적용 사례
Go 1.24에서 개선된 제네릭 성능을 실무 API 서버에 적용했다. 기존 interface{} 기반 캐시 레이어를 제네릭으로 전환하면서 타입 안정성과 성능을 모두 잡은 과정을 기록한다.
2025년 3월 9일
Rust
Rust의 Result 타입으로 에러 핸들링 개선하기
Node.js의 try-catch에 익숙했던 개발자가 Rust의 Result 타입을 접하며 느낀 점을 정리했다. ? 연산자와 패턴 매칭을 통해 더 명시적인 에러 처리가 가능했다.
2025년 2월 11일
Python
Python asyncio 타임아웃 처리 중 발견한 함정
비동기 API 호출에 타임아웃을 적용하면서 asyncio.wait_for()의 예상치 못한 동작을 발견했다. CancelledError 처리 시점에 따라 리소스 정리가 제대로 되지 않는 문제가 있었다.
2025년 2월 5일
Node.js
Node.js 스트림 백프레셔 처리 제대로 하기
대용량 파일 처리 API에서 메모리 사용량이 급증하는 문제가 발생했다. 스트림 백프레셔를 제대로 처리하지 않아 생긴 문제였고, pipeline과 Readable.from을 활용해 해결했다.
2025년 2월 1일
Python
Python 멀티프로세싱으로 배치 작업 성능 개선하기
배치 작업에서 대용량 데이터 처리 시간이 문제였다. multiprocessing Pool을 활용해 처리 시간을 1/4로 단축했고, 그 과정에서 마주친 직렬화 이슈와 메모리 관리 방법을 정리했다.
2025년 1월 29일
Previous
1
2
3
4
5
More pages
43
Next
카테고리
Builder.shin