首页
技术小册
AIGC
面试刷题
技术文章
MAGENTO
云计算
视频课程
源码下载
PDF书籍
「涨薪秘籍」
登录
注册
Swoole简介
Swoole安装
TCP服务器
UDP服务器
HTTP服务器
WebSocket服务器
初探协程
协程与异步基础
Swoole核心概念基础
服务端(异步)
TCP/UDP服务器
方法
__construct
set
on
addListener、listen
addProcess
start
reload
stop、shutdown
tick、after、clearTimer
defer、close
send、sendfile、sendto...
exit、pause、resume
getXXX方法
bind、stats
task相关方法
其它方法补充
属性
配置
reactor_num
worker_num
max_request
max_conn
message_queue_key
daemonize
open_tcp_keepalive
heartbeat_check_interval
heartbeat_idle_time
open_tcp_nodelay
open_cpu_affinity
cpu_affinity_ignore
tcp_defer_accept
log相关配置
ssl相关配置
task相关配置
protocol相关配置
package相关配置
user、group
chroot、pid_file
buffer相关配置
enable_unsafe_event
discard_timeout_request
enable_reuse_port
enable_delay_receive
reload_async
max_wait_time
tcp_fastopen
request_slowlog_file
enable_coroutine
max_coroutine/max_coro_num
send_yield
send_timeout
hook_flags
tcp_user_timeout
stats_file
event_object
start_session_id
single_thread
max_queued_bytes
admin_server
事件和回调
Swoole\Server子类
Swoole\Server\Task
Swoole\Server\Packet
Swoole\Server\PipeMessage
Swoole\Server\StatusInfo
Swoole\Server\TaskResult
Swoole\Server\Event
HTTP服务器
Request类
header()
server()
get()
post()
cookie()
files()
getContent()
getData()
create()
parse()
isCompleted()
getMethod()
Response类
header()
trailer()
cookie()
status()
redirect()
write()
sendfile()
end
detach
create()
isWritable()
配置选项
WebSocket服务器
事件
onBeforeHandshakeResponse
onHandShake
onOpen
onMessage
onRequest
onDisconnect
方法
push()
exist()
pack()
unpack()
disconnect()
isEstablished()
数据帧帧类
Frame类
CloseFrame类
常量
选项
Redis服务器
多端口监听
服务端(协程)
TCP 服务器
HTTP 服务器
WebScoket 服务器
客户端
同步阻塞客户端
完整示例
方法
属性
常量
配置
一键协程化
方法
setHookFlags()
getHookFlags()
SWOOLE_HOOK_ALL
SWOOLE_HOOK_TCP
SWOOLE_HOOK_UNIX
SWOOLE_HOOK_UDP
SWOOLE_HOOK_UDG
SWOOLE_HOOK_SSL
SWOOLE_HOOK_TLS
SWOOLE_HOOK_SLEEP
SWOOLE_HOOK_FILE
SWOOLE_HOOK_STREAM_FUNCTION
SWOOLE_HOOK_BLOCKING_FUNCTION
SWOOLE_HOOK_PROC
SWOOLE_HOOK_CURL
SWOOLE_HOOK_NATIVE_CURL
SWOOLE_HOOK_SOCKETS
SWOOLE_HOOK_STDIO
Hook列表
协程客户端
TCP/UDP 客户端
Socket客户端
方法
__construct()
getOption()
setOption()
setProtocol()
bind()
listen()
accept()
connect()
checkLiveness()
send()
sendAll()
peek()
recv()
recvAll()
readVector()
readVectorAll()
writeVector()
writeVectorAll()
recvPacket()
recvLine()
recvWithBuffer()
recvfrom()
sendto()
getsockname()
getpeername()
close()
isClosed()
常量
HTTP/WebSocket客户端
方法
__construct()
set()
setMethod()
setHeaders()
setCookies()
setData()
addFile()
addData()
get()
post()
upgrade()
push()
recv()
download()
getCookies()
getHeaders()
getStatusCode()
getBody()
close()
execute()
函数
当前位置:
首页>>
技术小册>>
PHP高性能框架-Swoole
小册名称:PHP高性能框架-Swoole
Swoole 使 PHP 开发人员可以编写高性能高并发的 TCP、UDP、Unix Socket、HTTP、 WebSocket 等服务,让 PHP 不再局限于 Web 领域。Swoole4 协程的成熟将 PHP 带入了前所未有的时期, 为性能的提升提供了独一无二的可能性。Swoole 可以广泛应用于互联网、移动通信、云计算、 网络游戏、物联网(IOT)、车联网、智能家居等领域。使用 PHP + Swoole 可以使企业 IT 研发团队的效率大大提升,更加专注于开发创新产品。 **Swoole 特性** Swoole 使用 C/C++ 语言编写,提供了 PHP 语言的异步多线程服务器、异步 TCP/UDP 网络客户端、异步 MySQL、异步 Redis、数据库连接池、AsyncTask、消息队列、毫秒定时器、异步文件读写、异步 DNS 查询。 Swoole 内置了 Http/WebSocket 服务器端/客户端、Http2.0 服务器端。 除了异步 IO 的支持之外,Swoole 为 PHP 多进程的模式设计了多个并发数据结构和 IPC 通信机制,可以大大 简化多进程并发编程的工作。其中包括了原子计数器、Table、Channel、Lock、进程间通信 IPC 等丰富的功能特性。 Swoole4.0 支持了类似 Go 语言的协程,可以使用完全同步的代码实现异步程序。PHP 代码无需额外增加任何 关键词,底层自动进行协程调度,实现异步 IO。 **Swoole应用示例:** **1.微服务框架:Hyperf** Hyperspeed + Flexibility = Hyperf Hyperf 是基于 Swoole 4.4+ 实现的高性能、高灵活性的 PHP 协程框架,内置协程服务器及大量常用的组件,性能较传统基于 PHP-FPM 的框架有质的提升,提供超高性能的同时,也保持着极其灵活的可扩展性,标准组件均基于 PSR 标准实现,基于强大的依赖注入设计,保证了绝大部分组件或类都是可替换与可复用的 文档地址: https://hyperf.wiki/3.0/#/ **2.HyperfCMS** HyperfCMS 是基于 Swoole+Hyperf 框架前后端分离架构的一套开源且完美的建站系统,拥有简单大气设计、友好的交互体验、清晰明了的代码规范。组件化的封装应用,编写复杂的管理应用,效率是质的提升、时间成倍缩短,人员可以减半,事半功倍。可以提供定制化服务! 文档地址: https://wiki.hyperfcms.com/#/ **3.分布式定时任务 (Swoole Crontab)** 基于 Swoole 的定时器程序,支持秒级处理,完全兼容 crontab 语法,且支持秒的配置,可使用数组规定好精确操作时间,Web 界面管理,增删改查任务,完整的权限控制。 仓库地址: https://github.com/osgochina/swoole-crontab **4.SwooleWorker** Swoole Worker是基于Swoole4开发的一款分布式长连接开发框架。常驻内存,协程,高性能高并发;分布式部署,横向扩容,使得能支持庞大的连接数;无感知安全重启,无缝升级代码;接口丰富,支持单个发送,分组发送,群发广播等接口。 仓库地址: https://github.com/xielei/swoole-worker **5.Markdown文档系统** 软擎文档系统是基于 Swoole + Rangine 框架开发的开源版 MarkDown 文档管理系统,不同于 docsify.js 等前端文档系统,本文档系统是偏后端的文档系统,对于广大PHPer来说更加友好。支持多用户协同操作,管理员审核发布等功能。 让您的工作更高效,更智慧。 仓库地址: https://github.com/we7coreteam/w7-rangine-project-document
下一篇:
Swoole安装
该分类下的相关小册推荐:
PHP合辑5-SPL标准库
PHP程序员面试笔试真题与解析
Laravel(10.x)从入门到精通(十二)
Workerman高性能框架-GatewayWorker
Magento2后端开发高级实战
Laravel(10.x)从入门到精通(八)
PHP8实战小册
PHP程序员的设计模式
Laravel(10.x)从入门到精通(十三)
PHP8入门与项目实战(7)
PHP合辑2-高级进阶
Yii2框架从入门到精通(下)