Builder.shin
전체
1263개의 게시물
TypeScript
타입스크립트 Utility Types로 반복 코드 줄이기
API 응답 타입 정의 작업 중 반복되는 패턴이 많아 유틸리티 타입을 적극 활용했다. Partial, Pick, Omit 등을 조합하니 타입 정의 코드량이 30% 정도 줄었다.
2021년 7월 28일
React
React 18 알파 버전 - Automatic Batching 살펴보기
React 18 알파가 공개되면서 Automatic Batching 기능이 추가되었다. 기존 setState의 배칭 동작이 어떻게 달라지는지, 실제 프로젝트에서 어떤 영향을 미칠지 테스트해봤다.
2021년 7월 23일
Node.js
Node.js 멀티 프로세스 환경에서 세션 공유 문제 해결
PM2 클러스터 모드로 서버를 운영하면서 세션이 유지되지 않는 문제를 겪었다. Redis를 사용한 세션 스토어로 해결한 과정을 기록한다.
2021년 7월 22일
gRPC
gRPC 서비스에 health check 구현하기
마이크로서비스 환경에서 gRPC 서버의 상태를 모니터링하기 위해 표준 health check 프로토콜을 구현했다. Kubernetes liveness/readiness probe와 연동하여 안정적인 배포 환경을 구축한 과정을 기록한다.
2021년 7월 18일
TypeScript
TypeScript 4.3 Template Literal Types로 타입 안전성 높이기
프로젝트에서 이벤트 네이밍 규칙을 타입 레벨에서 강제하기 위해 Template Literal Types를 도입했다. 런타임 에러를 컴파일 타임으로 앞당길 수 있었다.
2021년 7월 15일
Python
FastAPI에서 SQLAlchemy async 세션 관리 개선
FastAPI 프로젝트에서 SQLAlchemy 1.4의 asyncio 지원을 도입하면서 세션 관리 방식을 개선했다. 기존 동기 방식 대비 성능과 코드 구조 측면에서 얻은 것들을 정리한다.
2021년 7월 13일
Python
Python 비동기 처리에서 asyncio.gather vs asyncio.wait 선택하기
API 서버에서 여러 외부 서비스 호출 시 asyncio.gather와 asyncio.wait 중 어느 것을 써야 할지 고민했다. 실제 사용 사례를 통해 두 방식의 차이와 선택 기준을 정리했다.
2021년 7월 9일
Golang
Go 1.16 embed 패키지로 정적 파일 바이너리에 포함하기
Go 1.16부터 추가된 embed 패키지를 사용해 정적 파일을 바이너리에 포함시켰다. 별도 파일 복사 없이 단일 바이너리 배포가 가능해졌고, 배포 프로세스가 간소화되었다.
2021년 7월 8일
React
React 18 Alpha의 Concurrent Rendering 테스트해보기
React 18 Alpha가 공개되어 Concurrent Rendering 기능을 실제 프로젝트에 적용해봤다. startTransition과 useDeferredValue를 사용해 무거운 리스트 렌더링 성능을 개선한 과정을 정리했다.
2021년 7월 6일
Golang
Go 채널 타임아웃 처리 시 겪은 고루틴 릭 문제
API 서버에서 외부 요청 타임아웃을 처리하던 중 고루틴이 계속 쌓이는 문제를 발견했다. select 문과 context를 사용한 타임아웃 처리 방식의 차이를 정리했다.
2021년 7월 4일
Previous
1
More pages
60
61
62
63
64
More pages
127
Next
카테고리