Maison > cadre php > Workerman > Comment utiliser Workman

Comment utiliser Workman

(*-*)浩
Libérer: 2019-12-05 10:13:05
original
2838 Les gens l'ont consulté

Comment utiliser Workman

Workerman est un framework de messagerie instantanée de socket PHP asynchrone open source hautes performances. Prend en charge une concurrence élevée et une stabilité ultra-élevée, et est largement utilisé dans les applications mobiles, les communications mobiles, les applets WeChat, les serveurs de jeux mobiles, les jeux en ligne, les salons de discussion PHP, les communications matérielles, les maisons intelligentes, l'Internet des véhicules, l'Internet des objets et d'autres domaines. . développement. (Apprentissage recommandé : tutoriel Workerman )

Prend en charge les connexions longues TCP, prend en charge Websocket, HTTP et d'autres protocoles, et prend en charge les protocoles personnalisés. Il possède de nombreux composants hautes performances tels que Mysql asynchrone, Redis asynchrone, Http asynchrone, client MQTT IoT, file d'attente de messages asynchrone, etc.

workerman lui-même est un framework de serveur multi-processus PHP avec des modules pour la gestion des processus PHP et la communication par socket, donc peut s'exécuter indépendamment sans s'appuyer sur des conteneurs tels que php-fpm, nginx ou apache.

1. Téléchargez d'abord le framework Workerman officiel

2. Côté serveur

dans workerman Créez un nouveau fichier dans le répertoire racine du framework

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 (守护进程)启动
Copier après la connexion

3 Code frontal

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);
}
Copier après la connexion

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();
Copier après la connexion

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Étiquettes associées:
source:php.cn
Déclaration de ce site Web
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn
Tutoriels populaires
Plus>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal