Ngnix之反向代理、负载均衡、动静分离

这篇具有很好参考价值的文章主要介绍了Ngnix之反向代理、负载均衡、动静分离。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

目录

1. Ngnix 

1.1 Linux系统Ngnix下载安装

1.2 反向代理

正向代理(Forward Proxy):

反向代理(Reverse Proxy):

1.3 负载均衡

1.4 动静分离


1. Ngnix 

Nginx是一个高性能的开源Web服务器,它还可以用作反向代理、负载均衡器以及动静分离的工具。

1.1 Linux系统Ngnix下载安装

nginx: download

Ngnix之反向代理、负载均衡、动静分离,Nginx,负载均衡,运维

 

yum install -y wget

wget -c http://nginx.org/download/nginx-1.24.0.tar.gz

上传到服务器后:

#安装nginx所需要的依赖包
yum install -y gcc-c++	zlib zlib-devel	openssl openssl-devel pcre pcre-devel
#解压安装包
tar -zxvf nginx-1.24.0.tar.gz
#执行配置脚本 --prefix是指定安装目录
./configure --prefix=/usr/local/nginx
#对nginx编译和安装
make & make install

进入到/usr/local/nginx/sbin/中


#启动,
./nginx
#停止
./nginx -s stop
#重载
./nginx -s reload


1.2 反向代理

正向代理和反向代理是两种不同的代理服务器配置,它们在作用方向和目的上有所不同。以下是它们的主要区别:

正向代理(Forward Proxy):

  1. 作用方向: 正向代理是在客户端和目标服务器之间的代理服务器。客户端向代理服务器发送请求,然后代理服务器将请求转发给目标服务器,并将目标服务器的响应返回给客户端。

  2. 隐藏客户端身份: 正向代理可以隐藏客户端的真实身份,因为目标服务器只知道代理服务器,而不知道最终的客户端。这可以用于绕过访问限制或保护客户端隐私。

反向代理(Reverse Proxy):

  1. 作用方向: 反向代理位于目标服务器和客户端之间。客户端向反向代理发送请求,然后反向代理将请求转发给一个或多个目标服务器,并将目标服务器的响应返回给客户端。

  2. 隐藏服务器身份: 反向代理可以隐藏后端服务器的真实身份,因为客户端只知道代理服务器,而不知道哪个后端服务器响应了请求。这有助于提高安全性和负载均衡。

  3. 负载均衡: 反向代理常用于分发客户端请求到多个后端服务器,实现负载均衡,确保各个服务器都能得到合理的负载。

总的来说,正向代理代表客户端与服务器通信,而反向代理代表服务器与客户端通信。正向代理隐藏客户端身份,而反向代理隐藏服务器身份。

反向代理到Tomcat 8080端口nginx.conf如下:

worker_processes  1;

#error_log  logs/error.log;
#error_log  logs/error.log  notice;
#error_log  logs/error.log  info;

#pid        logs/nginx.pid;


events {
    worker_connections  1024;
}


http {
    include       mime.types;
    default_type  application/octet-stream;

    #log_format  main  '$remote_addr - $remote_user [$time_local] "$request" '
    #                  '$status $body_bytes_sent "$http_referer" '
    #                  '"$http_user_agent" "$http_x_forwarded_for"';

    #access_log  logs/access.log  main;

    sendfile        on;
    #tcp_nopush     on;

    #keepalive_timeout  0;
    keepalive_timeout  65;

    #gzip  on;

    server {
        listen       80;
        server_name  localhost;

        #charset koi8-r;

        #access_log  logs/host.access.log  main;

        location / {
	    proxy_pass http://localhost:8080;
            root   html;
            index  index.html index.htm;
        }

        #error_page  404              /404.html;

        # redirect server error pages to the static page /50x.html
        #
        error_page   500 502 503 504  /50x.html;
        location = /50x.html {
            root   html;
        }
    }

}

1.3 负载均衡

