Builder.shin
Backend
426개의 게시물
Node.js
Node.js 스트림으로 대용량 CSV 파싱 메모리 이슈 해결
100MB 이상의 CSV 파일 업로드 시 서버 메모리가 부족해지는 문제가 발생했다. fs.readFile 대신 스트림 기반 파싱으로 전환하여 메모리 사용량을 90% 이상 줄인 과정을 기록한다.
2024년 5월 5일
Golang
Go 1.22 range over function 실험적 사용기
Go 1.22에서 실험적으로 추가된 range over function 기능을 프로젝트에 적용해봤다. 이터레이터 패턴을 언어 레벨에서 지원하면서 코드가 훨씬 간결해졌다.
2024년 4월 30일
Node.js
Node.js 22 릴리즈 - require()로 ESM 불러오기 지원
Node.js 22가 정식 릴리즈되면서 require()로 ESM 모듈을 불러올 수 있는 실험적 기능이 추가되었다. 그동안 프로젝트에서 CJS와 ESM 혼용 시 겪었던 문제들을 정리하고, 새 기능이 실무에 미칠 영향을 확인해봤다.
2024년 4월 29일
Golang
Go 1.22의 for 루프 변수 스코프 변경사항
Go 1.22부터 for 루프 내 변수 스코프가 변경되었다. 기존 코드에서 클로저 사용 시 발생하던 버그 패턴이 해결되었지만, 레거시 코드 마이그레이션 시 주의가 필요하다.
2024년 4월 15일
Node.js
Node.js 22 베타 테스트 - watch 모드와 built-in .env 지원
Node.js 22 베타가 공개되어 주요 기능들을 테스트해봤다. 특히 watch 모드 개선과 네이티브 .env 파일 지원이 눈에 띄었다. 프로덕션 적용 전까지 개발 환경에서 먼저 검증이 필요해 보인다.
2024년 4월 3일
Golang
Go 1.22에서 추가된 for loop 변수 스코프 변경
Go 1.22에서 for loop 변수 스코프가 변경되어 기존 코드에서 발생하던 클로저 버그가 해결됐다. 실제 프로덕션 코드에서 마주친 사례를 정리했다.
2024년 3월 2일
Golang
Go 1.22 제네릭 타입 추론 개선 사항 정리
Go 1.22가 릴리스되면서 제네릭 타입 추론이 크게 개선되었다. 실무에서 자주 마주치는 케이스들을 중심으로 변경 사항을 정리했다.
2024년 2월 13일
Python
Python asyncio와 aiohttp로 API 동시 호출 최적화
레거시 배치 작업을 비동기로 전환하면서 처리 시간을 1/5로 단축했다. asyncio와 aiohttp를 사용한 동시 API 호출 패턴과 주의할 점을 정리했다.
2024년 2월 10일
Node.js
Node.js 스트림으로 대용량 CSV 파싱 메모리 문제 해결
500MB 이상 CSV 파일 업로드 시 서버 메모리 부족으로 크래시가 발생했다. 버퍼 전체를 메모리에 올리던 방식을 스트림 기반으로 전환하여 메모리 사용량을 95% 줄였다.
2024년 1월 14일
Python
Python asyncio로 API 병렬 호출 성능 개선하기
레거시 배치 작업에서 순차 API 호출로 인한 성능 문제를 asyncio로 해결했다. 10분 걸리던 작업이 1분 30초로 단축되었다.
2024년 1월 11일
Previous
1
More pages
5
6
7
8
9
More pages
43
Next
카테고리
Builder.shin