负载均衡超时时间是如何定义和优化的?

一、产品介绍

负载均衡(Load Balancing)是一种在多个计算资源(如服务器、服务实例等)之间分配工作负载的技术,它通过将传入的请求分发到多个后端服务器上,从而提高系统的处理能力和可靠性,在实际应用中,负载均衡器可以确保高可用性、提升系统性能以及优化资源利用。

负载均衡超时时间是如何定义和优化的?

二、用户指南

1. 基本概念

连接超时时间(proxy_connect_timeout):指负载均衡器与后端服务器建立连接的等待时间,默认值为60秒。

读取超时时间(proxy_read_timeout):指负载均衡器等待后端服务器处理请求并返回响应的最大时间,默认值为60秒。

发送超时时间(proxy_send_timeout):指负载均衡器向客户端发送响应的最大时间,默认值为60秒。

2. 配置示例

http {
    upstream web {
        server 192.168.30.11:80 max_fails=1 fail_timeout=30;     #设置失败1次,30秒内不再往这台设备转发
        server 192.168.30.11:81 max_fails=1 fail_timeout=30;
    }
    server {
        listen 89;
        location / {
            proxy_connect_timeout 30s;
            proxy_read_timeout 30s;
            proxy_send_timeout 30s;
            proxy_next_upstream off;
            proxy_pass http://web;
        }
    }
}

3. 高可用性实现对比

负载均衡超时时间是如何定义和优化的?

Haproxy:无论是否有请求,都会一直检测后端真实服务器的状态,有问题会将其移出。

Nginx:如果后端真实服务器挂掉,且proxy_next_upstream关闭,则影响较大。

三、开发指南

1. 超时时间配置

连接空闲超时时间(keepalive_timeout):如果在超时时间内没有新的请求,负载均衡会暂时中断当前连接,直到下一次请求时重新建立新的连接,取值范围为10-4000秒,默认值为300秒(TCP协议)或60秒(HTTP/HTTPS/TERMINATED_HTTPS监听器)。

请求超时时间(client_timeout):客户端向负载均衡发起请求,一个请求多次发送时,传输时间间隔超过请求超时时间,则负载均衡将放弃等待并关闭连接,取值范围为1-300秒,默认值为60秒。

响应超时时间(member_timeout):负载均衡向后端服务器发起请求,如果超时时间内接收请求的后端服务器无响应或两次响应传输的时间间隔超过响应超时时间,负载均衡会向其他后端服务器重试请求,如果重试期间后端服务器一直没有响应,则负载均衡会给客户端返回HTTP 504错误码,取值范围为1-300秒,默认值为60秒。

负载均衡超时时间是如何定义和优化的?

2. 配置示例

apiVersion: v1 
kind: Service 
metadata: 
  annotations:
    kubernetes.io/elb.id: <your_elb_id>    #本示例中使用已有的独享型ELB,请替换为您的独享型ELB ID
    kubernetes.io/elb.class: performance  # ELB类型
    kubernetes.io/elb.keepalive_timeout: '300'  # 客户端连接空闲超时时间
  name: nginx 
spec: 
  ports: 
  name: service0 
    port: 80
    protocol: TCP 
    targetPort: 80
  selector: 
    app: nginx 
  type: LoadBalancer

四、约束与限制

该特性存在集群版本限制,仅在以下版本中生效v1.19集群(v1.19.16-r30及以上版本)、v1.21集群(v1.21.10-r10及以上版本)、v1.23集群(v1.23.8-r10及以上版本)、v1.25集群(v1.25.3-r10及以上版本)。

仅在使用独享型ELB时,负载均衡类型的服务支持设置超时时间,更新Service时,如果删除超时时间配置,不会修改已有监听器的超时时间配置。

五、表格说明

