iis+nginx实现负载均衡
简要说明:nginx的简介自行百度。
目的:把用户的请求分到各个服务器减轻压力。nginx把监听的端口的请求平均转到布署了网站的服务器。
一、windows上安装nginx
1.官网下载windows版的nginx http://nginx.org/en/docs/windows.html
目前最新版本为1.13.2


2.下载解压后

3.因为我电脑80端口已经被使用,所以修改配置文件改为监听8080端口

4.双击主程序运行,可以看到nginx已经在进程里面运行了。

5.尝试打开 http://localhost:8080/ 出现以下,就说明nginx安装成功了

二、搭建两个相同站点。
1. 网站只有一个主页
public class HomeController : Controller
{
// GET: Home
public ActionResult Index()
{
List<string> info = new List<string>();
info.Add("服务器名称:" + Server.MachineName);
info.Add("Nginx的IP地址:" + (Request.UserHostAddress=="::1" ? "127.0.0.1":Request.UserHostAddress));
info.Add("真实客户的IP地址:" + Request.Headers["X-Real-IP"]);
info.Add("HTTP端口:" + Request.Url.Port);
ViewBag.info = info;
return View();
}
}
2. 因为我的nginx是装在虚拟机里的,现在虚拟机里在iis部署一个站点,端口为:9000

3.本机布署一个站点,端口为:9001

三、修改nginx配置文件
1.在http节点下添加upstream(服务器集群),server设置的是集群服务器的信息,我这里搭建了两个站点,配置了两条信息。

2. 在http节点下找到location节点修改
location / {
root html;
index Home/Index index.html index.htm; #修改主页为Home/Index
#其中jq_one 对应着upstream设置的集群名称
proxy_pass http://Jq_one;
#设置主机头和客户端真实地址,以便服务器获取客户端真实IP
proxy_set_header Host $host;
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
}
修改后的配置文件:

3.重启Nginx

输入命令 nginx -s reload 回车

完成重启
四、验证
尝试访问监听的8080端口,刷新几次看
我这里虚拟机的IP为:http://192.9.200.44。现在从主机访问虚拟机的Nginx监听的端口。


五、把Nginx弄成服务,开机启动
1.借助一个小工具winsw https://github.com/kohsuke/winsw/releases
下载简单配置和.net环境两个文件,根据自己环境,这里下的.net4
然后放到随便一个目录,这里放到和nginx一起,并把两个文件改成相同的名字

2.修改配置文件

3.安装服务

输入命令 myapp.exe install 安装服务

此时服务中已经有nginx了,然后启动服务即可

完成。
参考资料:http://www.cnblogs.com/jbps/p/5721477.html
iis+nginx实现负载均衡的更多相关文章
- windows配置nginx实现负载均衡集群
windows配置nginx实现负载均衡集群2014-08-20 09:44:40 来源:www.abcde.cn 评论:0 点击:617 网上大部分关于nginx负载均衡集群的教程都是lin ...
- 架构之路 之 Nginx实现负载均衡
[前言] 在大型网站中,负载均衡是有想当必要的.尤其是在同一时间访问量比较大的大型网站,例如网上商城,新闻等CMS系统,为了减轻单个服务器的处理压力,我们引进了负载均衡这一个概念,将一个服务器的压力分 ...
- windows配置nginx实现负载均衡集群 -请求分流
windows配置nginx实现负载均衡集群 一.windows上安装nginx 1.下载nginx的windows版本http://nginx.org/en/download.html 2.把压缩文 ...
- Nginx网络负载均衡,负载均衡,网络负载,网络均衡
本节就聊聊采用Nginx负载均衡之后碰到的问题: Session问题 文件上传下载 通常解决服务器负载问题,都会通过多服务器分载来解决.常见的解决方案有: 网站入口通过分站链接负载(天空软件站,华军软 ...
- nginx+tomcat负载均衡
最近练习nginx+tomcat负载均衡.根据一些资料整理了大体思路,最终实现了1个nginx+2个tomcat负载均衡. 安装JDK 1>进入安装目录,给所有用户添加可执行的权限 #chmod ...
- 使用Nginx实现负载均衡
使用Nginx实现负载均衡 一.nginx简介 nginx是一个高性能的HTTP服务器和反向代理服务器.它起初是俄罗斯人Igor Sysoev开发的,至今支撑者俄罗斯的很多大型的网站. 二.nginx ...
- nginx作为负载均衡服务器——测试
i. 需求 nginx作为负载均衡服务器,用户请求先到达nginx,再由nginx根据负载配置将请求转发至 tomcat服务器. nginx负载均衡服务器:192.168.101.3 tomcat1服 ...
- 使用nginx做负载均衡的session共享问题
查了一些资料,看了一些别人写的文档,总结如下,实现nginx session的共享PHP服务器有多台,用nginx做负载均衡,这样同一个IP访问同一个页面会被分配到不同的服务器上,如果session不 ...
- 【Nginx】配置Nginx的负载均衡
参考的优秀文章 tomcat配置文件server.xml详解 AJP协议总结与分析 Using nginx as HTTP load balancer 在本机运行2个Tomcat 现需要运行两个Tom ...
随机推荐
- Java面试系列--java基础
Java基础总结 JAVA中的几种基本数据类型是什么,各自占用多少字节. 八大基本数据类型,byte:8位,short:16位,int:32位,long:64位,float:32位,double:64 ...
- Asp.Net Core中使用MongoDB的入门教程,控制台程序使用 MongoDB
内容来源 https://blog.csdn.net/only_yu_yy/article/details/78882446 首先,创建一个.Net Core的控制台应用程序.然后使用NuGet导入 ...
- 通过hash实现前端路由
router.js //构造函数 function Router() { this.routes = {}; this.currentUrl = ''; } Router.prototype.rout ...
- jQuery.Ajax IE8,9 无效(CORS跨域)
今天在开发网站的时候,发现一个问题,$.ajax()在 IE8,9 浏览器不起作用,但 Chrome,Firefox ,360,IE10以上等浏览器却是可以的,网上资料很多,查询最后发现是 IE8,9 ...
- vue中的路由的跳转的参数
vue中的路由跳转传参 params 与 query this.$router.push({ name:"detail", params:{ name:'nameValue', c ...
- 使用ethtool显示硬件PHY信息
1.总结: 使用ethtool 可以查看端口的phy配置 2.显示端口配置 [root@localhost zhou]# ethtool ens33Settings for ens33: Suppor ...
- Android 7.0及以上使用OpenCL
由于从Android 7.0, API 24, 开始, 系统将阻止应用链接至非公开NDK库, 所以, 使用libOpenCL.so时与面向低版本的Android平台有所不同, 需要把依赖的非公开NDK ...
- Android网页打开指定App
一.只打开APP操作 通过用手机的浏览器(内置,第三方都可)访问一个网页,实现点击一个链接启动自己的应用,并传递数据. 首先在Mainifest文件里面对要启动的Activity添加一个过滤器. 网页 ...
- adb server is out of date. killing完美解决
原本是想跑monkey测试的,可使用adb命令时提示:adb server is out of date. killing... 出现这个问题的原因是:adb使用的端口5037被占用了.下面我们说下如 ...
- 两种常用的全排列算法(java)
问题:给出一个字符串,输出所有可能的排列. 全排列有多种算法,此处仅介绍常用的两种:字典序法和递归法. 1.字典序法: 如何计算字符串的下一个排列了?来考虑"926520"这个字符 ...