피드로 돌아가기
Dev.toFrontend
원문 읽기
Serverless Browser-side 아키텍처를 통한 PDF 처리 및 데이터 프라이버시 확보
I Was Tired of Uploading PDFs… So I Built My Own Tool
AI 요약
Context
민감 정보 포함 PDF의 서버 업로드 과정에서 발생하는 데이터 유출 리스크와 네트워크 지연 시간이라는 병목 지점 식별. 기존의 Server-side 처리 방식이 초래하는 보안 취약점과 인프라 유지 비용의 한계점을 분석.
Technical Solution
- Client-side 전용 라이브러리인 pdf-lib 채택을 통한 Zero Backend 아키텍처 설계
- File API의 arrayBuffer() 메서드를 활용한 로컬 바이너리 데이터 직접 처리 방식 도입
- Set 자료구조 기반의 parsePageRanges 유틸리티 구현을 통한 중복 페이지 제거 및 범위 입력 최적화
- Source PDF에서 선택적 Page Copy 후 New Document에 삽입하는 메모리 기반 PDF 재구성 로직 적용
- Browser Web API를 활용한 파일 처리로 서버 전송 단계의 네트워크 오버헤드 완전 제거
실천 포인트
- 민감 데이터 처리 시 서버 전송 없이 브라우저 내에서 완결 가능한 구조인지 검토 - 단순 파일 변환 및 가공 작업의 경우 Backend 인프라 구축 전 Client-side 라이브러리 대체 가능성 확인 - 대용량 파일 처리 시 Client-side Memory Limit 및 저사양 디바이스의 성능 저하 가능성 사전 테스트