PHP 的高级异步服务器框架,Swoole 1.6 发布
jopen 11年前
Swoole是一个PHP的C扩展,可用来开发PHP的高性能高并发TCP/UDP Server。Swoole的网络IO部分基于epoll/kqueue事件循环,是全异步非阻塞的。 业务逻辑部分使用多进程同步阻塞方式来运行。这样既保证了Server能够应对高并发和大量TCP连接。又保证业务代码仍然可以简单的编写。
优势
- 纯C编写无依赖
- 并发10万TCP连接
- TCP+UDP同时支持
- Server+Client
- 网络异步/业务同步
- 支持多进程/多线程
- CPU亲和性/守护进程
- 简单开发效率高
案例
swoole在国内被多家网络游戏、手机游戏公司使用。替代了C++、java等复杂编程语言来实现网络Server的程序。使用PHP+Swoole扩展,开发效率可以大大提高。
swoole官方提供了一个基于swoole扩展的PHP应用服务器实现,比Apache或Nginx+php-fpm性能高出6-15倍。
Swoole 1.6 发布了,该版本主要改进内容包括:
- 重写UDPServer代码,实现支持多端口的高性能UDP Server
- 增加swoole_connection_list/swoole_connection_info两个新接口,用于在worker进程内高效地遍历所有TCP连接,获取TCP连接的相关信息
- Worker进程可选IPC方式,通过configure --enable-msgqueue启用消息队列作为IPC方式
- swoole_server_send/swoole_server_close不再需要传入from_id参数
- 提供对tcp_keepalive的支持
- 增加日志模块,记录运行时的警告和错误信息
- 去掉耗时的clock_gettime调用