WebSocket

WebSocket은 웹 브라우저 또는 클라이언트 애플리케이션과 웹 서버 애플리케이션이 하나의 전이중 연결을 사용하여 통신할 수 있게 하는 표준 프로토콜입니다.

HTTP는 두 애플리케이션 사이의 실시간 장기 전이중 통신에 적합하게 디자인되어 있지 않습니다. 많은 경우 사용자의 웹 서버 애플리케이션 또는 서블릿은 실시간 장기 전이중 대화에서 클라이언트 브라우저 또는 애플리케이션과 통신하기를 원합니다. 즉, 두 애플리케이션은 앞뒤로 자유롭게 데이터를 읽고 쓰길 원합니다. 이 유형의 애플리케이션의 한 예로는 주식 거래자의 웹 브라우저에서 변경되는 현재 환율을 지속적으로 표시하는 애플리케이션이 있습니다. 이 유형의 통신을 수행하기 위해 기존 HTTP 기술을 포함하는 현재 솔루션은 다루기 힘들고 비효율적입니다. 브라우저와 서버 간 지속적인 양방향 통신을 위해 HTTP 솔루션은 대부분 폴링, 단방향 트래픽만 처리하는 두 개의 열린 HTTP 연결 또는 둘 다로 구성됩니다.

WebSocket은 표준 HTTP 요청-응답 시퀀스를 사용하여 연결을 설정합니다. 연결이 설정되면 WebSocket API가 비동기 전이중 방식으로 설정된 연결을 통해 데이터를 읽고 쓰는 데 필요한 읽기 및 쓰기 인터페이스를 제공합니다. WebSocket은 양쪽에서 연결을 비동기식으로 닫는 데 필요한 인터페이스도 제공합니다.

WebSocket은 표준 HTTP 요청-응답 시퀀스를 사용하여 연결을 설정하므로 연결이 시작되면 HTTP 연결과 동일한 방식으로 방화벽 및 프록시를 통해 연결됩니다. WebSocket을 사용하려면 동일한 연결에서의 동시 읽기 및 쓰기를 포함한 전이중 통신이 필요합니다. WebSphere 웹 서버 플러그인은 전이중 통신을 지원하지만 기타 방화벽 및 프록시에서 이 지원을 사용하려면 수정이 필요합니다. 또한 WebSocket은 보안 연결 및 데이터 전송을 위해 SSL을 사용할 수 있습니다. 이 프로토콜은 HTTP 프로토콜과 동일한 방법으로 SSL을 사용합니다.

Liberty WebSocket 기능은 다음과 같은 스펙을 구현합니다.

Liberty는 WebSocket 1.0 및 WebSocket 1.1 스펙을 지원합니다. WebSocket 1.0과 비교하여 WebSocket 1.1은 더 강력한 방법으로 메시지 핸들러를 지정할 수 있습니다.

WebSocket 프로토콜을 구현하는 샘플 프로그램을 WASdev.net에서 다운로드할 수 있습니다. Liberty에서 WebSocket 사용에 대한 검토는 WASdev.net에서 WebSocket 샘플 애플리케이션을 참조하십시오.


주제의 유형을 표시하는 아이콘 개념 주제

파일 이름: cwlp_websockets.html