php扩展学习之深入学习和了解Swoole异步通信框架
如果你使用php很久了,但是还不了解什么是swoole的话,那说明你对php还不是彻底了解,那什么是swoole呢,它有什么作用?
简单点的说swoole是php异步、并行、高性能的网络通信引擎,我们通常了解的异步是web端的ajax技术,属于客户端的异步通信,而服务端也可以做到异步通信,这样就能实现很多Web端实现不了的功能,虽然很多人以为异步通信有ajax就够了,这是非常片面的,要知道ajax的异步通信在每次请求的时候都会让服务端的httpd占用非常高的内存,遇到流量高的系统(比如游戏)需要实时通信的,如果我们完全依赖于ajax请求,会很快让服务端崩掉,这时候根本就无法让系统保持长时间的运行。而swoole的websocket技术就不会出现这种问题,客户端只需要通过swoole和服务端建立连接,就能保持长久的通信,也不会占用太大的内存。
其实swoole是php的一个扩展,与其它普通的扩展不同的是,swoole在运行之后会接管php的控制权,随后的一些逻辑会通过C语言来运行,最后再将结果回调给php,虽然接管了php的控制权,但是并不影响php环境的运行,也就是服务端可以正常运行,说的直白点就是通过php的代码来运行c语言的服务,而我们只需要学会使用php的代码就足够了,这是不是非常的强大,这只是说了swoole的基本逻辑,想要更深入了解的话,还需要学习swoole。
这是一套非常全面的swoole教程,全套教程共有6个章节,一共只有1.7G,下载之后是一个压缩包,里面的教程讲解的非常全面,课程目录如下:
第1章:简介及安装
|--1.简介
|--2.安装
第2章:服务器及客户端
|--1.TCP服务器
|--2.TCP服务器
|--3.UDP服务器
|--4.Web服务器
|--5.WebSocket服务器
|--6.定时器
|--7.异步TCP服务器
|--8.TCP客户端
|--9.异步TCP客户端
第3章:进程
|--10.进程创建
|--11.进程事件
|--12.进程队列通信
|--13.信号触发
第4章:锁管理
|--1.锁机制
|--2.DNS查询
第5章:异步IO
|--1.异步文件读取
|--2.异步文件写入
|--3.异步事件
|--4.异步mysql操作
第6章:IM通信案例
|--案例