Nginx反向代理和负载均衡

1.反向代理

反向代理(Reverse Proxy)方式是指以代理服务器来接受internet上的连接请求,然后将请求转发给内部网络上的服务器,并将从服务器上得到的结果返回给internet上请求连接的客户端,此时代理服务器对外就表现为一个服务器。通过在网络各处放置反向代理节点服务器所构成的在现有的互联网基础之上的一层智能虚拟网络,CDN系统能够实时地根据网络流量和各节点的连接、负载状况以及到用户的距离和响应时间等综合信息将用户的请求重新导向离用户最近的服务节点上。

正向代理 :

加速器: 属于正向代理 雷神加速,在我自己的电脑上安装的,启动雷神软件, 雷神给我们访问蓝洞,从蓝洞拿到资源,再给我们。我们是知道蓝洞服务器的地址的。

反向代理:

我们开发了一个网站,但是总是收到别人的攻击, <www.laohan.com> 。 但是为了不让别人直接攻击我的服务器,我就做了一个代理服务器,nginx 。别人通过访问nginx就能代理到我的网址,其实他们是不知道我真正的服务器地址的,他们访问的只是我的nginx的地址。

一般会拿正向代理和方向代理来做对比,本质上来讲,就是看对谁负责

  • 反向代理:代理服务器是对服务器负责,站在服务器的一边的。

  • 正向代理:代理服务器是对客户端负责,站在客户端的一边的。

2.负载均衡

负载均衡是通过将请求分发到多个服务器来分摊服务器的负载,以提高整体性能和可用性。以下是使用Nginx进行负载均衡的一般步骤:

  1. 安装Nginx: 首先,确保在服务器上安装了Nginx。你可以使用系统的包管理工具(如apt、yum、brew等)进行安装。

    复制代码

    bashCopy code

    # 使用apt安装的例子(适用于Ubuntu) sudo apt-get update sudo apt-get install nginx

  2. 配置负载均衡: 修改Nginx的配置文件以定义负载均衡。配置文件通常位于/etc/nginx/nginx.conf/etc/nginx/conf.d/default.conf。以下是一个简单的负载均衡配置示例:

    复制代码

    nginxCopy code

    http { upstream backend { server backend1.example.com; server backend2.example.com; # 添加更多的后端服务器... } server { listen 80; location / { proxy_pass http://backend; } } }

    在上面的示例中,backend1.example.combackend2.example.com是你的后端服务器的地址。你可以根据需要添加更多的后端服务器。

  3. 重启Nginx: 在修改配置文件后,重新加载Nginx以使更改生效。

    复制代码

    bashCopy code

    sudo service nginx restart

    或者

    复制代码

    bashCopy code

    sudo systemctl restart nginx

  4. 验证负载均衡: 打开浏览器并访问Nginx服务器的IP地址或域名。由Nginx负载均衡器代理的请求将被分发到后端服务器。

这只是一个简单的负载均衡配置示例。Nginx支持多种负载均衡算法,如轮询、IP哈希、最小连接数等。你可以根据你的需求选择适当的负载均衡算法。此外,Nginx还支持SSL终结、健康检查等功能,以提高负载均衡的可用性和安全性。

请注意,以上配置是一个基本的示例,实际的配置可能因你的环境和需求而异。在生产环境中,确保按照最佳实践和安全性准则进行配置。

相关推荐
热爱嵌入式的小许17 分钟前
Linux基础项目开发1:量产工具——显示系统
linux·运维·服务器·韦东山量产工具
韩楚风4 小时前
【linux 多进程并发】linux进程状态与生命周期各阶段转换,进程状态查看分析,助力高性能优化
linux·服务器·性能优化·架构·gnu
陈苏同学4 小时前
4. 将pycharm本地项目同步到(Linux)服务器上——深度学习·科研实践·从0到1
linux·服务器·ide·人工智能·python·深度学习·pycharm
Pythonliu74 小时前
茴香豆 + Qwen-7B-Chat-Int8
linux·运维·服务器
我是哈哈hh5 小时前
专题十_穷举vs暴搜vs深搜vs回溯vs剪枝_二叉树的深度优先搜索_算法专题详细总结
服务器·数据结构·c++·算法·机器学习·深度优先·剪枝
郭二哈5 小时前
C++——模板进阶、继承
java·服务器·c++
挥剑决浮云 -5 小时前
Linux 之 安装软件、GCC编译器、Linux 操作系统基础
linux·服务器·c语言·c++·经验分享·笔记
立秋67895 小时前
Python的defaultdict详解
服务器·windows·python
Lansonli6 小时前
云原生(四十一) | 阿里云ECS服务器介绍
服务器·阿里云·云原生
苹果醋37 小时前
快速玩转 Mixtral 8x7B MOE大模型!阿里云机器学习 PAI 推出最佳实践
spring boot·nginx·毕业设计·layui·课程设计