• nginx 限流(限制并发配置)


    需求:

    当服务器的访问压力过大时,实现降级,将接受不了的请求重定向到应急界面。

    一、限流nginx设置

    nginx限流使用模块 upstream

    放置在http模块

    #限流并发
    
    upstream node{
    server 127.0.0.1:8080 max_conns=1;
    }

    #超出的请求会返回502状态码

    放置在server模块

    #测试地址,访问服务器py路径会转发到本机的8080端口
    location /py { proxy_pass http://node/; } #错误重定向到降级界面 error_page 502 503 https://fund/b.html;

    注意:如果少了一个/ 会将请求转发到8080的/py路径下
    proxy_pass http://node;
    
    

    二、准备测试环境

    开启8080端口,使用web.py 开启一个简单的端口

    安装web.py 

    pip install web.py==0.40-dev1

    编写网站脚本webtest.py

    import web
    
    urls = (
        '/', 'index'
    )
    
    class index:
        def GET(self):
            return "Hello, world!"
    
    if __name__ == "__main__":
        app = web.application(urls, globals())
        app.run()

    运行脚本启动端口 python webtest.py 0.0.0.0:8080 启动8080端口允许任何IP访问

    三、测试限流配置

    使用jmeter测试

    1、限流设置为并发连接数1

    请求

    结果

    并发请求5,发送100次,共500个请求,成功367,失败133

    并发请求10.发送100次,共1000个请求,成功566,失败434

     并发请求20.发送100次,共2000个请求,成功848,失败1152

  • 相关阅读:
    用 ArcMap 发布 ArcGIS Server Feature Server Feature Access 服务 SQL Server版
    ArcGIS Server Manager 重置密码
    接口自动化过程中遇到的问题?
    接口自动化的闭环?
    每天有80亿的文件需要存储,你会怎么设计存储和检索?
    数据库之索引
    java之高并发锁
    测试环境搭建
    shell基本语法
    RPC和HTTP
  • 原文地址:https://www.cnblogs.com/maoxianfei/p/9890761.html
Copyright © 2020-2023  润新知