Nginx安装Windows、Linux | 正向代理、反向代理、负载均衡

本文涉及的产品
传统型负载均衡 CLB,每月750个小时 15LCU
EMR Serverless StarRocks,5000CU*H 48000GB*H
应用型负载均衡 ALB,每月750个小时 15LCU
简介: Nginx安装Windows、Linux | 正向代理、反向代理、负载均衡


Nginx

Nginx是一个高性能的HTTP和反向代理服务器,也可用作电子邮件代理服务器和通用TCP/UDP代理服务器。它是一个轻量级的Web服务器,可以作为静态资源服务器、负载均衡器和反向代理服务器使用。Nginx的优点包括高性能、低内存消耗、高并发连接、灵活性和可扩展性等,因此得到了广泛的应用

  • 高性能:Nginx采用事件驱动、异步非阻塞的处理方式,能够在高负载下保持稳定的性能
  • 低内存消耗:Nginx在处理请求时占用的内存非常少,因此可以在资源有限的情况下运行
  • 高并发连接:Nginx能够支持大量的并发连接,可以处理数百万个并发连接
  • 灵活性:Nginx支持自定义模块和插件,可以根据需要进行扩展
  • 可扩展性:Nginx可以通过多个服务器进行负载均衡,从而提高系统的可扩展性

正向代理

正向代理:指客户端通过代理服务器来访问其他服务器的过程。在正向代理模式下,代理服务器充当客户端和目标服务器之间的中间人,客户端向代理服务器发送请求,代理服务器再将请求转发给目标服务器,然后将目标服务器的响应返回给客户端。正向代理的主要作用是隐藏客户端的IP地址和提高访问速度,也可以用于访问受限制的网站

反向代理

反向代理:指客户端通过代理服务器来访问自己的服务器的过程。反向代理模式,代理服务器充当目标服务器和客户端之间的中间人,客户端向代理服务器发送请求,代理服务器再将请求转发给目标服务器,然后将目标服务器的响应返回给客户端。反向代理的主要作用是隐藏服务器的IP地址和提高访问速度,也可以用于负载均衡和缓存数据

负载均衡

负载均衡是指将网络流量分摊到多个服务器上,以提高网络性能、增加吞吐量、降低响应时间和提高可用性等。负载均衡可以通过多种方式实现,包括软件负载均衡和硬件负载均衡;Nginx负载均衡的策略主要包括以下几种:

  • 轮询:轮询是Nginx默认的负载均衡策略,它将请求依次分配给每个后端服务器,保证每个服务器都能平均分配请求负载
  • 加权轮询:加权轮询策略可以根据后端服务器的性能和负载情况,给每个服务器分配不同的权重值,然后按照权重值进行轮询分配请求,从而使得性能较好的服务器能够处理更多的请求
  • IP Hash:IP Hash策略根据客户端的IP地址进行哈希运算,将相同IP地址的请求分配给同一个后端服务器,这样可以保证同一个客户端的请求都落到同一台服务器上,从而避免了会话状态的问题
  • 最少连接:最少连接策略会将请求分配给当前连接数最少的后端服务器,这样可以使得负载均衡器将请求分配给连接能力最强的后端服务器
  • 加权最少连接:加权最少连接策略将请求分配给当前权重值和连接数最少的后端服务器,这样可以根据后端服务器的性能和负载情况,动态地分配请求负载
轮询

轮询是Nginx默认的负载均衡策略,它将请求依次分配给每个后端服务器,保证每个服务器都能平均分配请求负载

加权轮询

加权轮询策略可以根据后端服务器的性能和负载情况,给每个服务器分配不同的权重值,然后按照权重值进行轮询分配请求,从而使得性能较好的服务器能够处理更多的请求

IP Hash

IP Hash策略根据客户端的IP地址进行哈希运算,将相同IP地址的请求分配给同一个后端服务器,这样可以保证同一个客户端的请求都落到同一台服务器上,从而避免了会话状态的问题

动静分离

Nginx动静分离是一种优化Web服务器性能的常用技术,它通过将静态资源和动态资源分开处理,从而提高Web服务器的性能和吞吐量

Nginx安装:Windows

  • 解压到安装目录后,输入cmd启动Nginx

  • 启动时报错80端口被占用
D:\nginx\nginx-1.24.0>nginx.exe
nginx: [emerg] bind() to 0.0.0.0:80 failed (10013: An attempt was made to access a socket in a way forbidden by its access permissions)
  • 打开Nginx配置文件修改端口

  • cmd命令再次启动Nginx,浏览器访问即可(localhost:8080)

Nginx安装:Linux

  • 使用xftp将安装包传到Linux
  • 解压安装
tar -zxvf nginx-1.24.0.tar.gz
  • 运行配置文件
./configure
  • 构建软件
make
make install
  • 查看Nginx位置
whereis nginx
  • 进入Nginx目录sbin中,执行nginx文件
