旗下导航:搜·么
当前位置:网站首页 > PHP框架 > Swoole > 正文

swoole处理了什么问题【swoole】,swoole

作者:搜搜PHP网发布时间:2019-12-13分类:Swoole浏览:97


导读:php现有的运用体式格局都是基于http的,关于须要疾速及时相应的状况比较乏力,比方网络游戏或许推送效劳平常都须要与用户长期保持一个tcp衔接以便及时相应和推送信息。s...

php现有的运用体式格局都是基于http的,关于须要疾速及时相应的状况比较乏力,比方网络游戏或许推送效劳平常都须要与用户长期保持一个tcp衔接以便及时相应和推送信息。

swoole就是处置惩罚如许运用场景的。 (引荐进修: swoole视频教程)

Swoole的完成

swoole运用纯C编写,不依靠其他第三方库。

swoole并没有效libevent,所以不须要装置libevent

swoole并不依靠php的stream/sockets/pcntl/posix/sysvmsg等扩大

socket部份

swoole运用底层的socket体系挪用。

IO事宜轮回

主历程的事宜轮回运用select/poll,由于主线程中的文件描述符只要几个,运用select/poll即可

reactor线程/worker历程中运用epoll/kqueue

task历程没有事宜轮回,历程会轮回壅塞读取管道

有很多人运用strace -p去检察swoole主历程只能看到poll体系挪用。准确的检察要领是strace -f -p

多历程/多线程

多历程运用fork()体系挪用

多线程运用pthread线程库

EventFd

Swoole中运用了eventfd作为线程/历程间音讯关照的机制。

Timerfd

Swoole运用timerfd来完成定时器

SIgnalfd

swoole中运用了signalfd来完成对信号的屏障和处置惩罚。能够有效地防止线程/历程被信号打断,体系挪用restart的问题。在主历程中reactor线程不会接收任何信号。

以上就是swoole处置惩罚了什么问题的细致内容,更多请关注ki4网别的相干文章!

标签:swoole