Nginx的upstream上游服务分配策略总结

2024-03-03 00:28

本文主要是介绍Nginx的upstream上游服务分配策略总结,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

Nginx分配服务的策略

轮询,权重轮询,ip_hash,url_hash,fail服务器响应时间。一共五中分配方式

1. 默认轮询

将请求轮流分配到每一个服务器,某个服务器挂掉后能自动剔除,

upstream gateway{server 192.168.1.11:8888;server 192.168.1.22:8888;server 192.168.1.33:8888;
}

2. 权重轮询

在轮询的基础上可以给某个服务器设置权重,权重越大,转发访问的概率越大。

upstream zhang21 {server 192.168.1.11 weight=1;server 192.168.1.22 weight=2;server 192.168.1.33 weight=3;}

3. ip_hash

根据请求的ip转换成hash,根据hash结果来进行分配服务器。可以让同一个ip地址多次访问到同一个服务器,适用于做压力测试。多次请求能访问到同一个服务。

upstream zhang21 {ip_hash;server 192.168.1.11:7777;server 192.168.1.22:8888;server 192.168.1.33:9999;}

4. fair公平

根据后端服务器的响应时间来进行分配请求,响应时间越短的服务器有限分配请求。

upstream zhang21 {fair;server 192.168.1.11;server 192.168.1.22;server 192.168.1.33;}

5. url_hash

按照url对应的hash值来分配请求,同一个url访问同一个服务器。适用于访问缓存服务器。

upstream zhang21 {server 192.168.1.11;server 192.168.1.22;server 192.168.1.33;hash $request_uri;hash_method crc32;}

hash_method为hash采用的算法

参考

Nginx的upstream详解
负载均衡的6种算法,Ngnix的5种算法!

这篇关于Nginx的upstream上游服务分配策略总结的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/767879

相关文章

SpringBoot如何通过Map实现策略模式

《SpringBoot如何通过Map实现策略模式》策略模式是一种行为设计模式,它允许在运行时选择算法的行为,在Spring框架中,我们可以利用@Resource注解和Map集合来优雅地实现策略模式,这... 目录前言底层机制解析Spring的集合类型自动装配@Resource注解的行为实现原理使用直接使用M

如何自定义Nginx JSON日志格式配置

《如何自定义NginxJSON日志格式配置》Nginx作为最流行的Web服务器之一,其灵活的日志配置能力允许我们根据需求定制日志格式,本文将详细介绍如何配置Nginx以JSON格式记录访问日志,这种... 目录前言为什么选择jsON格式日志?配置步骤详解1. 安装Nginx服务2. 自定义JSON日志格式各

Linux上设置Ollama服务配置(常用环境变量)

《Linux上设置Ollama服务配置(常用环境变量)》本文主要介绍了Linux上设置Ollama服务配置(常用环境变量),Ollama提供了多种环境变量供配置,如调试模式、模型目录等,下面就来介绍一... 目录在 linux 上设置环境变量配置 OllamPOgxSRJfa手动安装安装特定版本查看日志在

Nginx指令add_header和proxy_set_header的区别及说明

《Nginx指令add_header和proxy_set_header的区别及说明》:本文主要介绍Nginx指令add_header和proxy_set_header的区别及说明,具有很好的参考价... 目录Nginx指令add_header和proxy_set_header区别如何理解反向代理?proxy

java常见报错及解决方案总结

《java常见报错及解决方案总结》:本文主要介绍Java编程中常见错误类型及示例,包括语法错误、空指针异常、数组下标越界、类型转换异常、文件未找到异常、除以零异常、非法线程操作异常、方法未定义异常... 目录1. 语法错误 (Syntax Errors)示例 1:解决方案:2. 空指针异常 (NullPoi

SpringCloud之LoadBalancer负载均衡服务调用过程

《SpringCloud之LoadBalancer负载均衡服务调用过程》:本文主要介绍SpringCloud之LoadBalancer负载均衡服务调用过程,具有很好的参考价值,希望对大家有所帮助,... 目录前言一、LoadBalancer是什么?二、使用步骤1、启动consul2、客户端加入依赖3、以服务

Nginx配置location+rewrite实现隐性域名配置

《Nginx配置location+rewrite实现隐性域名配置》本文主要介绍了Nginx配置location+rewrite实现隐性域名配置,包括基于根目录、条件和反向代理+rewrite配置的隐性... 目录1、配置基于根目录的隐性域名(就是nginx反向代理)2、配置基于条件的隐性域名2.1、基于条件

Java反转字符串的五种方法总结

《Java反转字符串的五种方法总结》:本文主要介绍五种在Java中反转字符串的方法,包括使用StringBuilder的reverse()方法、字符数组、自定义StringBuilder方法、直接... 目录前言方法一:使用StringBuilder的reverse()方法方法二:使用字符数组方法三:使用自

Ubuntu中Nginx虚拟主机设置的项目实践

《Ubuntu中Nginx虚拟主机设置的项目实践》通过配置虚拟主机,可以在同一台服务器上运行多个独立的网站,本文主要介绍了Ubuntu中Nginx虚拟主机设置的项目实践,具有一定的参考价值,感兴趣的可... 目录简介安装 Nginx创建虚拟主机1. 创建网站目录2. 创建默认索引文件3. 配置 Nginx4

Nginx如何进行流量按比例转发

《Nginx如何进行流量按比例转发》Nginx可以借助split_clients指令或通过weight参数以及Lua脚本实现流量按比例转发,下面小编就为大家介绍一下两种方式具体的操作步骤吧... 目录方式一:借助split_clients指令1. 配置split_clients2. 配置后端服务器组3. 配