page contents

第八节课-swoole-周星宇

一個很菜的程序猿

1.事件


2.安装php Event扩展

    2.1首先需要安装依赖库libevent

    wget -c https://github.com/libevent/libevent/releases/download/release-2.1.8-stable/libevent-2.1.8-stable.tar.gz -P /usr/local/src

    cd /usr/local/src

    tar -zxvf libevent-2.1.8-stable.tar.gz && cd libevent-2.1.8-stable

    ./configure --prefix=/usr/local/libevent-2.1.8

    make && make install 

    2.2安装event库

    wget -c http://pecl.php.net/get/event-2.3.0.tgz -P /usr/local/src

    cd /usr/local/src

    tar -zxvf event-2.3.0.tgz && cd event-2.3.0

    /usr/local/php/bin/phpize

    ./configure --with-php-config=/usr/local/php/bin/php-config --with-event-libevent-dir=/usr/local/libevent-2.1.8/

    make && make install

    2.3在php.ini添加下

    extension=event.so

    php -m | grep event 查看event模块是否安装成功

3.event注意事项:Event支持事件嵌套,但是不支持面向过程的方式嵌套只支持面向对象的方式嵌套如下方式不支持


4.Reactor模型与异步io

    (1). Reactor对象通过select监控客户端请求事件,收到事件后通过dispatch进行分发

    (2). 如果是建立连接请求事件,则由Acceptor通过accept处理连接请求,然后创建一个Handler对象处理连接完成后的后续业务处理

    (3). 如果不是建立连接事件,则Reactor会分发调用连接对应的Handler来响应

    (4). Handler会完成read->业务处理->send的完整业务流程

    注意:异步io就是reactor的一种模型


  • 发表于 2020-11-18 10:59
  • 阅读 ( 731 )

你可能感兴趣的文章

相关问题

0 条评论

请先 登录 后评论
百日慕晴
百日慕晴

2 篇文章

作家榜 »

  1. 轩辕小不懂 2403 文章
  2. 小柒 1799 文章
  3. Pack 1135 文章
  4. Nen 576 文章
  5. 王昭君 209 文章
  6. 文双 71 文章
  7. 小威 64 文章
  8. Cara 36 文章