피드로 돌아가기
Generate Invoice PDFs from HTML in 10 Lines of Code
Dev.toDev.to
Backend

FastAPI와 Playwright 기반의 Serverless PDF 생성 API 구축

Generate Invoice PDFs from HTML in 10 Lines of Code

Mahiuddin Al Kamal2026년 6월 21일2beginner

Context

Headless Chrome 직접 운영 시 발생하는 메모리 누수 및 Scaling 이슈 해결 필요. 기존 Enterprise API의 높은 비용 부담과 wkhtmltopdf의 구형 CSS 지원 한계를 극복하기 위한 경량 API 설계 요구.

Technical Solution

  • FastAPI 프레임워크를 통한 고성능 RESTful 인터페이스 구축
  • Playwright 엔진 기반의 Headless Chromium 제어로 최신 CSS 표준 렌더링 보장
  • JSON 입력 및 PDF 바이너리 출력 구조의 Stateless 아키텍처 설계
  • PDF 병합, 분할, 워터마크, AES 암호화 등 Post-processing 기능을 8개 Endpoint로 모듈화
  • RapidAPI 플랫폼 연동을 통한 API Key 인증 및 Quota 관리 자동화
  • Railway 인프라 기반의 배포를 통한 인프라 관리 오버헤드 최소화

- Headless Browser 운영 시 메모리 부족 및 Crash 방지를 위한 외부 API 서비스 검토 - 복잡한 PDF 레이아웃 구현 시 CSS 표준 지원 여부를 우선 확인하여 렌더링 엔진 선정 - PDF 생성-편집-보안 기능을 기능별 Endpoint로 분리하여 단일 책임 원칙 적용

원문 읽기