[root@localhost sbin]# ./nginx 
[root@localhost sbin]# curl 192.168.51.140:80
Welcome to nginx!
  • 如果端口占用则更换端口(nginx.conf)

Nginx 常用命令

./nginx 启动
./nginx -s stop 停止
./nginx -s quit 安全退出
./nginx -s reload 重新加载配置文件
ps aux grep nginx 查看nginx进程

🌼 结语:创作不易,如果觉得博主的文章赏心悦目,还请——点赞👍收藏⭐️评论📝


相关实践学习
SLB负载均衡实践
本场景通过使用阿里云负载均衡 SLB 以及对负载均衡 SLB 后端服务器 ECS 的权重进行修改,快速解决服务器响应速度慢的问题
负载均衡入门与产品使用指南
负载均衡(Server Load Balancer)是对多台云服务器进行流量分发的负载均衡服务,可以通过流量分发扩展应用系统对外的服务能力,通过消除单点故障提升应用系统的可用性。 本课程主要介绍负载均衡的相关技术以及阿里云负载均衡产品的使用方法。
目录
相关文章
|
3天前
|
存储 负载均衡 中间件
Nginx反向代理配置详解,图文全面总结,建议收藏
Nginx 是大型架构必备中间件,也是大厂喜欢考察的内容,必知必会。本篇全面详解 Nginx 反向代理及配置,建议收藏。
Nginx反向代理配置详解,图文全面总结,建议收藏
|
15天前
|
应用服务中间件 API nginx
nginx配置反向代理404问题
【10月更文挑战第18天】本文介绍了使用Nginx进行反向代理的配置方法,解决了404错误、跨域问题和302重定向问题。关键配置包括代理路径、请求头设置、跨域头添加以及端口转发设置。通过调整`proxy_set_header`和添加必要的HTTP头,实现了稳定的服务代理和跨域访问。
nginx配置反向代理404问题
|
23天前
|
Linux 测试技术 网络安全
Linux系统之安装OneNav个人书签管理器
【10月更文挑战第19天】Linux系统之安装OneNav个人书签管理器
40 5
Linux系统之安装OneNav个人书签管理器
|
25天前
|
监控 Java Linux
Linux系统之安装Ward服务器监控工具
【10月更文挑战第17天】Linux系统之安装Ward服务器监控工具
49 5
Linux系统之安装Ward服务器监控工具
|
7天前
|
存储 安全 数据管理
如何在 Rocky Linux 8 上安装和配置 Elasticsearch
本文详细介绍了在 Rocky Linux 8 上安装和配置 Elasticsearch 的步骤,包括添加仓库、安装 Elasticsearch、配置文件修改、设置内存和文件描述符、启动和验证 Elasticsearch,以及常见问题的解决方法。通过这些步骤,你可以快速搭建起这个强大的分布式搜索和分析引擎。
20 5
|
19天前
|
消息中间件 Linux RocketMQ
在Red Hat Enterprise Linux 9上使用Docker快速安装并部署
通过以上步骤,你可以在Red Hat Enterprise Linux 9上使用Docker快速安装并部署RocketMQ。这种方法不仅简化了安装过程,还提供了一个灵活的环境来管理和扩展消息队列系统。RocketMQ作为一款高性能的分布式消息系统,通过Docker可以实现快速部署和高效管理。
46 2
|
20天前
|
消息中间件 Linux RocketMQ
在Red Hat Enterprise Linux 9上使用Docker快速安装并部署
通过以上步骤,你可以在Red Hat Enterprise Linux 9上使用Docker快速安装并部署RocketMQ。这种方法不仅简化了安装过程,还提供了一个灵活的环境来管理和扩展消息队列系统。RocketMQ作为一款高性能的分布式消息系统,通过Docker可以实现快速部署和高效管理。
29 3
|
23天前
|
Ubuntu 应用服务中间件 Linux
Linux下搭建Nginx环境的搭建
Linux下搭建Nginx环境的搭建
|
3天前
|
存储 缓存 Linux
【Linux】另一种基于rpm安装yum的方式
通过本文的方法,您可以在离线环境中使用RPM包安装YUM并进行必要的配置。这种方法适用于无法直接访问互联网的服务器或需要严格控制软件源的环境。通过配置本地YUM仓库,确保了软件包的安装和更新可以顺利进行。希望本文能够为您在特定环境中部署YUM提供实用的指导。
25 0
|
9天前
|
关系型数据库 MySQL Linux
Linux-安装Mariadb
本文介绍了在 Alibaba Cloud Linux 系统上安装和配置 MariaDB 10.5 的步骤。包括下载安装、初始化数据库、启动服务、处理启动失败的常见问题(如权限问题),以及如何连接数据库、设置密码和允许外部连接。通过这些步骤,您可以顺利完成 MariaDB 的安装和基本配置。
21 0