v1.6
v1.6.13
修复异常连接导致服务器死循环的BUG
修复swReactorEpoll_del抛出WARN的BUG
v1.6.11
task_worker启动时也会调用onWorkerStart,可以用worker_id参数来区分task_worker还是普通的worker
增加onWorkerError回调,用来捕获worker进程异常退出
使用 $server->setting属性可以得到运行时配置数组
swoole_server::task和taskwait可以指定发送给哪个task_worker进程
添加对字节流协议的分包支持,参见 examples/length_check_server.php & length_check_client.php
增加 package_eof 参数,等同于 data_eof
v1.6.10
简化异步客户端,当onReceive时不再需要调用$cli->recv,直接拿到数据。当onClose发生时也不需要再次调用$cli->close
connect支持填写域名,swoole会自动进行DNS查询
当connect失败时,如果直接仍然调用send/recv,会抛出错误
connection信息中增加connect_time和last_time,记录连接的时间和最后一次发送数据的时间
增加TCP长连接心跳机制支持
重构data_buffer功能
v1.6.9
增加到pecl.php.net,可通过pecl install swoole来安装
修复task模块的bug
增加基于unixsock的争抢模式实现
v1.6.8
解决某些系统下worker进程段错误问题
增加swoole_server_taskwait函数
解决UDP多进程在FDMOD模式下的错误问题
v1.6.7
线程的数量加入限制最大不超过CPU数的4倍
进程数量超过CPU数的100倍后会抛一一条警告信息
修复onStart不能addtimer的bug
修复php5.5下异步mysql编译失败问题
poll_thread_num改为reactor_num
v1.6.6
对FreeBSD/MacOS下的kqueue做了优化
默认使用epoll/kqueue作为事件轮询
swoole_client内存泄露问题解决
对主动发起close做优化,无需主进程再次发送通知
task_worker使用UnixSock-UDP通信方式
对Epoll的RST事件优化
v1.6.5
启动100个worker进程时可能crash的问题解决
支持MacOS
定时器重构,支持1ms粒度,并可用于Worker进程
v1.6.4
内存池修改为自动扩容
AsyncTask接口
低版本系统bug解决
提供swoole_lock锁
v1.6.3
SWOOLE_MODE_BASE模式重构,由于PHP在多线程下容易发生内存错误,BASE模式修改为单进程单线程模式
swoole_client->on/swoole_event_add可以用于任何环境
swoole_server增加面向对象风格
swoole_connection_info可用于UDP协议
解决php,gcc低版本可能出现的段错误问题
解决swoole扩展导致fpm段错误的问题
v1.6.2
增加swoole_event_add函数,可以将任意一个socket添加到swoole的主事件循环内
增加swoole_event_del函数,删除添加的socket
增加examples/proxy.php实例代码,全异步非阻塞的代理服务器
增加examples/async_mysql.php,实现异步非阻塞的MySQL调用
1.6.2新增的reactor操作接口,使得redis、mysql、mongodb等网络接口整合swoole_server中,实现全异步化高性能服务器
v1.6.1
增加configure可选参数--enable-msgqueue,启用此参数后将使用消息队列作为IPC方式
解决reload后,worker分配错误的bug
抢占式分配bug解决
解决刷warn的问题
v1.6.0
优化UDP实现方式,实现高并发高可靠的UDP Server
可以切换IPC模式,队列或者Unsock
close事件处理优化,解决丢失close的bug
使用全局内存池来分配内存