• php的异步并行扩展swoole


    Swoole是PHP的异步并行扩展,有点像Node.js,但swoole既支持同步又支持异步,比node更强大。Swoole扩展是基于epoll高性能事件轮询,并且是多线程的,性能非常好。

    Swoole除了提供网络Server/Client的功能之外,还提供了Task异步任务管理器,可以使你的程序中某些处理慢的函数异步去执行。

    本文说下如何使用swoole扩展。

    第一步 安装

    swoole仅支持Linux/FreeBSD/Mac,如果你使用的是Windows系统,请安装一个虚拟机,VirtualBox/VMWare都可以。然后在虚拟机里安装Linux。

    swoole已经加入到PHP的官方扩展库中,所以在Linux系统里只需要执行

    Shell代码  收藏代码
    1. pecl install swoole  

    即可安装。安装完后修改php.ini,加入extension=swoole.so。然后查看php -m 或者 phpinfo,如果出现swoole证明安装成功了。

    第二步 编写Server程序

    创建一个PHP脚本文件server.php,代码内容:

    Php代码  收藏代码
    1. $serv = new swoole_server("127.0.0.1", 9501);  
    2. $serv->on('connect', function ($serv, $fd){  
    3.     echo "Client:Connect. ";  
    4. });  
    5. $serv->on('receive', function ($serv, $fd, $from_id, $data) {  
    6.     $serv->send($fd, 'Swoole: '.$data);  
    7. });  
    8. $serv->on('close', function ($serv, $fd) {  
    9.     echo "Client: Close. ";  
    10. });  
    11. $serv->start();  

     然后执行:

    Java代码  收藏代码
    1. php server.php  

     使用telnet连接到你的服务器:

    Java代码  收藏代码
    1. telnet 127.0.0.1 9501  
    2. > hello world  
    3. > Swoole: hello world  

     是不是非常简单,仅仅11行代码就创建了一个异步高并发的TCPServer,通过底层的网络来进行数据收发。接下来就是你就可以做你想要做的事情了,即时聊天,文件收发,通信等等。

    转自http://matyhtf.iteye.com/blog/2009690

  • 相关阅读:
    selenium 操作过程中,元素标红高亮的两种实现方式
    python pytest测试框架介绍五---日志实时输出
    pytest 3.9在python 2.7下的一个bug
    Qt assis tant 帮助集合文档 -由.qhcp生成.qhc
    Qt assistant .qch显示乱码问题
    qhelpgenerator 由qhp生成qch过程碰到的问题 记录
    Qt creator新建widget项目....no valid kits found.....
    Qt creator 账号
    Qt 写Excel
    Qt获取主窗口
  • 原文地址:https://www.cnblogs.com/liuwenbohhh/p/4453913.html
Copyright © 2020-2023  润新知