>  기사  >  PHP 프레임워크  >  워커맨 사용법

워커맨 사용법

(*-*)浩
(*-*)浩원래의
2019-12-05 10:13:052763검색

워커맨 사용법

Workerman은 오픈 소스 고성능 비동기 PHP 소켓 인스턴트 메시징 프레임워크입니다. 높은 동시성 및 매우 높은 안정성을 지원하며 모바일 앱, 모바일 통신, WeChat 애플릿, 모바일 게임 서버, 온라인 게임, PHP 채팅방, 하드웨어 통신, 스마트 홈, 차량 인터넷, 사물 인터넷 및 기타 분야에서 널리 사용됩니다. . 개발. (추천 학습: workerman tutorial)

TCP 긴 연결을 지원하고 Websocket, HTTP 및 기타 프로토콜을 지원하며 사용자 정의 프로토콜을 지원합니다. 비동기 Mysql, 비동기 Redis, 비동기 Http, MQTT IoT 클라이언트, 비동기 메시지 대기열 등과 같은 많은 고성능 구성 요소가 있습니다.

workerman 자체는 PHP 프로세스 관리 및 소켓 통신용 모듈을 갖춘 PHP 다중 프로세스 서버 프레임워크이므로 php-fpm, nginx 또는 apache와 같은 컨테이너에 의존하지 않고 독립적으로 실행할 수 있습니다.

1. 먼저 공식 Workerman 프레임워크를 다운로드합니다

2. 서버측으로

작업자 프레임워크의 루트 디렉터리에 새 파일을 만듭니다

use Workerman\Worker;
require_once __DIR__ . '/Workerman/Autoloader.php';
// 注意:使用的是websocket协议
$ws_worker = new Worker("websocket://0.0.0.0:2000"); //这里最好是0.0.0.0
// 启动4个进程对外提供服务
$ws_worker->count = 4;
$ws_worker->onWorkerStart = function($ws_worker){ 
};
$ws_worker->onConnect = function($ws_worker){ 
};
$ws_worker->onMessage = function($connection, $data)use($ws_worker){ //如果想用$ws_worker的话需要 use传进来
};
$worker->onClose = function($connection){ 
};
php yaofile.php start  debug模式 启动
php yaofile.php start -d (守护进程)启动

3.

ws = new WebSocket("ws://47.90.81.150:2000"); //服务器的ip
ws.onopen = function() {
console.log("连接成功");
}
ws.onmessage = function(e) {
console.log("收到服务端的消息:" + e.data);
}
foreach($ws_worker->connections as $connection) {
$connection->send($cachearray);
}

4. 클라이언트로서 끝

use Workerman\Connection\AsyncTcpConnection; //要引用这个文件
$con = new AsyncTcpConnection('ws://api.huobi.pro:443/ws'); //远程服务器的连接
// 设置以ssl加密方式访问,使之成为wss 
$con->transport = 'ssl';
$con->onConnect = function($con) {
$con->send($data);
}
$con->onMessage = function($con, $data) {
};
$con->connect();

위 내용은 워커맨 사용법의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

성명:
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.