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终结、健康检查等功能,以提高负载均衡的可用性和安全性。

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

相关推荐
代码的奴隶(艾伦·耶格尔)18 小时前
Nginx
java·服务器·nginx
头发还没掉光光18 小时前
HTTP协议从基础到实战全解析
linux·服务器·网络·c++·网络协议·http
液态不合群18 小时前
Nginx多服务静态资源路径冲突解决方案
运维·nginx
Getgit19 小时前
Linux 下查看 DNS 配置信息的常用命令详解
linux·运维·服务器·面试·maven
岁岁种桃花儿20 小时前
详解kubectl get replicaset命令及与kubectl get pods的核心区别
运维·nginx·容器·kubernetes·k8s
捷智算云服务20 小时前
告别运维割裂!捷智算GPU维修中心重新定义“全栈式”维修新标准
运维·服务器·性能优化
zbguolei20 小时前
CentOS 7.6离线安装Nginx
linux·nginx·centos
啊湘21 小时前
服务器维护------日志大小控制
运维·服务器·日志大小
qq_3660862221 小时前
SQL Server 之 Full-Text Search 全文搜索
运维·服务器·数据库
小王努力学编程1 天前
LangChain——AI应用开发框架(核心组件1)
linux·服务器·前端·数据库·c++·人工智能·langchain