nginx负载均衡

nginx实现负载均衡的模式

1、轮询

每个请求按时间顺序逐一分配到不同的后端服务器,也是nginx的默认模式。轮询模式的配置很简单,只需要把服务器列表加入到upstream模块中即可。
下面的配置是指:负载中有三台服务器,当请求到达时,nginx按照时间顺序把请求分配给三台服务器处理。

upstream serverList {
    server 127.0.0.1;
    server 127.0.0.2;
    server 127.0.0.3;
}
2、ip_hash

每个请求按访问IP的hash结果分配,同一个IP客户端固定访问一个后端服务器。可以保证来自同一ip的请求被打到固定的机器上,可以解决session问题。
下面的配置是指:负载中有三台服务器,当请求到达时,nginx优先按照ip_hash的结果进行分配,也就是同一个IP的请求固定在某一台服务器上,其它则按时间顺序把请求分配给三台服务器处理。

upstream serverList {
    ip_hash
    server 127.0.0.1;
    server 127.0.0.2;
    server 127.0.0.3;
}
3、url_hash

按访问url的hash结果来分配请求,相同的url固定转发到同一个后端服务器处理。

upstream serverList {
    server 127.0.0.1;
    server 127.0.0.2;
    server 127.0.0.3;
    hash $request_uri;
    hash_method crc32;
}
4、fair

按后端服务器的响应时间来分配请求,响应时间短的优先分配。

upstream serverList {
    server 127.0.0.1;
    server 127.0.0.2;
    server 127.0.0.3;
    fair;
}
5、least_conn

使用最少连接的负载平衡,nginx将尝试不使繁忙的应用程序服务器因过多的请求而过载,而是将新请求分配给不太繁忙的服务器。

upstream serverList {
    least_conn;
    server 127.0.0.1;
    server 127.0.0.2;
    server 127.0.0.3;
}

参数

1、down

表示单前的server暂时不参与负载

2、weight

默认为1.weight越大,负载的权重就越大。

3、max_fails

允许请求失败的次数默认为1.当超过最大次数时,返回proxy_next_upstream 模块定义的错误

4、fail_timeout

max_fails 次失败后,暂停的时间。

5、backup

其它所有的非backup、down机器忙的时候,请求backup机器。所以这台机器压力会最轻。

举例
upstream serverList {
    # 暂时不参与负载
    server 127.0.0.1:8080 down;
    # 权重5
    server 127.0.0.2:8080 weight=5;
    # 权重3,允许请求失败次数为3请求失败后暂停时间30s
    server 127.0.0.3:8080 weight=3 max_fails=3 fail_timeout=30s;
    # 其它所有的非backup、down机器忙的时候,请求backup机器
    server 127.0.0.4:8080 backup;
}

server {
    listen 80;
    server_name www.gin.com gin.com;
    
    location / {
        proxy_pass http://serverList;
    }
}
内容概要:本文档详细介绍了基于MATLAB实现的多头长短期记忆网络(MH-LSTM)结合Transformer编码器进行多变量时间序列预测的项目实例。项目旨在通过融合MH-LSTM对时序动态的细致学习和Transformer对全局依赖的捕捉,显著提升多变量时间序列预测的精度和稳定性。文档涵盖了从项目背景、目标意义、挑战与解决方案、模型架构及代码示例,到具体的应用领域、部署与应用、未来改进方向等方面的全面内容。项目不仅展示了技术实现细节,还提供了从数据预处理、模型构建与训练到性能评估的全流程指导。 适合人群:具备一定编程基础,特别是熟悉MATLAB和深度学习基础知识的研发人员、数据科学家以及从事时间序列预测研究的专业人士。 使用场景及目标:①深入理解MH-LSTM与Transformer结合的多变量时间序列预测模型原理;②掌握MATLAB环境下复杂神经网络的搭建、训练及优化技巧;③应用于金融风险管理、智能电网负荷预测、气象预报、交通流量预测、工业设备健康监测、医疗数据分析、供应链需求预测等多个实际场景,以提高预测精度和决策质量。 阅读建议:此资源不仅适用于希望深入了解多变量时间序列预测技术的读者,也适合希望通过MATLAB实现复杂深度学习模型的开发者。建议读者在学习过程中结合提供的代码示例进行实践操作,并关注模型训练中的关键步骤和超参数调优策略,以便更好地应用于实际项目中。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值