PHP-swoole搭建Web服务器

2022-11-30 10:42:24 浏览数 (1)

四、搭建Web服务器

4.1、性能对比

使用apache bench工具对Nginx静态页、Golang Http程序、PHP7 Swoole Http程序进行压力测试。在同一台机器上,进行并发100用户,共100万次Http请求的基准测试中,QPS对比如下:

QPS数值越大,WEB性能越好.

4.2、构建web服务器

Swoole1.7.7版本增加了内置Http服务器的支持,通过几行代码即可写出一个异步非阻塞多进程的Http服务器。 Http类的模块是继承了Server类

代码语言:javascript复制
$http = new SwooleHttpServer("127.0.0.1", 9501);
// 接受客户端请求事件
$http->on('request', function(swoole_http_request $request, swoole_http_response $response) {
	// 发送到客户端浏览器
     $response->end("<h1>hello swoole</h1>");
});
$http->start();

// 参数说明
$request,Http请求信息对象,包含了header/get/post/cookie/rawContent[put/delete]等相关信息
$response,Http响应对象,支持cookie/header/status等Http操作

通过ab压测

代码语言:javascript复制
yum install -y httpd-tools

压测

代码语言:javascript复制
ab -c100 -n1000 -k url地址
-c 并发的人数
-n 总的请求次数

4.3、静态服务器

代码语言:javascript复制
# 静态资源配置选项

'document_root' => '/data/webroot', // v4.4.0以下版本, 此处必须为绝对路径
'enable_static_handler' => true,

注:document_root选项一定要注册静态资源请求的时路径来设置

静态的文件

路径

4.4、动态服务器

高性能的动态解析PHP的服务器

页面PHP文件

封装$_get $_post $_files数据的获取

0 人点赞