一、检查配置文件语法

[root@node2 /]# nginx -tc /usr/local/nginx/conf/nginx.conf
nginx: the configuration file /usr/local/nginx/conf/nginx.conf syntax is ok
nginx: configuration file /usr/local/nginx/conf/nginx.conf test is successful

二、重载配置

[root@node2 /]# nginx -s reload

三、加载连接状态统计模块

编辑nginx.conf文件,加入一个location,加载stub_status模块

创建配置文件目录,将默认配置文件复制到此目录

[root@node2 /]# mkdir /etc/nginx
[root@node2 /]# cp /usr/local/nginx/conf/nginx.conf /etc/nginx
vim /etc/nginx/nginx.conf

在server里加入一个location

        location /stats{
stub_status;
}

保存、退出,检查语法

[root@node2 sbin]# nginx -tc /etc/nginx/nginx.conf
nginx: [emerg] open() "/etc/nginx/mime.types" failed (: No such file or directory) in /etc/nginx/nginx.conf:
nginx: configuration file /etc/nginx/nginx.conf test failed

报错,将mime.types文件以及html目录复制到/etc/nginx/下

cp /usr/local/nginx/conf/mime.types /etc/nginx
cp -r /usr/local/nginx/html/ /etc/nginx/

再检查语法

[root@node2 nginx]# nginx -tc /etc/nginx/nginx.conf
nginx: the configuration file /etc/nginx/nginx.conf syntax is ok
nginx: configuration file /etc/nginx/nginx.conf test is successful

重载配置

[root@node2 nginx]# nginx -s reload

浏览器打开http://ip/stats

显示以上信息:

Active connections: 1

当前活动连接数:1

server accepts handled requests

3 3 28

分别表示:握手次数、连接次数、请求次数

正常情况下,握手次数和连接次数是相等的,表明没有丢失的连接

Reading: 0 Writing: 1 Waiting: 2

Reading:表示当前状态正在读的连接个数、

Writing:表示当前状态正在写的连接个数

Waiting:表示当前状态空闲的连接个数,当nginx开启了长连接keepalive后,会出现空闲连接

在nginx.conf配置文件中有一个keepalive_timeout参数,用于设置长连接超时时间

keepalive_timeout  65;

四、加载请求限制模块

vim /etc/nginx/nginx.conf

在server之前加上

limit_req_zone $binary_remote_addr zone=req_zone:1m rate=1r/s;

location里加上

        location / {
root html;
index index.html index.htm;
limit_req zone=req_zone;
}

保存,检查语法并重载

[root@node2 nginx]# nginx -tc /etc/nginx/nginx.conf
nginx: the configuration file /etc/nginx/nginx.conf syntax is ok
nginx: configuration file /etc/nginx/nginx.conf test is successful
[root@node2 nginx]# nginx -s reload
[root@node2 nginx]#

压测

