您当前的位置: 首页 > 慢生活 > 程序人生 网站首页程序人生
workerman接口runAll运行多个不同woker实例(不同协议)
发布时间:2021-12-02 22:42:32编辑:雪饮阅读()
runAll
void Worker::runAll(void)
运行所有Worker实例。
注意:
Worker::runAll()执行后将永久阻塞,也就是说位于Worker::runAll()后面的代码将不会被执行。所有Worker实例化应该都在Worker::runAll()前进行。
参数
无参数
返回值
无返回
实例:
<?php
use Workerman\Worker;
use Workerman\Connection\TcpConnection;
require_once __DIR__ . '/vendor/autoload.php';
$http_worker = new Worker("http://0.0.0.0:8585");
$http_worker->onMessage = function(TcpConnection $connection, $data)
{
$connection->send('hello http');
};
$ws_worker = new Worker('websocket://0.0.0.0:8484');
$ws_worker->onMessage = function(TcpConnection $connection, $data)
{
$connection->send('hello websocket');
};
// 运行所有Worker实例
Worker::runAll();
?>
实例运行:
[root@izj6c2jeancylo0ppo4vz5z workerman]# php test.php start
Workerman[test.php] start in DEBUG mode
------------------------------------------- WORKERMAN --------------------------------------------
Workerman version:4.0.22 PHP version:7.0.33
-------------------------------------------- WORKERS ---------------------------------------------
proto user worker listen processes status
tcp root none http://0.0.0.0:8585 1 [OK]
tcp root none websocket://0.0.0.0:8484 1 [OK]
--------------------------------------------------------------------------------------------------
Press Ctrl+C to stop. Start success.
http连接:
[root@izj6c2jeancylo0ppo4vz5z ~]# elinks 127.0.0.1:8585 -dump
hello http
websocket连接并向服务端发送了消息时:
关键字词:workerman,runAll,worker,协议
相关文章
- workerman接口stopAll及多线程请求测试
- workerman利用Timer库的persistent属性实现仅定时执行
- workerman利用daemonize属性实现代码层控制进程启动方
- workerman利用reloadable属性实现新增业务代码载入并
- workerman属性stdoutFile(输出重定向)及daemonize实现脚
- workerman利用属性user实现指定用户运行进程
- workerman利用属性pidFile自定义进程pid文件
- workerman利用属性connections遍历向客户端定时发消息
- workerman利用logFile属性指定自身运行日志存储路径(不
- workerman端口复用reusePort属性实现同一个入口监听多