入门指引

    • 新手入门教程: (已停更)

    强大的TCP/UDP Server框架,支持多线程,EventLoop,事件驱动,异步,Worker进程组,Task异步任务,毫秒定时器,SSL/TLS隧道加密。

    • swoole_http_server是的子类,内置了Http的支持
    • swoole_websocket_serverswoole_http_server的子类,内置了WebSocket的支持
    • swoole_redis_serverswoole_server的子类,内置了Redis服务器端协议的支持

    Client

    TCP/UDP/UnixSocket客户端,支持IPv4/IPv6,支持隧道加密,支持SSL双向证书,支持同步并发调用,支持异步事件驱动编程。

    EventLoop API,让用户可以直接操作底层的事件循环,将socketstream,管道等Linux文件加入到事件循环中。

    Async

    • swoole_timer 异步毫秒定时器,可以实现间隔时间或一次性的定时任务

    Swoole在2.0开始内置协程(Coroutine)的能力,提供了具备协程能力IO接口(统一在命名空间Swoole\Coroutine*)。

    协程可以理解为纯用户态的线程,其通过协作而不是抢占来进行切换。相对于进程或者线程,协程所有的操作都可以在用户态完成,创建和切换的消耗更低。Swoole可以为每一个请求创建对应的协程,根据IO的状态来合理的调度协程,这会带来了以下优势:

    开发者可以无感知的用同步的代码编写方式达到异步IO的效果和性能,避免了传统异步回调所带来的离散的代码逻辑和陷入多层回调中导致代码无法维护。

    Process

    进程管理模块,可以方便的创建子进程,进程间通信,进程管理。

    强大的内存区管理工具,像C一样进行指针计算,又无需关心内存的申请和释放,而且不用担心内存越界,底层全部做好了。

    Table

    基于共享内存和自旋锁实现的超高性能内存表。彻底解决线程,进程间数据共享,加锁同步等问题。