1.安装准备php
php-5.3.10 // 或更高版本 gcc-4.4 //或更高版本 make autoconf
2.安装swoole扩展git
wget https://github.com/swoole/swoole-src/archive/swoole-1.8.2-stable.tar.gz tar -zxvf swoole-1.8.2-stable cd swoole-src-swoole-1.8.2-stable/ /usr/local/php/bin/phpize ./configure make && make install
3.配置php支持swoolegithub
编辑php.ini 在其中加入扩展支持 extension=swoole.so
4.swoole 服务端代码 server.phpswoole
<?php /** * 服务端 */ $serv = new swoole_server("0.0.0.0", 9501); $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();
5.swoole 客户端代码 client.phpsocket
<?php $client = new swoole_client(SWOOLE_SOCK_TCP, SWOOLE_SOCK_ASYNC); $client->on("connect", function($cli) { $cli->send("hello world\n"); }); $client->on("receive", function($cli, $data){ echo "Receive: $data\n"; }); $client->on("error", function($cli){ echo "connect fail\n"; }); $client->on("close", function($cli){ echo "close\n"; }); $client->connect('127.0.0.1', 9501, 0.5);
6.测试代码测试
在cli命令模式下输入 php ./server.php 从新再开一个窗口 php ./client.php
能够用 telnet检测
如:telnet 127.0.0.1 8088spa
服务端:code
客户端:server
如上,表示服务端启动,客户端链接服务端返回消息,一个socket闭环造成
swoole 开发者头条blog