Builder.shin
Backend
426개의 게시물
Python
FastAPI에서 Pydantic 모델 검증 에러 커스터마이징
FastAPI로 API를 개발하던 중 클라이언트에게 친화적인 에러 메시지를 전달해야 하는 요구사항이 생겼다. Pydantic의 기본 검증 에러 응답을 커스터마이징하는 방법을 정리했다.
2022년 4월 3일
Python
FastAPI에서 Pydantic 모델 재사용 시 주의할 점
API 요청/응답에 같은 Pydantic 모델을 재사용하다가 겪은 문제와 해결 과정을 정리했다. optional 필드 처리와 모델 상속 구조를 개선했다.
2022년 3월 31일
Golang
Go 제네릭 1.18 출시, 실무 코드에 적용해보기
Go 1.18에서 드디어 제네릭이 정식 지원되었다. 기존 프로젝트에서 반복되던 타입별 유틸 함수들을 제네릭으로 리팩토링하면서 체감한 장단점을 정리했다.
2022년 3월 18일
Node.js
Node.js 환경변수 관리 개선 - dotenv-expand 도입기
프로젝트가 커지면서 환경변수 간 참조가 필요해졌다. dotenv만으로는 변수 간 조합이 불가능해 dotenv-expand를 도입하고, 환경변수 관리 방식을 개선한 과정을 기록한다.
2022년 2월 27일
Node.js
Node.js 16에서 17로 업그레이드하며 겪은 OpenSSL 3.0 이슈
프로젝트를 Node.js 17로 업그레이드하면서 OpenSSL 3.0 관련 오류를 마주쳤다. 레거시 암호화 알고리즘 사용 코드에서 발생한 문제와 해결 방법을 정리했다.
2022년 2월 24일
Node.js
Node.js 멀티스레딩: Worker Threads로 CPU 집약적 작업 처리하기
이미지 리사이징 API에서 동시 요청 시 응답 시간이 급격히 증가하는 문제가 있었다. Worker Threads를 도입해 CPU 집약적 작업을 메인 스레드에서 분리하여 해결한 과정을 정리했다.
2022년 2월 16일
Python
FastAPI에서 SQLAlchemy 2.0 스타일로 마이그레이션하기
FastAPI 프로젝트에서 SQLAlchemy 1.4의 2.0 스타일 쿼리로 전환하면서 겪은 문제들을 정리했다. 기존 레거시 쿼리 방식에서 async/await 기반의 새로운 패턴으로 변경하는 과정을 기록한다.
2022년 2월 12일
Rust
Rust로 Node.js Native Addon 작성하기
이미지 처리 API의 성능 병목을 해결하기 위해 Rust로 Native Addon을 작성했다. napi-rs를 사용하면 생각보다 간단하게 Node.js와 Rust를 연결할 수 있었다.
2022년 1월 28일
Golang
Go 1.18 베타 제네릭 도입 후기
Go 1.18 베타에서 제네릭을 실제 프로젝트에 적용해봤다. 타입 안정성은 확보되었지만, 기존 코드베이스와의 혼용 시 주의할 점이 많았다.
2022년 1월 25일
Python
Python 비동기 처리에서 asyncio.gather와 as_completed 선택 기준
API 크롤링 작업을 최적화하면서 asyncio.gather()와 as_completed()의 차이를 명확히 이해하게 되었다. 상황에 따라 어떤 방식을 선택해야 하는지 정리했다.
2022년 1월 19일
Previous
1
More pages
16
17
18
19
20
More pages
43
Next
카테고리
Builder.shin