swoole 学习笔记

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

相关文章
相关标签/搜索