PHP Swoole 扩展
学习 Swoole 实现异步、协程和高性能网络通信,构建实时应用。 · 难度:入门 · +15XP
Swoole 概述
Swoole 是 PHP 的 C 扩展,提供异步 I/O、协程、TCP/UDP/WebSocket 服务器,使 PHP 能够处理高并发网络应用。
安装
使用 pecl 安装:pecl install swoole,或编译安装。
HTTP 服务器示例
$http = new Swoole\Http\Server('0.0.0.0', 9501);
$http->on('request', function ($request, $response) {
$response->header('Content-Type', 'text/plain');
$response->end('Hello Swoole');
});
$http->start();
协程示例
Co\run(function() {
go(function() {
$result = Co\Http\Client::get('http://example.com');
echo $result->body;
});
go(function() {
sleep(1); // 非阻塞
echo '协程2';
});
});
| 组件 | 用途 |
|---|---|
| Server | 创建服务器 |
| Client | 异步客户端 |
| Coroutine | 协程支持 |
| Table | 共享内存表 |
练习提示
创建一个简单的 Swoole HTTP 服务器,返回 JSON 响应。