[root@node2 logs]# ab -n  -c  http://127.0.0.1/
This is ApacheBench, Version 2.3 <$Revision: $>
Copyright Adam Twiss, Zeus Technology Ltd, http://www.zeustech.net/
Licensed to The Apache Software Foundation, http://www.apache.org/ Benchmarking 127.0.0.1 (be patient).....done Server Software: nginx/1.14.
Server Hostname: 127.0.0.1
Server Port: Document Path: /
Document Length: bytes Concurrency Level:
Time taken for tests: 0.002 seconds
Complete requests:
Failed requests:
(Connect: , Receive: , Length: , Exceptions: )
Write errors:
Non-2xx responses:
Total transferred: bytes
HTML transferred: bytes
Requests per second: 4854.37 [#/sec] (mean)
Time per request: 0.206 [ms] (mean)
Time per request: 0.206 [ms] (mean, across all concurrent requests)
Transfer rate: 3519.42 [Kbytes/sec] received

显示只有1次请求正常,其他9次被限制了

添加延迟响应参数

        location / {
root html;
index index.html index.htm;
limit_req zone=req_zone burst=;
}

保存,重载,再次压测

[root@node2 logs]# ab -n  -c  http://127.0.0.1/
This is ApacheBench, Version 2.3 <$Revision: $>
Copyright Adam Twiss, Zeus Technology Ltd, http://www.zeustech.net/
Licensed to The Apache Software Foundation, http://www.apache.org/ Benchmarking 127.0.0.1 (be patient).....done Server Software: nginx/1.14.
Server Hostname: 127.0.0.1
Server Port: Document Path: /
Document Length: bytes Concurrency Level:
Time taken for tests: 9.002 seconds
Complete requests:
Failed requests:
Write errors:
Total transferred: bytes
HTML transferred: bytes
Requests per second: 1.11 [#/sec] (mean)
Time per request: 900.161 [ms] (mean)
Time per request: 900.161 [ms] (mean, across all concurrent requests)
Transfer rate: 0.92 [Kbytes/sec] received

结果显示,请求全部成功,但是耗时变成了9秒,请求被延迟响应。

linux下nginx日常操作的更多相关文章

  1. 【转】linux下nginx相关操作

    参考文章 <nginx启动,重启,关闭命令> 停止操作 停止操作是通过向nginx进程发送信号(什么是信号请参阅linux文 章)来进行的 步骤1:查询nginx主进程号 ps -ef | ...

  2. Linux下nginx编译安装教程和编译参数详解

    这篇文章主要介绍了Linux下nginx编译安装教程和编译参数详解,需要的朋友可以参考下 一.必要软件准备1.安装pcre 为了支持rewrite功能,我们需要安装pcre 复制代码代码如下: # y ...

  3. 【转】Linux下nginx配置https协议访问的方法

    一.配置nginx支持https协议访问,需要在编译安装nginx的时候添加相应的模块--with-http_ssl_module 查看nginx编译参数:/usr/local/nginx/sbin/ ...

  4. VMware Linux 下 Nginx

    负载   VMware Linux 下 Nginx 安装配置 - nginx.conf 配置 [负载两个 Tomcat] (三) Weiseditor 2014-11-26 23:42 阅读:1 评论 ...

  5. VMware Linux 下 Nginx 安装配置 - nginx.conf 配置 [负载两个 Tomcat] (三)

    首先启动Nginx 1. 相关浏览 两个 Tomcat 配置:  VMware Linux 下 Nginx 安装配置 - Tomcat 配置 (二) Nginx 安装配置启动: VMware Linu ...

  6. VMware Linux 下 Nginx 安装配置 - Tomcat 配置 (二)

    准备工作 相关浏览: VMware Linux 下 Nginx 安装配置 (一) 1. 选在 /usr/local/ 下创建 softs 文件夹,通过 ftp 命令 把 apache-tomcat-7 ...

  7. linux下的shell操作mysql

    (1)MySQL的启动 重启了一次服务器后,使用> mysql -u root -p登陆是出现下面的错误: ERROR 2002 (HY000): Can't connect to local ...

  8. linux下的文本操作之 文本查找——grep

    摘要:你有没有这样的应用场景:调试一个程序,出现debug的提示信息,现在你需要定位是哪个文件包含了这个debug信息,也就是说,你需要在一个目录下的多个文件(可能包含子目录)中查找某个字符串的位置: ...

  9. linux下通过sysfs操作GPIO

    linux下通过sysfs操作GPIO 在嵌入式设备中对GPIO的操作是最基本的操作.一般的做法是写一个单独驱动程序,网上大多数的例子都是这样的.其实linux下面有一个通用的GPIO操作接口,那就是 ...

随机推荐

  1. Azure CosmosDB (9) Unique Key Constraints

    <Windows Azure Platform 系列文章目录> 在Azure Cosmos DB中,还支持Unique Key Constraints(唯一键约束). 我们可以在Azure ...

  2. CentOS7.5实践快速部署LAMP+Tomcat成功运行阿里云或者腾讯云

    安装一定要按照顺序来 1 先安装JDK+TOMCAT 点击看这里 2 在安装LAMP  点击看这里 3 最关键的就是这里 LAMP+Tomcat整合 我们不用源码编译安装,而是使用yum命令来完成. ...

  3. Win10 使用MinGW-w64编译Tesseract4.0

    一开始尝试使用mingw+msys编译tesseract, 但是苦于mingw-get安装的软件版本都太旧,要安装新版本只能下载源码编译安装. 在编译过程中遇到了很多麻烦,最后还遇到了包直接循环依赖问 ...

  4. reshape的两个函数melt和dcast

    reshape Reshape包主要是用来做数据变形的.其中主要的有两个函数melt和dcast1.其中melt主要用于宽变长,而dcast1主要用于长变宽.melt和dcast1是reshape2包 ...

  5. JVM垃圾回收器

    JVM堆内存 -Xms和-Xmx:用于设置堆内存的大小 -XX:NewSize和-XX:MaxNewSize :用于设置年轻代的大小,建议设为整个堆大小的1/3或者1/4,两个值设为一样大. -XX: ...

  6. ntp服务

    ntp服务主要是用于对计算机的时间同步管理操作.时间是对服务器来说是很重要的,一般很多网站都需要读取服务器时间来记录相关信息,如果时间不准,则可能造成很大的影响,对于集群,也需要时间同步. 部署安装N ...

  7. MyBatis注解-动态SQL 一个 SqlProvider的demo

    Provider动态语言注解 MyBatis提供了多个注解如:@InsertProvider,@UpdateProvider,@DeleteProvider和@SelectProvider,这些都是建 ...

  8. java+Selenium+TestNg搭建自动化测试架构(3)实现POM(page+Object+modal)

    1.Page Object是Selenium自动化测试项目开发实践的最佳设计模式之一,通过对界面元素的封装减少冗余代码,同时在后期维护中,若元素定位发生变化,只需要调整页面元素封装的代码,提高测试用例 ...

  9. vue $refs 无法动态拼接,获取不到对象(转)

    原文地址: http://www.php.cn/js-tutorial-410304.html 本篇文章给大家带来的内容是关于vue $refs中不使用拼接的原因以及解决方法,有一定的参考价值,有需要 ...

  10. LINUX新建和增加SWAP分区

    我们都知道在安装Linux系统时在分区时可以分配swap分区,而系统安装后(在运行中)如何建立或调整swap分区呢? 在装完Linux系统之后,建立Swap分区有两种方法. 1.新建磁盘分区作为swa ...