swoole是一个PHP的异步、并行、高性能网络通讯引擎,使用纯C语言编写,提供了PHP语言的异步多线程服务器,异步TCP/UDP网络客户端,异步MySQL,异步Redis,数据库链接池,AsyncTask,消息队列,毫秒定时器,异步文件读写,异步DNS查询。 Swoole内置了Http/WebSocket服务器端/客户端、Http2.0服务器端。 Swoole能够普遍应用于互联网、移动通讯、企业软件、云计算、网络游戏、物联网(IOT)、车联网、智能家居等领域。 使用PHP+Swoole做为网络通讯框架,能够使企业IT研发团队的效率大大提高,更加专一于开发创新产品。 注意事项: 一、server.php中的ip地址必须是外网可访问地址 http://47.105.128.101,不能为localhostphp
一、安装linux
提示: Build complete. Don't forget to run 'make test'. Installing shared extensions: /usr/lib64/php/modules/ 说明安装成功nginx
二、php加载swoole扩展git
extension_dir = "/usr/lib64/php/modules/" extension=swoole.sogithub
三、重启服务 service php-fpm restart数据库
service nginx restart服务器
四、测试,查看phpinfo信息,以下图所示:swoole
五、代码测试 server.php代码网络
<?php多线程
$serv = new \swoole_server("127.0.0.1", 55152);
$serv->on('connect', function ($serv, $fd){
echo "Client:Connect.\n";
});
$serv->on('receive', function ($serv, $fd, $from_id, $data) {
$serv->send($fd,'Swoole:'.$data);
});
$serv->on('close', function ($serv, $fd) {
echo "Clinet:close.\n";
});
$serv->start();
?>
client.php代码
<?php
$client = new \swoole_client(SWOOLE_SOCK_TCP);
//var_dump($client);exit;
if (!$client->connect('127.0.0.1', 55152, -1))
{
exit("connect failed. Error:{$client->errCode}\n");
}
$client->send("hello world\n");
echo $client->recv();
$client->close();
?>
首先启动服务:(只可在命令启动)
而后linux终端 telnet测试
# telnet 47.105.128.101 55152
小知识点 php--info
php -r "echo swoole_version();" //查看当前用的Swoole的版本号