Nginx 五大常见应用场景

Nginx 是一个很强大的高性能 Web 和反向代理服务,它具有很多非常优越的特性,在连接高并发的情况下,Nginx 是 Apache 服务不错的替代品。其特点是占有内存少,并发能力强,事实上 nginx 的并发能力在同类型的网页服务器中表现较好,因此国内知名大厂例如:淘宝,京东,百度,新浪,网易,腾讯等等都在使用 Nginx 网站。

Nginx 五大常见应用场景

在我们的日常工作学习中,我们会该如何去优化自己的 Nginx 服务器?遇到以下问题我们该如何处理呢?

一、自定义返回客户端的404错误页面

1)优化前,客户端使用浏览器访问不存在的页面,会提示404文件未找到

Nginx 五大常见应用场景

2)修改 Nginx 配置文件,自定义报错页面

Nginx 五大常见应用场景

3)优化后,客户端使用浏览器访问不存在的页面,会提示自己定义的 40x.html 页面

Nginx 五大常见应用场景

常见的 http 状态码可用参考表所示

Nginx 五大常见应用场景

二、查看服务器状态信息

1)编译安装时使用--with-http_stub_status_module开启状态页面模块
Nginx 五大常见应用场景
2)启用 Nginx 服务并查看监听端口状态
ss 命令可以查看系统中启动的端口信息,该命令常用选项如下:
  • -a 显示所有端口的信息
  • -n 以数字格式显示端口号
  • -t 显示TCP连接的端口
  • -u 显示UDP连接的端口
  • -l 显示服务正在监听的端口信息,如httpd启动后,会一直监听80端口
  • -p 显示监听端口的服务名称是什么(也就是程序名称)

注意:在 RHEL7 系统中可以使用ss命令替代 netstat 命令,功能一样,选项一样。

Nginx 五大常见应用场景

3)修改 Nginx 配置文件,定义状态页面

Nginx 五大常见应用场景
4)优化后,查看状态页面信息Nginx 五大常见应用场景
Active connections:当前活动的连接数量。
Accepts:已经接受客户端的连接总数量。
Handled:已经处理客户端的连接总数量。
(一般与accepts一致,除非服务器限制了连接数量)。
Requests:客户端发送的请求数量。
Reading:当前服务器正在读取客户端请求头的数量。
Writing:当前服务器正在写响应信息的数量。
Waiting:当前多少客户端在等待服务器的响应。

三、优化 Nginx 并发量

1)优化前使用ab高并发测试

Nginx 五大常见应用场景

2)修改 Nginx 配置文件,增加并发量

Nginx 五大常见应用场景
3)优化 Linux 内核参数(最大文件数量)Nginx 五大常见应用场景
4)优化后测试服务器并发量(因为客户端没调内核参数,所以在proxy测试)Nginx 五大常见应用场景

四、优化 Nginx 数据包头缓存

1)优化前,使用脚本测试长头部请求是否能获得响应

Nginx 五大常见应用场景
2)修改 Nginx 配置文件,增加数据包头部缓存大小Nginx 五大常见应用场景
3)优化后,使用脚本测试长头部请求是否能获得响应Nginx 五大常见应用场景

五、浏览器本地缓存静态数据

1)使用Firefox浏览器查看缓存

以Firefox浏览器为例,在Firefox地址栏内输入about:cache将显示Firefox浏览器的缓存信息,如图所示,点击List Cache Entries可以查看详细信息。

Nginx 五大常见应用场景

2)清空firefox本地缓存数据,如图所示。

Nginx 五大常见应用场景

3)改Nginx配置文件,定义对静态页面的缓存时间

Nginx 五大常见应用场景

4)优化后,使用Firefox浏览器访问图片,再次查看缓存信息

Nginx 五大常见应用场景
在 firefox 地址栏内输入 about:cache,查看本地缓存数据,查看是否有图片以及过期时间是否正确。
文章转载:高效运维
(版权归原作者所有,侵删)

相关新闻

历经多年发展,已成为国内好评如潮的Linux云计算运维、SRE、Devops、网络安全、云原生、Go、Python开发专业人才培训机构!