FilePizza - 브라우저에서의 P2P 파일 전송

2 days ago 3

  • WebRTC를 사용하여 다른 웹 기반 파일 공유 서비스에서 요구하는 초기 업로드 단계를 제거
  • 데이터가 중간 서버에 저장되지 않기 때문에 전송이 빠르고, 개인적이며, 안전함
  • FilePizza의 호스팅 인스턴스는 file.pizza에서 사용 가능

FilePizza v2의 새로운 기능

  • 새로운 UI와 다크 모드 지원, 현대 브라우저 기술 기반으로 구축됨
  • 모바일 Safari를 포함한 대부분의 모바일 브라우저에서 작동함
  • 업로더에서 다운로드하는 브라우저로 직접 전송 (WebRTC, WebTorrent 없음)으로 더 빠른 핸드셰이크
  • 업로더가 전송 진행 상황을 모니터링하고 중지할 수 있음
  • 비밀번호 보호 및 보고 기능을 통한 보안 및 안전 조치 강화
  • 여러 파일을 한 번에 업로드할 수 있으며, 다운로드하는 사람은 zip 파일로 받음
  • 서비스 워커를 통한 스트리밍 다운로드
  • Redis를 사용한 서버 상태의 외부 프로세스 저장

기술 스택 및 개발

  • Next.js, Tailwind, TypeScript, React, PeerJS (WebRTC용), View Transitions, Redis (선택 사항)
  • GitHub에서 소스 코드를 클론하고 pnpm을 사용하여 설치 및 실행 가능
  • Docker를 사용하여 FilePizza를 빌드하고 실행 가능

FAQ

  • 파일 전송 방식: 파일은 업로더의 브라우저에서 다운로드하는 사람의 브라우저로 직접 전송됨. 서버를 거치지 않음. WebRTC를 사용하여 파일 전송하며, 업로더는 전송 완료 시까지 브라우저 창을 열어 두어야 함.
  • 동시 다운로드 가능 여부: 가능함. 짧거나 긴 URL을 보내면 됨.
  • 파일 크기 제한: 브라우저가 처리할 수 있는 만큼의 크기
  • 브라우저를 닫으면: 파일 URL은 더 이상 작동하지 않음. 다운로드가 완료된 경우, 해당 다운로드하는 사람이 미완료 다운로드자에게 시드를 계속 제공하지만, 새로운 다운로드는 시작할 수 없음.
  • 파일 암호화 여부: 모든 WebRTC 통신은 DTLS를 통해 자동으로 암호화됨. 추가 보안을 위해 업로드에 비밀번호를 추가할 수 있음.

Read Entire Article