服务器集群 -- nginx配置tcp负载均衡

当面临高流量、高可用性、水平扩展、会话保持或跨地域流量分发等需求时,单台服务器受限于硬件资源、性能有限不能满足应用场景的并发需求量时,引入负载均衡器部署多个服务器共同处理客户端的并发请求,可以帮助优化系统架构,提高系统的性能、可靠性和可扩展性。

1.简介

负载均衡器(Load Balancer)是一种网络设备或服务,用于在多个服务器之间分配和平衡网络流量,以提高系统的性能、可靠性和可扩展性。

负载均衡器的主要功能包括:

  1. 流量分发:负载均衡器接收来自客户端的请求,并将请求分发给后端的多个服务器。它使用各种算法(如轮询、最小连接数、源IP哈希等)来决定将请求发送到哪个服务器。

  2. 健康检查:负载均衡器定期检查后端服务器的健康状况,例如通过发送心跳请求或监测服务器的响应时间。如果某个服务器故障或不可用,负载均衡器将停止将流量发送到该服务器,确保只将请求发送到正常工作的服务器。

  3. 会话保持:对于需要保持会话状态的应用程序,负载均衡器可以使用不同策略来确保用户的请求都被发送到同一台服务器,以维持会话的一致性。

  4. 扩展性和容错性:通过将流量分布到多个服务器上,负载均衡器可以提高系统的吞吐量和可扩展性,并提供容错功能。如果某个服务器故障或超载,负载均衡器可以自动将流量重新分配给其他健康的服务器,确保应用程序的持续可用性。

负载均衡器可以是硬件设备(如专用的负载均衡器硬件)或软件实现(如Nginx、HAProxy等)。它在分布式系统、网站和服务器集群中被广泛使用,以提供高可用性、高性能和可伸缩性。

2.Ubuntu环境配置nginx

复制代码
tar -zxf yourfile.tar.gz

 ./configure --with-stream

缺失PCRE 库

进入root用户编译

sudo su

复制代码
make && make install

nginx配置tcp负载均衡

一致性哈希算法(需要插件,没有可以注释掉)

配置完成后,./nginx -s reload重启

启动nginx服务

复制代码
sudo systemctl start nginx

检查nginx服务状态

复制代码
sudo systemctl status nginx

重新加载配置文件启动

./nginx -s reload

停止nginx服务

./nginx -s stop

相关推荐
草履虫建模24 分钟前
在 RuoYi 中接入 3D「园区驾驶舱」:Vue2 + Three.js + Nginx
运维·开发语言·javascript·spring boot·nginx·spring cloud·微服务
凡间客31 分钟前
Linux防火墙-Firewalld
linux·运维·服务器
Justin_193 小时前
Linux-Shell编程之sed和awk
linux·运维·服务器
半桔4 小时前
【Linux手册】消息队列从原理到模式:底层逻辑、接口实战与责任链模式的设计艺术
java·linux·运维·服务器
华纳云IDC服务商4 小时前
Linux服务器的系统安全强化超详细教程
linux·服务器·系统安全
衍余未了4 小时前
k8s镜像推送到阿里云,使用ctr推送镜像到阿里云
linux·运维·服务器
Forever_Hopeful4 小时前
【C 语言生成指定范围随机数(整数 + 小数):原理、实现与避坑指南】
服务器·c语言·开发语言
yiqiqukanhaiba4 小时前
Linux编程笔记1-概念&数据类型&输入输出
linux·运维·服务器
乌萨奇也要立志学C++5 小时前
【Linux】进程概念(一):从冯诺依曼体系到 PCB 的进程核心解析
linux·运维·服务器
游九尘5 小时前
服务器都是用的iis, 前端部署后报跨域,不是用同一个服务器 是前端项目的服务器做Nginx转发,还是后端项目的服务器做Nginx转发?
服务器·前端·nginx