> PHP 프레임워크 > Workerman > WorkerMan에서 프로토콜을 만들어야 하는 이유는 무엇입니까?

WorkerMan에서 프로토콜을 만들어야 하는 이유는 무엇입니까?

(*-*)浩
풀어 주다: 2020-01-02 17:49:54
원래의
1953명이 탐색했습니다.

WorkerMan에서 프로토콜을 만들어야 하는 이유는 무엇입니까?

TCP는 스트림 기반이므로 클라이언트가 보낸 요청 데이터가 물처럼 서버로 흘러 들어갑니다. 서버는 데이터 도착을 감지한 후 여부를 확인해야 합니다. 한 요청의 데이터 중 일부만 서버에 도달할 수도 있고 여러 요청이 함께 서버에 도달할 수도 있기 때문에 데이터는 완전합니다.

모든 요청이 도착했는지 확인하거나 연결된 여러 요청에서 요청을 분리하는 방법에는 일련의 통신 프로토콜이 필요합니다.

왜 워커맨에서 합의를 해야 할까요?

전통적인 PHP 개발은 웹, 기본적으로 HTTP 프로토콜을 기반으로 합니다. HTTP 프로토콜의 구문 분석 및 처리는 WebServer에서 단독으로 수행되므로 개발자는 신경 쓰지 않습니다. 합의가 중요합니다. (권장 학습: workerman tutorial )

그러나 HTTP가 아닌 프로토콜을 기반으로 개발해야 하는 경우 개발자는 프로토콜을 고려해야 합니다.

WorkerMan에서 이미 지원되는 프로토콜

WorkerMan은 현재 HTTP, 웹소켓, 텍스트 프로토콜(부록 설명 참조), 프레임 프로토콜(부록 설명 참조)을 지원합니다. ), ws 프로토콜(부록 설명 참조)을 사용하려면 이러한 프로토콜을 기반으로 통신해야 하는 경우

use Workerman\Worker;
// websocket://0.0.0.0:2345 表明用websocket协议监听2345端口
$websocket_worker = new Worker('websocket://0.0.0.0:2345');
// text协议
$text_worker = new Worker('text://0.0.0.0:2346');
// frame协议
$frame_worker = new Worker('frame://0.0.0.0:2347');
// tcp Worker,直接基于socket传输,不使用任何应用层协议
$tcp_worker = new Worker('tcp://0.0.0.0:2348');
// udp Worker,不使用任何应用层协议
$udp_worker = new Worker('udp://0.0.0.0:2349');
// unix domain Worker,不使用任何应用层协议
$unix_worker = new Worker('unix:///tmp/wm.sock');
로그인 후 복사
와 같이 Worker 초기화 시 프로토콜을 지정해야 합니다.

위 내용은 WorkerMan에서 프로토콜을 만들어야 하는 이유는 무엇입니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

관련 라벨:
원천:php.cn
본 웹사이트의 성명
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.
인기 튜토리얼
더>
최신 다운로드
더>
웹 효과
웹사이트 소스 코드
웹사이트 자료
프론트엔드 템플릿