swoole 扩展

  提供了PHP语言的异步多线程服务器 异步tcp/udp 网络客户端 异步mysql 异步redis 数据库连接池 AsyncTask 消息队列

毫秒级定时器 异步文件读写 异步dns(域名系统 域名和IP地址互相映射的一个分布式数据库)查询

  swoole IO事件阻塞等待 当一个请求未处理完时,下一个请求无法处理。

  采用异步非阻塞方法,当前请求未处理完成,可以接受下一个请求

  

  协程(微线程)由一个线程调用,类似中断概念

  业务逻辑部分使用多进程同步阻塞方式运行  

  Swoole 底层内置异步非阻塞 多线程的网络IO服务器。仅需处理事件回调 无需关心底层

    

  全异步框架Nginx Tornado Node.js  swoole既支持全异步 也支持同步

  

  swoole 虽然是标准的PHP扩展 但swoole扩展在运行后会接管PHP的控制权,进入事件循环 当IO事件发生 swoole回调指定函数

    swoole_server

  设置各接口参数 还可以实现SSL/TLS 隧道加密

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

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

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

     

    swoole_event

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

  • swoole_async

    异步IO接口,提供了 异步文件系统IO,定时器,异步DNS查询,异步MySQL等API,异步Http客户端,异步Redis客户端。

    • swoole_timer 异步毫秒定时器,可以实现间隔时间或一次性的定时任务
    • swoole_async_read/swoole_async_write 文件系统操作的异步接口
    • swoole_process

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

      swoole_buffer

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

      swoole_table

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

      swoole_table的性能可以达到单线程每秒读写100W次

posted @ 2018-03-12 17:28  haha瓜  阅读(216)  评论(0编辑  收藏  举报