导航菜单

PHP/Swoole与高性能开发
课程进度 84% · 第19/22章19/22章 · 标签 1/2
1

Swoole基础

Swoole使PHP支持高性能网络通信和协程。

php
1
<?php
2
// HTTP服务器
3
$http = new Swoole\Http\Server("0.0.0.0", 9501);
4
$http->on("request", function ($req, $res) {
5
$res->end("Hello Swoole");
6
});
7
$http->start();
8
 
9
// WebSocket服务器
10
$ws = new Swoole\WebSocket\Server("0.0.0.0", 9502);
11
$ws->on("message", function ($ws, $frame) {
12
$ws->push($frame->fd, "收到: " . $frame->data);
13
});
14
$ws->start();
15
?>
2

协程编程

php
1
<?php
2
go(function () {
3
// 协程MySQL
4
$db = new Swoole\Coroutine\MySQL();
5
$db->connect(['host'=>'127.0.0.1','user'=>'root','password'=>'','database'=>'test']);
6
$res = $db->query("SELECT * FROM users");
7
 
8
// 协程Channel
9
$ch = new Swoole\Coroutine\Channel();
10
go(function () use ($ch) { $ch->push("data"); });
11
$data = $ch->pop();
12
});
13
?>
SwooleHTTP serverWebSocket协程Channel