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

本文涉及的产品
网络型负载均衡 NLB,每月750个小时 15LCU
传统型负载均衡 CLB,每月750个小时 15LCU
应用型负载均衡 ALB,每月750个小时 15LCU
简介: 10分钟学会windows中iis搭建服务器集群实现负载均衡和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服务器为例】:

          图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>

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


 

下载nginx

我们去官网下载windows版本的nginx, 下载地址:http://nginx.org/en/download.html

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

 

 

 


 

配置nginx

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

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

更改配置文件

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

 

启动nginx

1、启动命令

start nginx

 

2、重新载入Nginx

nginx.exe -s reload

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

 

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

运行监听服务器

打开浏览器,在地址栏中输入刚才在Nginx中设置的代理(这里是192.168.0.5:8046,这是你自己配置的监听服务器)。

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


 

回到顶部

nginx代理转发(反向代理)

正向代理

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

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

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

 

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

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

 

 

            图:正向代理

反向代理

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

同时,用户不需要知道目标服务器的地址,也无须在用户端作任何设定。

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

 

 

 

           图:反向代理

 

示例

访问本地的指定路径反向代理转发到博客园地址

配置如下:

重新加载nginx,运行本地地址+配置的监听端口,如下:

相关实践学习
SLB负载均衡实践
本场景通过使用阿里云负载均衡 SLB 以及对负载均衡 SLB 后端服务器 ECS 的权重进行修改,快速解决服务器响应速度慢的问题
负载均衡入门与产品使用指南
负载均衡(Server Load Balancer)是对多台云服务器进行流量分发的负载均衡服务,可以通过流量分发扩展应用系统对外的服务能力,通过消除单点故障提升应用系统的可用性。 本课程主要介绍负载均衡的相关技术以及阿里云负载均衡产品的使用方法。
相关文章
|
2月前
|
监控 应用服务中间件 测试技术
确保正则表达式在 Nginx 代理中的准确性和稳定性
【10月更文挑战第19天】总之,正则表达式在 Nginx 代理中具有重要作用,但要确保其准确性和稳定性需要付出一定的努力和关注。通过以上方法的综合运用,我们可以提高正则表达式配置的可靠性,为用户提供更好的服务体验。
|
4月前
|
负载均衡 网络协议 Unix
Nginx七层(应用层)反向代理:SCGI代理scgi_pass篇
Nginx七层(应用层)反向代理:SCGI代理scgi_pass篇
75 1
|
1月前
|
前端开发 应用服务中间件 定位技术
Nginx 如何代理转发传递真实 ip 地址?
【10月更文挑战第32天】
190 5
Nginx 如何代理转发传递真实 ip 地址?
|
11天前
|
负载均衡 前端开发 应用服务中间件
负载均衡指南:Nginx与HAProxy的配置与优化
负载均衡指南:Nginx与HAProxy的配置与优化
31 3
|
27天前
|
负载均衡 前端开发 JavaScript
Nginx 代理多服务
以上是 Nginx 代理多服务的几种常见方式,在实际应用中,可以根据具体的业务需求和系统架构选择合适的代理方式,并结合其他 Nginx 的功能和配置来优化和完善系统的性能和功能。
|
2月前
|
负载均衡 应用服务中间件 Linux
nginx学习,看这一篇就够了:下载、安装。使用:正向代理、反向代理、负载均衡。常用命令和配置文件,很全
这篇博客文章详细介绍了Nginx的下载、安装、配置以及使用,包括正向代理、反向代理、负载均衡、动静分离等高级功能,并通过具体实例讲解了如何进行配置。
175 4
nginx学习,看这一篇就够了:下载、安装。使用:正向代理、反向代理、负载均衡。常用命令和配置文件,很全
|
2月前
|
应用服务中间件 API nginx
使用正则表达式实现 Nginx 代理
【10月更文挑战第19天】在不断发展的互联网技术中,掌握正则表达式在 Nginx 代理中的应用是非常重要的。不断探索和实践,将有助于我们在实际工作中更好地运用这一技术,提升项目的质量和效率。
|
2月前
|
缓存 负载均衡 应用服务中间件
Nginx 实现一个端口代理多个前后端服务
【10月更文挑战第19天】Nginx 的强大功能不仅限于此,它还可以与其他技术和工具相结合,为我们的应用提供更强大的支持和保障。在不断发展的互联网时代,掌握 Nginx 的使用技巧将为我们的工作和生活带来更多的便利和效益。
|
2月前
|
存储 缓存 监控
|
2月前
|
弹性计算 负载均衡 算法
负载均衡如何帮助阿里云国际服务器搭建的网站或应用程序?
负载均衡如何帮助阿里云国际服务器搭建的网站或应用程序?