Builder.shin
Backend
426개의 게시물
Golang
Go 제네릭 도입 후 6개월, 실전 사용 패턴 정리
Go 1.18에서 제네릭이 도입된 지 3년이 지났다. 초기 회의적이었던 시각과 달리, 실무에서 충분히 안정화되어 활용하고 있다. 유틸리티 함수와 데이터 구조에서 체감한 생산성 향상 사례를 정리했다.
2025년 8월 23일
Node.js
Node.js 워커 스레드로 CPU 집약적 작업 처리하기
이미지 리사이징 API에서 발생한 블로킹 이슈를 워커 스레드로 해결한 과정을 기록했다. 메인 스레드 블로킹 없이 동시 요청을 처리할 수 있게 되었고, 응답 시간도 개선되었다.
2025년 8월 20일
Node.js
Node.js 24 LTS에서 달라진 native test runner 활용기
Node.js 24 LTS로 업그레이드하면서 jest를 걷어내고 native test runner로 전환했다. 설정 파일이 사라지고 테스트 실행 속도가 개선됐지만, 몇 가지 마이그레이션 포인트가 있었다.
2025년 8월 18일
Node.js
Node.js 22 Worker Threads로 이미지 일괄 처리 성능 개선
대량의 이미지 리사이징 작업이 메인 스레드를 블로킹하는 문제를 Worker Threads로 해결했다. CPU 코어를 효율적으로 활용해 처리 시간을 70% 단축시킬 수 있었다.
2025년 8월 6일
Node.js
Node.js 워커 스레드로 CPU 집약 작업 개선하기
대용량 CSV 파싱 작업이 메인 스레드를 블로킹하는 문제를 워커 스레드로 해결했다. 싱글 스레드 특성상 동시 요청 처리가 불가능했던 부분을 개선한 과정을 기록한다.
2025년 7월 10일
Golang
Go 1.24 generics 활용: API 응답 래퍼 타입 통일하기
여러 마이크로서비스에서 반복되던 API 응답 구조를 Go generics로 통합했다. 타입 안정성을 확보하면서도 보일러플레이트 코드를 70% 줄일 수 있었다.
2025년 6월 25일
Python
FastAPI 비동기 배치 처리 성능 개선
데이터 수집 API에서 대량의 외부 API 호출을 처리하던 중 타임아웃 문제가 발생했다. asyncio와 세마포어를 활용해 동시 처리량을 조절하면서 응답 시간을 70% 단축했다.
2025년 6월 23일
Node.js
Node.js 스트림으로 대용량 CSV 파일 처리 메모리 최적화
10GB 규모의 CSV 파일을 처리하면서 메모리 부족 문제에 직면했다. 기존 파일 전체 로드 방식을 스트림으로 전환해 메모리 사용량을 95% 줄이고 안정적으로 처리할 수 있었다.
2025년 6월 6일
Node.js
Node.js 23 Worker Threads로 CPU 집약적 작업 분산 처리하기
대용량 이미지 처리 API에서 메인 스레드 블로킹 이슈가 발생했다. Worker Threads를 활용해 CPU 집약적 작업을 분산 처리하고 응답 시간을 70% 개선한 과정을 정리했다.
2025년 6월 3일
Python
Python 비동기 작업에서 메모리 누수 추적하기
FastAPI 기반 서비스에서 장시간 실행 시 메모리 사용량이 계속 증가하는 문제를 발견했다. asyncio 태스크 관리 미흡으로 인한 메모리 누수를 tracemalloc과 weakref로 추적하고 해결한 과정을 기록한다.
2025년 5월 26일
Previous
1
2
3
4
More pages
43
Next
카테고리
Builder.shin