首页 > 其他分享 >IIS实现负载均衡,通过ARR和URL重写

IIS实现负载均衡,通过ARR和URL重写

时间:2024-01-15 10:23:31浏览次数:25  
标签:ARR IIS URL 端口 负载 代理 转发 服务器 com

目录

 


回到顶部

一、实现整体方式介绍

项目中部署在windows服务器上的项目,需要部署负载均衡,本来想用nginx来配置的,奈何iis上有几个项目,把80端口和443端口占用了,nginx就用不了了(因为通过域名访问的,必须要用80和443端口),只能通过IIS的方式实现了。

这里用2个服务在一台机器上负载来做演示,2个服务+一个代理我们需要建3个网站

127.0.0.1:8050 (代理网站,客户端访问的地址,用来绑定访问的域名和端口的)

127.0.0.1:8051(负载的服务1,代理网站会转发到这里来)

127.0.0.1:8052(负载的服务2,代理网站会转发到这里来)

回到顶部

 二、配置负载均衡服务

1、首先需要安装ARR和URL重写2个IIS的功能

这里安装包上传到了网盘。https://pan.baidu.com/s/10BZkDEuSXu_9UWmga9NFbA?pwd=loie

安装完后,我们的服务器就多了这两个功能了,如果负载均衡是多台服务器的,只需要代理那台安装就可以了。

 

2、把前面3个网站先准备好

先创建网站proxy,指向一个空文件夹,绑定端口8050

为了防止出一些问题,代理的应用程序池设置回收时间为0即不回收

 

再创建一个web1绑定8051,一个web2绑定8052,指向的文件夹为网站的文件夹,这里只在文件夹里放一个index.html,里面就一段文字区分。

 

 

3、上面3个可以访问的站点都创建好了,下面创建负载的服务器场

 

 

 

 

下一步如果弹出是否自动创建url 重写规则,选否,后面我们再手动创建,不然全部端口的请求都会转发到这里的负载上来,我们实际是只需要转发8050端口的请求到负载上就行了。

在创建的Server中取消缓存,不然访问同请求地址会直接缓存返回,不经过站点

 

 还可以配置站点健康检查

 

 

 

 

 其它一些功能

回到顶部

 三、把请求转发到负载均衡器

创建URL重写规则,把代理站端口的请求转发到上面配置的负载均衡器

 

 

 

 条件处,如果用的是域名的且http和https都使用的可以用任意匹配,然后,添加

输入:{HTTP_HOST}:{SERVER_PORT}  模式:^abc.com:80$

输入:{HTTP_HOST}:{SERVER_PORT}  模式:^abc.com:443$

 到这里就可以了,访问8050端口,会转发到负载的站点8051和8052

 

TRANSLATE with x English
Arabic Hebrew Polish
Bulgarian Hindi Portuguese
Catalan Hmong Daw Romanian
Chinese Simplified Hungarian Russian
Chinese Traditional Indonesian Slovak
Czech Italian Slovenian
Danish Japanese Spanish
Dutch Klingon Swedish
English Korean Thai
Estonian Latvian Turkish
Finnish Lithuanian Ukrainian
French Malay Urdu
German Maltese Vietnamese
Greek Norwegian Welsh
Haitian Creole Persian  
  TRANSLATE with COPY THE URL BELOW Back EMBED THE SNIPPET BELOW IN YOUR SITE Enable collaborative features and customize widget: Bing Webmaster Portal Back

 

2024-01-15 10:08:33【出处】:https://www.cnblogs.com/wei325/p/17939429#autoid-0-0-0

=======================================================================================

 评论区

这里很多人也在问,两台服务器的session怎么整?授权怎么弄?

session共享不了,session换数据库,cookie,redis,ASP.NET State Service 也可了解下

授权接口用token校验等

这里只是提供一个思路,完全可以使用nginx代替以上方案,还可以用.net6 做个中间代理,用 httpclient 把请求转向到目标站点,使用CGI程序实现转发。

我这大概30多个独立域名,全部解析指向同一个物理IP,这个IP地址使用负载均衡虚拟出来,由多台nginx服务器负责,哪台出问题了,另外的自动接管,然后通过nginx做反向代理,分发给其他物理服务器。

标签:ARR,IIS,URL,端口,负载,代理,转发,服务器,com
From: https://www.cnblogs.com/mq0036/p/17964816