负载均衡是通过将请求分发到多个服务器上,以实现更好的性能、可用性和可伸缩性。Nginx可以作为负载均衡器。

Nginx支持多种负载均衡算法,这些算法用于分发客户端请求到后端服务器,以实现负载均衡和提高系统的性能。以下是一些常见的负载均衡算法:

  1. 轮询算法(Round Robin): 每个新的请求按顺序分配给后端服务器列表中的下一个服务器。
  2. IP哈希算法(IP Hash):使用客户端的IP地址计算哈希值,然后将请求分发到后端服务器中的一个,使得相同IP的客户端每次请求都被分配到相同的服务器。
  3. 加权轮询算法(Weighted Round Robin): 给每个后端服务器分配一个权重,高权重的服务器获得更多的请求。
  4. 最小连接数算法(Least Connections): 将请求分发给当前连接数最少的后端服务器。
  5. 最短响应时间算法(Least Time):将请求分发给响应时间最短的后端服务器。

 下面是使用轮询算法在两个Tomcat上负载均衡:

docker pull tomcat:8.0
docker run -d -p 9090:8080 --name tomcat01 tomcat:8.0

nginx.conf如下:

worker_processes  1;

#error_log  logs/error.log;
#error_log  logs/error.log  notice;
#error_log  logs/error.log  info;

#pid        logs/nginx.pid;


events {
    worker_connections  1024;
}


http {
    include       mime.types;
    default_type  application/octet-stream;

    sendfile        on;
    #tcp_nopush     on;

    #keepalive_timeout  0;
    keepalive_timeout  65;

    #gzip  on;

     upstream myserver{
        server localhost:8080;
        server localhost:9090;	
        }   
    server {
        listen       80;
        server_name  localhost;

        location / {
	    proxy_pass http://myserver;
            root   html;
            index  index.html index.htm;
        }

   
        error_page   500 502 503 504  /50x.html;
        location = /50x.html {
            root   html;
        }
    }

}

1.4 动静分离

动静分离是指将静态内容(如图片、CSS、JavaScript文件)和动态内容(如PHP、Python等生成的页面)分开处理,以提高性能和减轻服务器负担。Nginx可以通过简单的配置实现动静分离。文章来源地址https://www.toymoban.com/news/detail-762838.html

到了这里,关于Ngnix之反向代理、负载均衡、动静分离的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包赞助服务器费用

