博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
Linux 安装php扩展 swoole
阅读量:4705 次
发布时间:2019-06-10

本文共 1749 字,大约阅读时间需要 5 分钟。

swoole是一个PHP的异步、并行、高性能网络通信引擎,使用纯C语言编写,提供了PHP语言的异步多线程服务器,异步TCP/UDP网络客户端,异步MySQL,异步Redis,数据库连接池,AsyncTask,消息队列,毫秒定时器,异步文件读写,异步DNS查询。 Swoole内置了Http/WebSocket服务器端/客户端、Http2.0服务器端。

Swoole可以广泛应用于互联网、移动通信、企业软件、云计算、网络游戏、物联网(IOT)、车联网、智能家居等领域。 使用PHP+Swoole作为网络通信框架,可以使企业IT研发团队的效率大大提升,更加专注于开发创新产品。

 

注意事项:

1、server.php中的ip地址必须是外网可访问地址 123.57.232.99,不能为localhost
1、安装
# wget https://github.com/swoole/swoole-src/archive/swoole-1.7.6-stable.tar.gz 
# tar zxvf swoole-1.7.6-stable.tar.gz
# cd swoole-1.7.6-stable 
# phpize 
# ./configure 
# make  && make install 
 
提示:
Build complete.
Don't forget to run 'make test'.
 
Installing shared extensions:    /usr/local/php/lib/php/extensions/no-debug-non-zts-20131226/
说明安装成功
2、php加载swoole扩展
extension_dir = "/usr/local/php/lib/php/extensions/no-debug-non-zts-20131226/"
extension=swoole.so
 
3、重启服务
service php-fpm restart
service nginx restart
4、测试,查看phpinfo信息,如下图所示:
5、代码测试
 
server.php代码:
<?php
$serv = new swoole_server("123.57.232.99", 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 "Client: Close.\n";
});
$serv->start();
?>
 
 
client.php代码
<?php
$client = new swoole_client(SWOOLE_SOCK_TCP);
if (!$client->connect('123.57.232.99', 55152, -1))
{
    exit("connect failed. Error: {$client->errCode}\n");
}
$client->send("hello world\n");
echo $client->recv();
$client->close();
?>
 
 
首先启动服务:
[root@iZ25l6q4losZ swoole]# php server.php
Client:Connect.
 
然后linux终端 telnet测试
# telnet 123.57.232.99 55152
Trying 123.57.232.99...
Connected to 123.57.232.99.
Escape character is '^]'.
rr
Swoole: rr
测试
Swoole: 测试
 

转载于:https://www.cnblogs.com/zwt0626/p/9023429.html

你可能感兴趣的文章
Linux IO模式及 select、poll、epoll详解
查看>>
Log4j知识汇总
查看>>
python生成.exe文件
查看>>
PHP面向对象(OOP)----分页类
查看>>
监听SD卡状态
查看>>
vs2017 EFCore 迁移数据库命令
查看>>
serialVersionUID的作用
查看>>
liunx trac 插件使用之GanttCalendarPlugin
查看>>
(14)嵌入式软件开发工程师技能要求总结
查看>>
[hackerrank]Closest Number
查看>>
volatile关键字
查看>>
[Android] TabLayout设置下划线(Indicator)宽度
查看>>
<潭州教育>-Python学习笔记@条件与循环
查看>>
web自动化之验证码识别解决方案
查看>>
netty接收大文件的方法
查看>>
软件工程设计之四则运算
查看>>
SpringMVC @ResponseBody 406
查看>>
Partial Tree UVALive - 7190(完全背包)
查看>>
Ubuntu安装搜狗拼音教程
查看>>
Happy Number
查看>>