Nginx 进行性能配置

  总所周知,网络上我们购买的服务器的性能各不相同,如果采用 Nginx 的默认配置的话,无法将服务器的全部性能优势发挥出来,我们应该选择适合自己需求的配置。

当我们默认安装后 Nginx 后,我们便得到 Nginx 的默认配置 nginx.conf ,这个文件默认放在 /usr/local/nginx/conf 中(若通过 apt-get install nginx 安装,则在 /etc/nginx/ 目录下),只需修改目录下的 nginx.conf 文件。

以我的云主机为例(低流量配置:2核 CPU,2GB RAM,请求 ~1s),没办法,作为学生党,我穷(/_\)。

实例文件如下:

user ubuntu ubuntu;     # 创建用户和用户组
worker_processes 2;        # 开启2个工作进程(2 核 CPU,至少应该为 CPU 的每一个核分配一个工作进程)
worker_priority 0;         # worker 进程会在一个适当的优先级启动。值的范围为 -20(优先级最高)~19(优先权最低),设置的值不应该低于-5,因为它是内核进程的默认优先级
error_log logs/error.log error;
log_not_found off;        #该指令指定 Nginx 是否记录404错误。推荐设置为 off,然而不要在 server级别将 log_not_found off 的值设置为 off。

events {
    multi_accept on;
    worker_connections 128;
}

http {
    include mime.types;
    default_type application/octet_stream;
    sendfile on;
    server {
        listen 80;
        server_name localhost;
        location / {
            root html;
            index index.html index.html
        }
        error_page 500 502 503 504 /50x.html;
        location = /50x.html{
            root html;
        }
    }
}

 

Nginx 的默认安装包中,有一个简单的测试页,在 html 目录中(/usr/local/nginx/html/index.html),我们可以通过访问该网页来测试我们的配置是否生效。

改完 nginx.conf 文件后,我们直接浏览器中访问服务器器 IP 地址,如果浏览器能正确输出下列界面,即证明我们的配置文件是有效的,否则重新检查配置文件,修改配置,直到能正确访问。

 

接下来我们可以来进行服务器性能测试,来评估服务器性能。

这里我使用的是 httperf 模块,Ubuntu 自带,没有的话通过下列指令安装。

sudo apt-get install httperf

 

这里我以重复下载我服务器中的 index.html 为例,每秒300次,总共请求30000次。

httperf --server your domain --port 80  --uri /index.html --rate 300 --num-conn 30000 --num-call 1 --timeout 5

输出如下:

我们可以在其中看到响应时间和成功请求的次数。当然我们是希望成功率为100%或响应时间为0ms 的,我们可以不断测试,增加请求,适当调整配置,使成功率接近 100% ,这时候我们的Nginx 配置就是比较完美的了。

 

posted @ 2018-07-20 19:24  希希里之海  阅读(685)  评论(0编辑  收藏  举报