Maison> cadre php> Swoole> le corps du texte

swoole支持多端口不同协议吗

(*-*)浩
Libérer: 2019-12-06 14:14:48
original
2316 Les gens l'ont consulté

swoole支持多端口不同协议吗

Swoole-1.8.0新增了对多端口混合协议的支持。Server可以监听多个端口,每个端口都可以设置不同的协议处理方式(set)和回调函数(on)。SSL/TLS传输加密也可以只对特定的端口启用。(推荐学习:swoole视频教程

未调用set方法,设置协议处理选项的监听端口,默认继承主服务器的设置

未调用on方法,设置回调函数的监听端口,默认使用主服务器的回调函数

监听端口返回的对象类型为swoole_server_port

监听端口的swoole_server_port对象,可以调用set和on方法,使用方法与swoole_server完全一致

监听端口只能设置少量特定的选项,只能设置数据收发的相关事件回调函数

不同监听端口的回调函数,仍然是相同的Worker进程空间内执行

主服务器是WebSocket或Http协议,新监听的TCP端口默认会继承主Server的协议设置。必须单独调用set方法设置新的协议才会启用新协议

监听新端口

$port1 = $server->listen("127.0.0.1", 9501, SWOOLE_SOCK_TCP); $port2 = $server->listen("127.0.0.1", 9502, SWOOLE_SOCK_UDP); $port3 = $server->listen("127.0.0.1", 9503, SWOOLE_SOCK_TCP | SWOOLE_SSL);
Copier après la connexion

设置网络协议

$port1->set([ 'open_length_check' => true, 'package_length_type' => 'N', 'package_length_offset' => 0, 'package_max_length' => 800000,] ); $port3->set([ 'open_eof_split' => true, 'package_eof' => "\r\n", 'ssl_cert_file' => 'ssl.cert', 'ssl_key_file' => 'ssl.key',] );
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
Derniers articles par auteur
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal
À propos de nous Clause de non-responsabilité Sitemap
Site Web PHP chinois:Formation PHP en ligne sur le bien-être public,Aidez les apprenants PHP à grandir rapidement!