相关文章

  • js 获取 url 中的参数
    方法一: functiongetParam(name){varreg=newRegExp("(^|&)"+name+"=([^&]*)(&|$)");varr=window.location.search.substr(1).match(reg);if(r!=null)returnunescape(r[2]);returnnull;}//例如网址是 ht......
  • 性能篇:深入源码解析和性能测试arraylist和LinkedList差异!
    嗨,大家好,我是小米!今天我们要谈论的是Java中两个常用的集合类:ArrayList和LinkedList。大家都知道,这两者在新增和删除元素的操作上有一些差异,那么它们究竟在性能上有何表现呢?我们通过深入源码解析和性能测试来一探究竟!ArrayList新增元素到末尾这是最常见的新增元素操作,我们使用......
  • 再议Linux中一些发行版中默认下载或上传工具curl的使用
    在目前的CentOS最小化安装发行版中,系统默认的下载/上传工具为:curl。curl支持包括HTTP、HTTPS、ftp等众多协议,还支持POST、cookies、认证、从指定偏移处下载部分文件、用户代理字符串、限速、文件大小、进度条等特征。我们先来大概看一下curl工具的各选项的大概含义。-a/–append......
  • 手把手教你MongoDB 数据库连接URL 格式、authSource参数
    快速了解MongoDB官方文档MongoDB是一个文档数据库MongoDB将数据存储为一个文档,数据结构由键值(key=>value)对组成使用URL连接MongoDB数据库标准URI连接语法:mongodb://[username:password@]host1[:port1][,host2[:port2],...[,hostN[:portN]]][/[database][?options]]......
  • 433. 最小基因变化(Queue使用ArrayList和LinkedList进行声明)
    这道题可以看成一个24叉树。因为基因序列长度固定为8,且每个位置的字母固定是AGCT,可以选择改变的只有3个字母,所以一次最多24种情况。然后检查变化后的结果是否存在bank中(使用hashSet来存储),同时设置一个visited集合来检查是否访问过。classSolution{publicintminMutation(St......
  • 详解Java多线程之循环栅栏技术CyclicBarrier
    第1章:引言大家好,我是小黑,工作中,咱们经常会遇到需要多个线程协同工作的情况。CyclicBarrier,直译过来就是“循环屏障”。它是Java中用于管理一组线程,并让它们在某个点上同步的工具。简单来说,咱们可以把一群线程想象成一队马拉雪橇的驯鹿,CyclicBarrier就像是一个指定的集合点,所有驯......
  • 使用curl命令在Linux上进行HTTP请求
    在Linux系统中,curl是一个非常强大的命令行工具,用于发送各种类型的HTTP请求。通过简单的命令,你可以发送GET、POST、PUT、DELETE等请求,以及设置请求头、处理响应等。以下是一些使用curl进行HTTP请求的常见用法和示例。1.发送GET请求最基本的HTTP请求是GET请求,用于从服务器检索数据。......
  • 实战营|阿里云 x StarRocks 邀你现场体验云上极速湖仓--深圳站
    简介:1月20日深圳阿里中心,阿里云xStarRocks邀你现场体验云上极速湖仓实战营,从0-1轻松上手StarRocks湖仓分析。StarRocks自3.0大版本起,实现了从计算OLAP分析到统一Lakehouse的重大产品能力升级。通过存算分离架构,帮助用户降低存储成本、提升计算弹性;通过数据湖分析、......
  • Nginx采用虚拟目录的方式代理IIS站点
    Nginx采用虚拟目录的方式代理IIS站点起因背景由于IIS出现了某种不可知的问题,H5APP的部署从IIS改为Nginx。H5APP的Nginx的部署比较简单,直接修改官方的实例即可但是之前H5站点中有一个虚拟目录用于客户单点登录认证,所以需要在Nginx中添加对应的虚拟目录,但是单点认证是ASP.Net......
  • IIS——应用程序池——高级设置——启用32位应用程序 :true
    IIS——应用程序池——高级设置——启用32位应用程序:true打开InternetInformationServices(IIS)管理器。在左侧导航栏中,展开服务器节点并选择“应用程序池”。在中间窗格中,选择要更改的应用程序池。在右侧操作窗格中,点击“高级设置”。在高级设置对话框中,找到“启用32位......