阅读 98

性能测试之Nginx设置

介绍

Nginx (engine x) 是一个高性能的HTTP和反向代理web服务器,同时也提供了IMAP/POP3/SMTP服务。Nginx是由伊戈尔·赛索耶夫为俄罗斯访问量第二的Rambler.ru站点(俄文:Рамблер)开发的,第一个公开版本0.1.0发布于2004年10月4日。

其将源代码以类BSD许可证的形式发布,因它的稳定性、丰富的功能集、简单的配置文件和低系统资源的消耗而闻名。2011年6月1日,nginx 1.0.4发布。

Nginx是一款轻量级的Web 服务器/反向代理服务器及电子邮件(IMAP/POP3)代理服务器,在BSD-like 协议下发行。其特点是占有内存少,并发能力强,事实上nginx的并发能力在同类型的网页服务器中表现较好。

---摘自百度百科

安装方式

源码安装

源码编译可以指定所需要安装的模块:

[root@localhost /]# ./configure --prefix=/usr/local/nginx --with-http_stub_status_module 复制代码

如果缺少模块,需要重新编译:

[root@localhost /]# ./configure --prefix=/usr/local/nginx --with-http_stub_status_module 复制代码

但是不需要make,避免覆盖原nginx目录

rpm安装

下载rpm包地址:

[root@localhost opt]# wget <https://centos.pkgs.org/7/getpagespeed-x86_64/nginx-1.18.0-1.el7.ngx.x86_64.rpm.html> [root@localhost opt]# rpm -i [nginx-1.18.0-1.el7.ngx.x86_64.rpm](https://centos.pkgs.org/7/getpagespeed-x86_64/nginx-1.18.0-1.el7.ngx.x86_64.rpm.html) 复制代码

rpm安装包没这个问题,但是它安装之后的命令是:/usr/sbin/nginx,需要覆盖或重新创建软链/usr/bin/nginx

关于rpm卸载
[root@localhost opt]# rpm -qa|grep nginx nginx-1.18.0-1.el7.ngx.x86_64 [root@localhost opt]# rpm -e nginx-1.18.0-1.el7.ngx.x86_64 复制代码

如果nginx没有--with-http_stub_status_module模块,添加以下配置,-t测试时会失败。

location /nginx_tatus {           stub_status  on;           access_log   off;  } [root@localhost /]# nginx -t # 测试,   [root@localhost /]# nginx -s reload #静态加载 复制代码

访问:http://192.168.2.58/ng_status

Active connections: 2 server accepts handled requests 42 42 198 Reading: 0 Writing: 1 Waiting: 1 Active connections – 表示Nginx正在处理的活动连接数为2个  server 表示Nginx启动到现在共处理了42 个连接 accepts 表示Nginx启动到现在共成功创建42 次握手 handled requests  表示总共处理了198次请求 reading — 读取客户端的连接数.  writing — 响应数据到客户端的数量  waiting — 开启 keep-alive 的情况下,这个值等于 active – (reading+writing), 意思就是 Nginx 已经处理完正在等候下一次请求指令的驻留连接 复制代码

开启nginx服务日志

log_format main '$remote_addr - $remote_user [$time_local]                                  "$request" ' '$status $body_bytes_sent "$http_refer                                 '"$http_user_agent" "$http_x_forwarded_for"'; access_log logs/access.log main;                                 复制代码

查看日志

[root@localhost conf]# tail -f logs/access.log  192.168.2.188 - - [21/Oct/2021:18:55:22 +0800] "GET /jforum/ping_session.jsp HTTP/1.1" 200 376 "http://192.168.2.58/jforum/ping_session.jsp" "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/92.0.4515.131 Safari/537.36" "-"  192.168.2.188 - - [21/Oct/2021:18:56:22 +0800] "GET /jforum/ping_session.jsp HTTP/1.1" 200 376 "http://192.168.2.58/jforum/ping_session.jsp" "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/92.0.4515.131 Safari/537.36" "-"  192.168.2.188 - - [21/Oct/2021:18:57:22 +0800] "GET /jforum/ping_session.jsp HTTP/1.1" 200 376 "http://192.168.2.58/jforum/ping_session.jsp" "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/92.0.4515.131 Safari/537.36" "-" 复制代码

nginx配置优化

都是在nginx.conf配置全局; 连接池 events { worker_connections 20; } cpu处理个数 worker_processes 1; 一些压缩 gzip on; # 等等


作者:职说测试
链接:https://juejin.cn/post/7022101528395644941


文章分类
后端
文章标签
版权声明:本站是系统测试站点,无实际运营。本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌抄袭侵权/违法违规的内容, 请发送邮件至 XXXXXXo@163.com 举报,一经查实,本站将立刻删除。
相关推荐