协议 类别 描述 取值范围 默认超时时间
TCP 空闲超时时间 如果在超时时间内一直没有访问请求,负载均衡会关闭当前连接,直到下一次请求到来时再重新建立新的连接。 10~4000s 300s
UDP 空闲超时时间 如果在超时时间内一直没有访问请求,负载均衡会关闭当前连接,直到下一次请求到来时再重新建立新的连接。 10~4000s 共享型负载均衡:10s
独享型负载均衡:300s
HTTP/HTTPS 空闲超时时间 如果在超时时间内一直没有访问请求,负载均衡会关闭当前连接,直到下一次请求到来时再重新建立新的连接。 0~4000s 60s
HTTP/HTTPS 请求超时时间 客户端向负载均衡发起请求,一个请求多次发送时,传输时间间隔超过请求超时时间,则负载均衡将放弃等待关闭连接。 1~300s 60s
HTTP/HTTPS 响应超时时间 负载均衡向后端服务器发起请求,如果超时时间内接收请求的后端服务器无响应或两次响应传输的时间间隔超过响应超时时间,负载均衡会向其他后端服务器重试请求,如果重试期间后端服务器一直没有响应,则负载均衡会给客户端返回HTTP 504错误码。 1~300s 60s

负载均衡超时时间是确保系统稳定性和高效性的重要参数,了解其含义、配置方法以及在不同场景下的应用对于开发人员来说至关重要。

到此,以上就是小编对于“负载均衡超时时间文档介绍内容”的问题就介绍到这了,希望介绍的几点解答对大家有用,有任何问题和不懂的,欢迎各位朋友在评论区讨论,给我留言。

原创文章,作者:未希,如若转载,请注明出处:https://www.kdun.com/ask/1259771.html

本网站发布或转载的文章及图片均来自网络,其原创性以及文中表达的观点和判断不代表本网站。如有问题,请联系客服处理。

(0)
未希新媒体运营
上一篇 2024-11-02 04:08
下一篇 2024-11-02 04:17

相关推荐

  • 负载均衡解决方案如何优化网站性能和可靠性?

    负载均衡解决方案是现代互联网应用中不可或缺的一部分,它通过将用户请求均匀地分配到多台服务器上,提高了系统的服务能力和可用性,以下将从负载均衡的基本概念、常见方案、以及常用算法三个方面进行详细介绍:一、负载均衡的基本概念负载均衡(Load Balancing)是指在多个服务器或资源之间分配工作负载的过程,以提高系……

    2024-11-24
    07
  • 如何配置负载均衡的upstream?

    负载均衡(Load Balancing)是分布式系统中的一种关键技术,用于将客户端请求分配到多个服务器上,以提高系统的可用性和性能,在Nginx中,upstream模块是实现负载均衡的核心配置之一,本文将详细介绍如何在Nginx中配置upstream以实现负载均衡,并通过表格和问答形式解答常见问题,Nginx……

    2024-11-24
    05
  • 如何配置负载均衡集群LVS?

    负载均衡集群LVS配置一、概述Linux Virtual Server (LVS) 是一种高性能、高可用性的服务器负载均衡解决方案,广泛应用于大规模网络服务如Web、数据库和邮件服务等,本文将详细介绍LVS的工作原理、工作模式以及如何配置LVS来实现高效的负载均衡,二、负载均衡的结构1、负载调度器(Load B……

    2024-11-24
    05
  • 什么是浮动路由负载均衡?它是如何工作的?

    浮动路由负载均衡是一种网络配置技术,通过设置多条静态路由来实现路径备份和负载均衡,这种技术在确保网络高可用性和优化数据传输效率方面具有重要作用,以下将从原理概述、实验目的、实验内容、实验步骤以及常见问题与解答等方面进行详细阐述,一、原理概述浮动静态路由是一种特殊的静态路由,通过配置去往相同的目的网段但优先级不同……

    2024-11-24
    06

发表回复

您的电子邮箱地址不会被公开。 必填项已用 * 标注

产品购买 QQ咨询 微信咨询 SEO优化
分享本页
返回顶部
云产品限时秒杀。精选云产品高防服务器,20M大带宽限量抢购 >>点击进入