入门指引 [编辑本页]

Swoole虽然是标准的PHP扩展,实际上与普通的扩展不同。普通的扩展只是提供一个库函数。而swoole扩展在运行后会接管PHP的控制权,进入事件循环。当IO事件发生后,swoole会自动回调指定的PHP函数。

Swoole要求使用者必须具备一定的Linux/Unix环境编程基础,《学习Swoole需要掌握哪些基础知识》 本文列出了基础知识清单。

swoole_server

强大的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文件加入到事件循环中。

eventloop接口仅可用于socket类型的文件描述符,不能用于磁盘文件读写

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次

具体帮助文档地址:

https://wiki.swoole.com/wiki/page/1.html

最新文章

  1. 一次Mysql 死锁事故
  2. [转]PHP如何关闭notice级别的错误提示
  3. [多图]Windows 10 Build 10565今推送:优化界面菜单 Cortana改进
  4. nanosleep() -- 更精确的延迟 -----一个使用用例
  5. ABBYY应用到的行业有哪些
  6. 【CSS3】---颜色RGBA及渐变色
  7. 546C. Soldier and Cards
  8. 学习和理解C#中的事件
  9. oracle全托管驱动Oracle.ManagedDataAccess
  10. vs2012 不显示最近项目
  11. Microsoft dynamic 批量更新
  12. poj 2253 floyd最短路
  13. 手动创建Oracle实例
  14. 【翻译】Flume 1.8.0 User Guide(用户指南) source
  15. Unity3D编辑器扩展(五)——常用特性(Attribute)以及Selection类
  16. PHP中 PCRE正则表达式模式修饰符“u” 的使用。
  17. 嵌入式系统C编程之错误处理【转】
  18. MFS+Keepalived双机高可用热备方案操作记录
  19. 看看大网站都用什么操作系统和Web服务器
  20. PetaPoco源代码学习--3.Sql类

热门文章

  1. 学习 SSH
  2. Architectural Styles and the Design of Network-based Software Architectures
  3. <2013 08 09> __attribute__是GCC编译器特有语法
  4. 查找杀死指定进程delphi
  5. JS+PHP瀑布流效果(二)
  6. asp.net(c#)中String.Empty、NULL、"" 三者到底有啥区别和联系?
  7. ajax 请求后台数据返回异常 及 提示404方法名不存在
  8. margin无法居中原因
  9. Service degrade
  10. SpringBoot2.1.0 application.properties配置