首页 > 其他分享 >分布式、集群式、负载均衡的区别和联系

分布式、集群式、负载均衡的区别和联系

时间:2023-02-06 17:11:34浏览次数:36  
标签:负载 http 集群 proxy 均衡 服务器 超时 分布式

分布式、集群式、负载均衡的介绍:

  • 分布式:一个系统拆成多个子系统,部署在不同服务器。每个服务器只做一小块。功能拆分。
  • 集群式:每个服务器提供的服务一样,靠数量多取胜。
  • 负载均衡:把过来的请求,分发给不同的服务器去处理。类似导流器。

例如,一个购物网站,现在有10台服务器:

  • 部署到10台服务器上,每台部署一份相同代码。集群式。
  • 商品展示功能部署在一台服务器,购物车在一台服务器,支付在一台服务器……分布式。
  • 上面这10台服务器,万一每次只访问1台咋办?负载均衡。把过来的请求均匀的(或加权的)分发到其他9台上(1台做分发),负载均衡。

现在,通常三者结合起来用。

服务拆成子服务,用分布式的方式部署后,每个子服务再用集群式+负载均衡“扩容”,提高可用性。


下面介绍一下Nginx 配置负载均衡策略:

今天来探讨一下当我们有多台服务的时候,其中一台服务挂掉了会怎么样呢?

我们使用上文中的思路去搭建一个简单的负载均衡,然后关闭其中一台再来访问,会发现我们的浏览器卡住一直转圈圈,过了很久才会显示结果。

由此我们可以得出结论Nginx负载的时候如果其中一台服务挂掉了,它会把请求转发到另一个可以提供服务的机器,其中这之间的超时等待默认是60s

我们可以通过这一个配置去改变这个时间(proxy_connect_timeout 定义与代理服务器建立连接的超时。请注意,此超时通常不能超过75秒。),比如我们可以把时间设置成1s,这样用户就无感知了。(当然了这个时间有点极端,只是为了测试)

location / {
    proxy_pass http://xdx97.com;
    proxy_http_version 1.1;
    proxy_set_header Upgrade $http_upgrade;
    proxy_set_header Connection $connection_upgrade;
    #nginx服务器与被代理服务连接超时时间,代理超时
    proxy_connect_timeout 1s;
}

 

重启Nginx之后,会发现即使挂掉了一个服务,也可以很快的响应。

其它常用配置:

#允许客户端请求的最大单文件字节数
client_max_body_size 10m; 
#缓冲区代理缓冲用户端请求的最大字节数,
client_body_buffer_size 128k;
#nginx跟后端服务器连接超时时间(代理连接超时)
proxy_connect_timeout 90;
#连接成功后,后端服务器响应时间(代理接收超时)
proxy_read_timeout 90;
#设置代理服务器(nginx)保存用户头信息的缓冲区大小
proxy_buffer_size 4k;
#proxy_buffers缓冲区,网页平均在32k以下的话,这样设置
proxy_buffers 32k;
#高负荷下缓冲大小(proxy_buffers*2)
proxy_busy_buffers_size 64k; 
#设定缓存文件夹大小,大于这个值,将从upstream服务器传
proxy_temp_file_write_size 64k;

 

全部配置:

http://nginx.org/en/docs/http/ngx_http_proxy_module.html

 

标签:负载,http,集群,proxy,均衡,服务器,超时,分布式
From: https://www.cnblogs.com/carver/p/17095979.html

相关文章

  • Hadoop集群搭建--虚拟机互相ping通
    文章目录​​目标​​​​一、虚拟机的网络配置​​​​二、虚拟机机子ip配置​​​​1.第一台hadoop0​​​​2.第二台hadoop1​​​​3.验证​​目标看到了很多文献......
  • NetApp DataONTAP 集群模式 学习笔记1
    一.NetApp存储操作系统DataONTAP是NetApp最流行的存储操作系统,它运行在NetAppFAS(FabricAttachedStorage)系统上。FAS系统是被设计为共享的存储系统,它支持多种SAN和NAS存......
  • ceph集群搭建
    #生产最好使用2个ip段#系统Ubuntu20.04.3#192.168.10.20x集群通讯事业#192.168.10.10x客户端和各种应用使用192.168.10.200/192.168.10.100ceph-deploy192.168.10......
  • SpringCloud微服务电商系统在Kubernetes集群中上线详细教程
    Kubernetes集群部署Springcloud微服务商务系统 原文网址:https://www.wangt.cc//2021/12/springcloud%E5%BE%AE%E6%9C%8D%E5%8A%A1%E7%94%B5%E5%95%86%E7%B3%BB%E7%BB%9F%......
  • 《分布式技术原理与算法解析》学习笔记Day02
    分布式系统发展历程分布式的发展过程经历了三个阶段:单机模式(单兵模式)数据并行或者数据分布式(游击队模式)任务并行或者任务分布式(集团军模式)什么是单机模式,它的优缺点......
  • etcd集群搭建和使用中常见的报错信息(热key探测系列教程)
    etcd的下载地址:​​https://github.com/etcd-io/etcd/releases​​当前最新的v3.4.9,我之前用的时候包括目前京东热key线上都是用的3.4.6,下面主要是看一下如何搭建etcd集群。......
  • ElasticSearch分布式搜索引擎——从入门到精通
    ES分布式搜索引擎注意:在没有创建库的时候搜索,ES会创建一个库并自动创建该字段并且设置为String类型也就是text什么是elasticsearch?一个开源的分布式搜索引擎,可以用......
  • K8S集群安装
    1、环境准备1.1、机器环境节点CPU核数必须是:>=2核/内存要求必须是:>=2G,否则k8s无法启动DNS网络:最好设置为本地网络连通的DNS,否则网络不通,无法下载一些镜像......
  • ceph集群 octups添加Monitor
    添加Monitor在monitor节点导出mon的钥匙环文件sudo-ucephcephauthgetmon.-o/tmp/ceph.mon.keyring获取monmap并写入文件sudo-ucephcephmongetmap-o/t......
  • Docker-compose 容器集群的快速编排
    一、Docker-compose简介Docker-Compose项目是Docker官方的开源项目,负责实现对Docker容器集群的快速编排。Docker-Compose将所管理的容器分为三层,分别是 工程(projec......