Nginx 代理到 Go 极大地降低了性能

Nginx 代理到 Go 极大地降低了性能

我刚刚用 Go http 包编写了一个小型 Go 脚本,用于监听。我想将 nginx 放在它前面(我也需要在子目录中提供静态文件),但注意到请求/秒和延迟急剧下降(从 11K 请求/秒下降到 1.5K 请求/秒)。

我的 nginx 配置有问题吗?(顺便说一下,我正在 Mac 上测试这是否有区别)

worker_processes  4;

events {
    worker_connections  1024;
}

http {
    include       mime.types;
    default_type  application/octet-stream;

    sendfile        on;
    tcp_nopush     on;

    keepalive_timeout  65;

    gzip  on;

    include sites/*.conf;
}

我的服务器配置:

server {
    listen       80;
    server_name  go.dev;

    charset utf-8;
    root   /www;

    location /favicon.ico { return 404; }

    location / {
        proxy_pass http://127.0.0.1:8080/;
    }

    error_page   500 502 503 504  /50x.html;
    location = /50x.html {
        root   html;
    }
}

相关内容