내 비디오 콜 툴을 위한 엔지니어링 결정
발행: (2026년 5월 25일 AM 10:47 GMT+9)
2 분 소요
원문: Dev.to
Source: Dev.to
WebChat
PeerJS 기반 브라우저‑대‑브라우저 영상 회의 앱으로, 저지연·고성능 실시간 통신을 제공합니다.
이 프로젝트를 통해 인프라 최적화 내부까지 깊이 파고들 수 있었습니다.
핵심 엔지니어링 결정
- Express.js, Socket.IO, PeerJS를 하나의 프로세스·단일 포트 아키텍처에 통합한 통합 시그널링 서버를 설계했습니다. 단일 명령으로 실행됩니다.
- 이 설계는 일반적인 다중 서비스 배포 제약을 없애고 현재(무료 티어) 단일 인스턴스에서도 원활히 동작합니다.
- PeerJS ID 중복 제거 로직을 적용해 중복 비디오 스트림 문제를 해결했습니다.
- URL 기반 세션 참여를 통해 동적 참여를 가능하게 했으며, 참가자는 자유롭게 나갔다가 다시 입장할 수 있습니다.
- 초저지연 미디어 교환과 빠른 UI 반응성에 중점을 두었습니다.
- ngrok을 사용해 로컬 개발 서버를 터널링함으로써, 로컬호스트 포트를 보안된 공개 URL로 노출시켜 다양한 디바이스와 네트워크 환경에서 테스트할 수 있게 했습니다.
스택
- PeerJS
- Socket.IO
- Express.js
- EJS
- Node.js