本文共 5240 字,大约阅读时间需要 17 分钟。
目录
属性 | Nginx | Tomcat |
版本 | 1.14.2 | Tomcat7 |
主机 | 192.168.1.XXX | 192.168.1.XXX |
端口 | 18080 | 8080 |
项目名称 | xht | xht |
http{
#限流20MB
#limit_conn_zone $binary_remote_addr zone=one:20m;
#限流20MB,每秒允许处理1000个请求
limit_req_zone $binary_remote_addr zone=perip:20m rate=1000r/s;
server {
location /xht {
root html;
index index.html index.htm;
limit_req zone=perip;
proxy_pass http://192.168.1.111:8080/xht;
}
}
}
http {
# 总限流20MB 1000次/秒
limit_req_zone $binary_remote_addr zone=totalLimit:20m rate=1000r/s;
# 设置5MB用于图片上传,限制连接个数
limit_conn_zone $binary_remote_addr zone=uploadLimit:5m;
server {
location /xht {
root html;
index index.html index.htm;
#总流量限制和突发限制
limit_req zone=totalLimit burst=1000 nodelay;
proxy_pass http://192.168.1.111:8080/xht;
}
# 附件上传
location /uploadAttach.do{
# 限制每个IP只允许1个并发连接
limit_conn uploadLimit 1;
# 每个连接上传流量限制
limit_rate 1024k;
}
}
}
http {
# 总限流20MB 1000次/秒
limit_req_zone $binary_remote_addr zone=totalLimit:20m rate=1000r/s;
# 设置5MB用于图片上传,限制连接个数
limit_conn_zone $binary_remote_addr zone=uploadLimit:5m;
# 设置10MB用于高频接口,每秒请求频率
limit_req_zone $binary_remote_addr zone=feqLimit:10m rate=100r/s;
server {
location /xht {
root html;
index index.html index.htm;
#总流量限制和突发限制
limit_req zone=totalLimit burst=1000 nodelay;
proxy_pass http://192.168.1.111:8080/xht;
}
# 附件上传
location /uploadAttach.do{
# 限制每个IP只允许1个并发连接
limit_conn uploadLimit 1;
# 每个连接上传流量限制
limit_rate 512k;
}
# 登录
location /userLogin.do {
limit_req zone=feqLimit burst=100;
}
# 实时位置
location /sendXhyPos.do {
limit_req zone=feqLimit burst=100;
}
# 通知公告
location /getMessage.do {
limit_req zone=feqLimit burst=100;
}
}
}
http {
# 设置5MB用于图片上传,限制连接个数
limit_conn_zone $binary_remote_addr zone=uploadLimit:5m;
server {
location /xht {
root html;
index index.html index.htm;
proxy_pass http://192.168.1.111:8080/xht;
}
location /uploadAttach.do {
# 限制每个IP只允许1个并发连接
limit_conn uploadLimit 1;
# 每个连接上传流量限制
limit_rate 512k;
}
}
}
http {
# 设置10MB用于图片上传,限制连接个数
limit_conn_zone $binary_remote_addr zone=uploadLimit:10m;
server {
location /xht {
root html;
index index.html index.htm;
proxy_pass http://192.168.1.111:8080/xht;
}
location /uploadAttach.do {
# 限制每个IP只允许1个并发连接
limit_conn uploadLimit 1;
# 每个连接上传流量限制
limit_rate 512k;
}
}
}
http {
# 设置15MB用于图片上传,限制连接个数
limit_conn_zone $binary_remote_addr zone=uploadLimit:15m;
server {
location /xht {
root html;
index index.html index.htm;
proxy_pass http://192.168.1.111:8080/xht;
}
location /uploadAttach.do {
# 限制每个IP只允许1个并发连接
limit_conn uploadLimit 1;
# 每个连接上传流量限制
limit_rate 512k;
}
}
}
http {
# 设置18MB用于图片上传,限制连接个数
limit_conn_zone $binary_remote_addr zone=uploadLimit:18m;
server {
location /xht {
root html;
index index.html index.htm;
proxy_pass http://192.168.1.111:8080/xht;
}
location /uploadAttach.do {
# 限制每个IP只允许1个并发连接
limit_conn uploadLimit 1;
# 每个连接上传流量限制
limit_rate 512k;
}
}
}
http {
limit_req_zone $binary_remote_addr zone=feqLimit:20m rate=50r/s;
server {
location /xht {
root html;
index index.html index.htm;
proxy_pass http://192.168.1.111:8080/xht;
}
# 后台登录
location /login_gis/loginVerify.do {
limit_req zone=feqLimit burst=50;
}
# 移动端登录
location /userLogin.do {
limit_req zone=feqLimit burst=50;
}
# 实时位置
location /sendXhyPos.do {
limit_req zone=feqLimit burst=50;
}
# 通知公告
location /getMessage.do {
limit_req zone=feqLimit burst=50;
}
}
}
http {
limit_req_zone $binary_remote_addr zone=feqLimit:20m rate=100r/s;
server {
location /xht {
root html;
index index.html index.htm;
proxy_pass http://192.168.1.111:8080/xht;
}
# 后台登录
location /login_gis/loginVerify.do {
limit_req zone=feqLimit burst=100;
}
# 移动端登录
location /userLogin.do {
limit_req zone=feqLimit burst=100;
}
# 实时位置
location /sendXhyPos.do {
limit_req zone=feqLimit burst=100;
}
# 通知公告
location /getMessage.do {
limit_req zone=feqLimit burst=100;
}
}
}
http {
limit_req_zone $binary_remote_addr zone=feqLimit:20m rate=150r/s;
server {
location /xht {
root html;
index index.html index.htm;
proxy_pass http://192.168.1.111:8080/xht;
}
# 后台登录
location /login_gis/loginVerify.do {
limit_req zone=feqLimit burst=150;
}
# 移动端登录
location /userLogin.do {
limit_req zone=feqLimit burst=150;
}
# 实时位置
location /sendXhyPos.do {
limit_req zone=feqLimit burst=150;
}
# 通知公告
location /getMessage.do {
limit_req zone=feqLimit burst=150;
}
}
}
http{
limit_req_zone $binary_remote_addr zone=feqLimit:20m rate=200r/s;
server {
location /xht {
root html;
index index.html index.htm;
proxy_pass http://192.168.1.111:8080/xht;
}
# 后台登录
location /login_gis/loginVerify.do {
limit_req zone=feqLimit burst=200;
}
# 移动端登录
location /userLogin.do {
limit_req zone=feqLimit burst=200;
}
# 实时位置
location /sendXhyPos.do {
limit_req zone=feqLimit burst=200;
}
# 通知公告
location /getMessage.do {
limit_req zone=feqLimit burst=200;
}
}
}
参考:
http {
#容器共使用10M的来对于IP传输开销
limit_conn_zone $binary_remote_addr zone=one:10m;
server {
location /download/ {
limit_conn one 1; #限制每个IP只能发起一个并发连接
limit_rate 300k; #对每个连接限速300k。
}
}
}
#注意,这里是对连接限速,而不是对IP限速。
#如果一个IP允许两个并发连接,那么这个IP就是限速limit_rate×2。
http {
limit_req_zone $ binary_remote_addr zone = one:10m rate = 1r/s;
server{
location /upload/{
limit_req zone= one burst = 5;
}
}
转载地址:http://vexj.baihongyu.com/