• Swoole:重新定义PHP


    Swoole PHP语言的高性能网络通信框架,提供了PHP语言的异步多线程服务器,异步TCP/UDP网络客户端,异步MySQL,数据库连接池,AsyncTask,消息队列,毫秒定时器,异步文件读写,异步DNS查询。
    Swoole可以广泛应用于互联网、移动通信、企业软件、云计算、网络游戏、物联网、车联网、智能家居等领域。 使用PHP+Swoole作为网络通信框架,可以使企业IT研发团队的效率大大提升,更加专注于开发创新产品。

    官方网站:http://www.swoole.com/

    github:https://github.com/swoole/swoole-src

    php扩展包下载地址:http://pecl.php.net/package/swoole

    2. 安装与配置

    安装swoole:可pecl直接在线安装,或下载 releases版本的swoole编译安装

    pecl安装swoole扩展

    pecl不可用的请确认php安装目录的bin目录已加入系统变量

    # pecl install swoole

     2.12编译安装swoole扩展

    从此处下载: http://pecl.php.net/package/swoole

    # cd swoole
    # phpize
    # ./configure
    # make && make install

    2.2配置php.ini

    phpinfo()确认Configuration File (php.ini) Path

    添加:

    extension=swoole.so

    重启Apache查看php扩展库

    # service httpd restart
    # php -m

    确认swoole已添加

    作为socket客户端示例

    $client = new swoole_client(SWOOLE_SOCK_TCP, SWOOLE_SOCK_SYNC); //同步阻塞
    $ret = $client->connect('127.0.0.1', 9501, 0.5, 0);
    $client->send("hello world
    ");
    $data = $client->recv(1024);
    echo $data;
    unset($client);

    类的构造方法,第一个参数是socket的类型,目前支持SWOOLE_SOCK_UDP/SWOOLE_SOCK_TCP。第二个参数 SWOOLE_SOCK_SYNC表示是同步阻塞来执行的。Swoole已经设置过超时,就算没有收到数据包,在超过约定时间后也会返回的。

    connect方法用来连接到Server。参数分别是Host、Port、超时时间单位是秒0.5表示500ms、是否启用UDP connect。

    send方法用来发送数据,recv方法来接收数据,recv方法支持第二个参数,如果第二个参数为true,表示会等到所有数据到来才会返回。

    析构对象时会自动close此socket,所以没有提供close方法。

  • 相关阅读:
    json字符串数组判断其中
    json字符串数组判断其中
    jquery select chosen禁用某一项option
    数据库培训知识
    人员管理模块代码总结2015/8/12整理
    正则表达式在STARLIMS中的应用总结
    控件属性表
    Form-公共代码
    Server-Script公共代码
    Celient-Script公共代码
  • 原文地址:https://www.cnblogs.com/mr-amazing/p/4939588.html
Copyright © 2020-2023  润新知