swoole 文件IO方式
来源:互联网 发布:淘宝批发货源网 编辑:程序博客网 时间:2024/06/03 15:17
Swoole支持2种类型的异步文件读写IO,可以使用swoole_async_set来设置AIO模式:.
Linux原生异步IO (AIO模式:SWOOLE_AIO_LINUX)
基于Linux Native AIO系统调用,是真正的异步IO,并非阻塞模拟。
优点:
所有操作均在一个线程内完成,不需要开线程池
不依赖线程执行IO,所以并发可以非常大
缺点:
只支持DriectIO,无法利用PageCache,所有对文件读写都会直接操作磁盘
写入数据的size必须为512整数倍数
写入数据的offset必须为512整数倍数
线程池模式异步IO (AIO模式: SWOOLE_AIO_BASE)
基于线程池模拟实现,文件读写请求投递到任务队列,然后由AIO线程读写文件,完成后通知主线程。AIO线程本身是同步阻塞的。所以并非真正的异步IO。
优点:
可以利用操作系统PageCache,读写热数据性能非常高,等于读内存
可修改thread_num项设置启用的AIO线程数量
缺点:
并发较差,不支持同时读写大量文件,最大并发受限与AIO的线程数量
0 0
- swoole 文件IO方式
- swoole IO处理模型
- 查看IO文件存储方式
- 文件IO方式操作GPIO
- swoole深入学习 5. AsyncIO 异步IO
- swoole
- swoole
- io几种读取文件方式
- 使用文件IO操作GPIO SysFs方式
- Linux操作GPIO(文件IO方式)
- IO流丶复制文件方式
- [李景山php] swoole 异步文件读取
- [李景山php] swoole 异步 文件写入
- linux 文件状态标识和IO操作方式
- java IO操作,追加文件的三种方式
- io文件操作(多种读取方式-字节,字符,行,随机)
- io和nio的文件读取方式的不同
- IO(七、)复制文件第二种方式
- 轮廓检测
- Sphinx全文检索之PHP使用教程
- mysql服务器cpu使用率过高100%
- 记一下jar包的封装
- 一个很值得思考的问题,求解决!
- swoole 文件IO方式
- rocketmq总体理解
- Docker中使用supervisord不能停止docker解决
- 我的读书心得
- javaw.exe in your current path的解决方法
- 二分(最小值当中的最大值)_POJ 2456 Aggressive cows
- java的浅拷贝与深拷贝
- Windows、linux双系统,如果grub2可以使用,别用EasyBCD
- Install JD-GUI on Mac OSX