请求限制

  • limit_conn_module 连接频率限制

  • limit_req_module 请求频率限制

连接和请求的区别?

每个http请求至少会建立一次TCP连接,而一次TCP连接至少会产生一次HTTP请求。在不同版本的HTTP协议,针对连接的复用有不同的标准:

HTTP协议版本
连接关系

HTTP1.0

TCP不可服用,每次HTTP都要建立一次TCP连接

HTTP1.1

顺序性TCP复用

HTTP2.0

多路复用TCP复用

http_limit_conn_module

连接限制配置:

# 申请存储空间zone
# 如果要对连接进行限制,那么就要存储连接的信息,记录连接的状态
# 那么就需要将在操作系统中申请一块空间,即 limit_conn_zone;
# 指定存储的key,比如以 $remote_addr 作为key, 那么就会对 客户端的ip进行限制
# zone=name 指定zone的名字
# size用来指定空间的大小
Syntax: limit_conn_zone key zone=name:size;
Default:
Context:http


# 对zone进行限制,使用number限定连接个数
# 此配置依赖zone配置
Syntax: limit_conn_zone number;
Default: 
Context: http, server, location

http_limit_req_moudle

示例

ab 命令的使用请查看其他文章。

执行结果分析:

最后更新于

这有帮助吗?