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

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

相关推荐
Web极客码3 分钟前
WordPress博客关键词
服务器·wordpress·网站加速
神梦流1 小时前
GE 引擎的非标准数据流处理:稀疏张量与自定义算子在图优化中的语义保持
linux·运维·服务器
郝学胜-神的一滴2 小时前
深入浅出:使用Linux系统函数构建高性能TCP服务器
linux·服务器·开发语言·网络·c++·tcp/ip·程序人生
Doro再努力3 小时前
【Linux操作系统12】Git版本控制与GDB调试:从入门到实践
linux·运维·服务器·git·vim
全栈工程师修炼指南3 小时前
Nginx | stream content 阶段:UDP 协议四层反向代理浅析与实践
运维·网络·网络协议·nginx·udp
Lsir10110_3 小时前
【Linux】进程信号(上半)
linux·运维·服务器
开开心心就好3 小时前
发票合并打印工具,多页布局设置实时预览
linux·运维·服务器·windows·pdf·harmonyos·1024程序员节
鹏北海4 小时前
micro-app 微前端项目部署指南
前端·nginx·微服务
css趣多多4 小时前
add组件增删改的表单处理
java·服务器·前端
Sheep Shaun4 小时前
揭开Linux的隐藏约定:你的第一个文件描述符为什么是3?
linux·服务器·ubuntu·文件系统·缓冲区