vlambda博客
学习文章列表

10分钟学会windows中iis搭建服务器集群实现负载均衡和nginx代理转发

目录

  • 前言

  • nginx概述

  • nginx反向代理实现负载均衡

    • 两张图理解其中的业务流程

    • 创建发布IIS

    • 下载nginx

    • 配置nginx

    • 启动nginx

    • 运行监听服务器

  • nginx代理转发(反向代理)

    • 正向代理

    • 反向代理

    • 示例

 


前言

我们之前聊过 10分钟搭建服务器集群——Windows7系统中nginx与IIS服务器搭建集群实现负载均衡:https://www.cnblogs.com/xiongze520/p/10308720.html

不怎么理解的可以移步去简单看一下。

 


 

nginx概述

nginx是一款自由的、开源的、高性能的HTTP服务器和反向代理服务器;

同时也是一个IMAP、POP3、SMTP代理服务器;

nginx可以作为一个HTTP服务器进行网站的发布处理,另外nginx可以作为反向代理进行负载均衡的实现。


 

nginx反向代理实现负载均衡


两张图理解其中的业务流程

首先上网查资料nginx相关原理,文字性描述感觉很无聊,于是自己总结两张对比图,如下:

1、一般情况下(未使用nginx服务器集群流程):

            图1:未使用服务器集群

 

 2、使用nginx服务器集群后流程【注:本图以一级nginx服务器为例】:

10分钟学会windows中iis搭建服务器集群实现负载均衡和nginx代理转发

          图2:未使用服务器集群

 

根据这两张图对比,不难得出以下结论:

       利用nginx管理起IIS服务器后:

  1. 可靠性大大增强:一台或多台IIS服务器宕机,服务不中断!细心的读者发现如果nginx服务器宕机那?当然可以通过配置多个及多级nginx服务器来解决。

  2. 处理大访问量时大大减小IIS服务器压力,提高访问速度。

  3. 消耗硬件资源多:多增加一台服务器(在数据量不大的时候nginx也可与IIS共用一台服务器)与N台IIS服务器!不过在硬件成本不断降低以及高可靠性的今天,对于大访问量网站,这个影响几乎可以忽略不计。要不然也不会有这么多的用户比如国内的用户:百度,新浪,网易,腾讯等。

 


 创建发布IIS

我们创建3个文件夹nginx、nginx1、nginx2,每个文件夹里面创建一个index.html文件,内容如下,然后发布到iis访问。

nginx文件夹index.html内容

<h1> 我是nginx—— 集群服务器8020</h1>

nginx1文件夹index.html内容

<h1> 我是nginx—— 集群服务器8071</h1>

nginx2文件夹index.html内容

<h1> 我是nginx—— 集群服务器8072</h1>

发布后访问其中一个显示如下内容

10分钟学会windows中iis搭建服务器集群实现负载均衡和nginx代理转发


 下载nginx

我们去官网下载windows版本的nginx, 

这里下载的是稳定版1.20.1,其他版本操作基本相同。

10分钟学会windows中iis搭建服务器集群实现负载均衡和nginx代理转发

 


 配置nginx

把刚刚下载的文件解压,整体拷贝到你自己指定的路径去。

下载后解压出来后目录结构如下

10分钟学会windows中iis搭建服务器集群实现负载均衡和nginx代理转发

更改配置文件
进入conf文件,找到nginx.conf文件,更改配置,里面的weight代表当前服务器的权重,值越高使用率越高,如下

10分钟学会windows中iis搭建服务器集群实现负载均衡和nginx代理转发

 

启动nginx

1、启动命令

start nginx

 

2、重新载入Nginx

nginx.exe -s reload

进入nginx里面的cong文件夹位置,输入cmd回车

10分钟学会windows中iis搭建服务器集群实现负载均衡和nginx代理转发

10分钟学会windows中iis搭建服务器集群实现负载均衡和nginx代理转发

 

 启动后,如果修改了配置文件的话需要运行 nginx.exe -s reload重新载入,

10分钟学会windows中iis搭建服务器集群实现负载均衡和nginx代理转发

行监听服务器

按F5刷新(大家如果有兴趣可以更改配置文件中Weight中的比例来看效果,我这里设置了1权重,也就是说平均分配)

10分钟学会windows中iis搭建服务器集群实现负载均衡和nginx代理转发


 

nginx代理转发(反向代理)

正向代理

正向代理,意思是一个位于客户端和原始服务器(origin server)之间的服务器,为了从原始服务器取得内容,

客户端向代理发送一个请求并指定目标(原始服务器),然后代理向原始服务器转交请求并将获得的内容返回给客户端。

客户端才能使用正向代理。

 

如:在如今的网络环境下,我们如果由于技术需要要去访问国外的某些网站,此时你会发现位于国外的某网站我们通过浏览器是没有办法访问的,

此时大家可能都会用一个操作FQ进行访问,FQ的方式主要是找到一个可以访问国外网站的代理服务器,我们将请求发送给代理服务器,代理服务器去访问国外的网站,然后将访问到的数据传递给我们!

10分钟学会windows中iis搭建服务器集群实现负载均衡和nginx代理转发

            图:正向代理


反向代理

反向代理服务器位于用户与目标服务器之间,但是对于用户而言,反向代理服务器就相当于目标服务器,即用户直接访问反向代理服务器就可以获得目标服务器的资源。

反向代理服务器通常可用来作为Web加速,即使用反向代理作为Web服务器的前置机来降低网络和服务器的负载,提高访问效率。

 

10分钟学会windows中iis搭建服务器集群实现负载均衡和nginx代理转发

           图:反向代理

 

示例

配置如下:

10分钟学会windows中iis搭建服务器集群实现负载均衡和nginx代理转发

10分钟学会windows中iis搭建服务器集群实现负载均衡和nginx代理转发

熊泽有话说
一个坚持写原创文章的程序员! 陪你读书,美好的生活方式。 触动心灵的读本,丰富精神的纽带。
42篇原创内容
Official Account