Skip to content

Nginx 的测试配置,导致性能结论失真 #55

@iYism

Description

@iYism

在 Nginx 的测试配置中,您使用了如下 server 配置:

server {
    listen 80 default_server;
    root /data/webroot;
    index index.html;
}

这意味着 Nginx 是通过访问磁盘上的静态文件(index.html)来响应请求。

而 Golang 和 PHP7+Swoole 的服务端逻辑如下:

w.Write([]byte("<h1>\nHello world!\n</h1>\n"))
$response->end("<h1>\nHello Swoole.\n</h1>");

这两者都是在内存中直接构建字符串并返回,完全绕过了文件系统。

为了保证测试路径一致,建议您修改 Nginx 的测试配置为:

server {
    listen 80 default_server;

    location / {
        default_type text/html;
        return 200 "<h1>\nHello world!\n</h1>\n";
    }
}

该配置将响应逻辑与 Swoole 和 Go 保持一致,避免磁盘 I/O 的影响,更能反映 nginx server 的实际处理性能。

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions