웹 소켓 (예 : socket.io)은 매우 빠르지 만 각 클라이언트에 직접 연결해야한다고 들었습니다. 비디오 호스트 용 파일을 업로드하는 것이 너무 수월합니까 많은 클라이언트/ 자주 업로드 하시겠습니까? 아니면 실패하고 그 경우에만 ajax을 사용할 수 있습니까?파일을 업로드 할 때 socket.io와 ajax의 +/-는 무엇입니까?
1
A
답변
2
파일 크기 및 클라이언트 연결 시간에 따라 달라집니다.
HTML5 FileAPI를 사용하여 업로드를 청크 한 다음 웹 소켓을 사용하여 데이터를 업로드하면 모든 요청과 함께 HTTP 헤더를 전송할 필요가 없기 때문에 전송되는 데이터의 양을 크게 줄일 수 있습니다. 예를 들어 1GB 파일을 5MB 덩어리로 분할하면 이러한 파일이 합쳐질 수 있습니다.
클라이언트가 지속적으로 연결되면 클라이언트에 푸시 할 새 정보가 없으면 웹 소켓이 긴 폴링을 수행 할 필요성을 줄여 서버에서 자원을 낭비 할 수 있습니다.
웹 소켓은 필요한 자원을 줄이지 만 모든 브라우저에서 사용할 수있는 것은 아닙니다.