相关文章

  • Nginx使用之反向代理、负载均衡、动静分离

    Nginx是一款轻量级的Web 服务器/反向代理服务器及电子邮件(IMAP/POP3)代理服务器。其特点是占有内存少,并发能力强。 其他服务器介绍:Apache服务器、Tomcat服务器、Lighttpd服务器 正向代理 是代理用户客户端,为客户端发送请求, 对服务器隐藏自己的真实客户端。 用途:1

    2024年02月11日
    浏览(17)
  • Nginx+Tomcat负载均衡(反向代理)、动静分离集群

    Nginx+Tomcat负载均衡(反向代理)、动静分离集群

    Nginx:正向代理(知道目标服务器) 反向代理(不知道目标服务器) Nginx配置反向代理主要参数 upstream服务池名{}(F5(硬件)和nginx反向代理原理一样) 配置后端服务池,以提供响应数据 proxy_pass http://服务池名 配置将访问请求转发给后端服务器池的服务器处理 定义:将工作任务

    2024年02月13日
    浏览(13)
  • 03Nginx的静态资源部署,反向代理,负载均衡,动静分离的配置

    03Nginx的静态资源部署,反向代理,负载均衡,动静分离的配置

    部署静态资源 Nginx相对于Tomcat处理静态资源的能力更加高效,所以在生产环境下一般都会将Nginx可以作为静态web服务器来部署静态资源 静态资源: 在服务端真实存在并且能够直接展示的一些html页面、css文件、js文件、图片、视频等资源文件 将静态资源部署到Nginx非常简单,只需要

    2024年02月04日
    浏览(19)
  • Nginx配置整合:基本概念、命令、反向代理、负载均衡、动静分离、高可用

    Nginx配置整合:基本概念、命令、反向代理、负载均衡、动静分离、高可用

    Nginx是一个高性能的HTTP和反向代理服务器,也是一个IMAP/POP3/SMTP代理server。其特点是占有内存少。并发能力强,其并发能力确实在同类型的网页server中表现较好。 Web服务器是指驻留于因特网上某种类型计算机的程序。当Web浏览器(客户端)连到服务器上并请求文件时,服务器

    2024年02月16日
    浏览(9)
  • Linux-nginx(安装配置nginx、配置反向代理、Nginx配置负载均衡、动静分离)

    Linux-nginx(安装配置nginx、配置反向代理、Nginx配置负载均衡、动静分离)

    关于代理 正向代理: 客户明确知道自己访问的网站是什么 隐藏客户端的信息 目录 关于代理 一、Nginx的安装与配置 1、安装依赖 2、安装nginx (1)上传压缩包到目录 /usr/nginx里面 (2)解压文件 (3)进入到nginx的文件夹下面 进行默认的配置  ./configure (4) Make make install (5)

    2024年01月21日
    浏览(34)
  • 大数据云计算运维之Nginx反向代理与负载均衡

    大数据云计算运维之Nginx反向代理与负载均衡

    一、Nginx概述 1.1 概述 Nginx(“engine x”)是一个高性能的 HTTP /反向代理的服务器及电子邮件(IMAP/POP3)代理服务器。 官方测试nginx能够支撑5万并发,并且cpu,内存等资源消耗却非常低,运行非常稳定。最重要的是开源,免费,可商用的。 Nginx还支持热部署,几乎可以做到7 *

    2024年02月11日
    浏览(17)
  • Nginx+Tomcat 负载均衡、动静分离

    Nginx+Tomcat 负载均衡、动静分离

    目录 一、Nginx代理服务器概念 1.正向代理 2.反向代理 二、动静分离 三、负载均衡  四、Nginx七层代理实验 1.部署Nginx服务 2. 部署Tomcat服务  2.1在192.168.88.50 虚拟机上部署双实例 2.2在192.168.88.60 上部署Tomcat服务器3 3.动静分离配置 3.1Tomcat1 server 配置 3.2 Tomcat2 server 配置 3.3Tomc

    2024年02月08日
    浏览(15)
  • Nginx+Tomcat负载均衡、动静分离群集

    Nginx+Tomcat负载均衡、动静分离群集

    Nginx是一款非常优秀的HTTP服务器软件,支持高达50000个并发连接数的响应、拥有强大的静态资源处理能力、运行稳定、内存和CPU等系统资源消耗非常低 目前很多大型网站都应用Nginx服务器作为后端网站程序的反向代理及负载均衡器,提升整个站点的负载并发能力 Nginx实现负载

    2024年02月09日
    浏览(10)
  • Nginx+Tomcat实现负载均衡、动静分离

    Nginx+Tomcat实现负载均衡、动静分离

    目录 一、Nginx负载均衡实现原理 1.Nginx 实现负载均衡是通过反向代理实现  2、Nginx配置反向代理主要参数 3、动静分离原理  4、Nginx静态处理优势 5、并发量和吞吐量计算 二:7层反向代理          1、环境准备 ​2、配置Nginx Server 3、tomcat1 和tomcat2配置 4、 搭建tomcat3 5、设置

    2024年02月05日
    浏览(16)
  • “深入理解Nginx的负载均衡与动静分离“

    “深入理解Nginx的负载均衡与动静分离“

    在现代互联网应用中,高性能和可扩展性是至关重要的。Nginx作为一款高性能的Web服务器和反向代理服务器,被广泛应用于各种规模的网站和应用程序中。本文将深入探讨Nginx的负载均衡和动静分离的原理与实践,帮助读者更好地理解和应用这些功能。 Nginx是一款轻量级的高性

    2024年02月06日
    浏览(15)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包