快速目录:

一、nginx Win下实现简单的负载均衡(1)nginx搭建部署

二、nginx Win下实现简单的负载均衡(2)站点共享Session

三、nginx Win下实现简单的负载均衡(3)Session的SqlServer模式配置

nginx Windows下 实现简单的负载均衡,本文只是测试,理论nginx在Linux下才能发挥最大性能,Windows下可以使用lvs或者nlb来进行负载均衡处理,后续发文分享。

1、Nginx安装

  1. 下载地址:http://nginx.org/en/download.html
  2. 解压到后在window的cmd窗口,输入如下图所示的命令,进入到nginx目录,使用“start nginx.exe ”进行nginx的安装,如下图所示:
  3. 安装成功后,在“任务管理器”中会看到“nginx.exe”进程。 在浏览器地址栏输入:127.0.0.1,会看到nginx欢迎界面。说明Nginx已经安装成功。

  4. 如果页面提示not found,则是nginx没有启动成功,具体处理方法请参考:Win7 Nginx启动失败 cmd命令失败

2、站点搭建及配置

  1. 搭建两个iis站,新建2个站点下只有一个简单的index页面,将两个站点都部署到本机了,分别绑定了nginx_web_1 - 8097和nginx_web_2 - 8098两个端口。
  2. 修改nginx配置信息,nginx的配置信息,都在nginx.conf ,这个文件中配置
  3. 1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    a.修改nginx监听端口,修改http server下的listen节点值,listen 8096;
    b.在http节点下添加upstream(服务器集群),server设置的是集群服务器的信息,我这里搭建了两个站点,配置了两条信息。
    #服务器集群名称为pangshunlong
    upstream pangshunlong {
      server 127.0.0.1: 8097;
      server 127.0.0.1: 8098;
    }
    c.在http节点下找到location节点修改
    location / {
      root html;
      index index.aspx index.html index.htm; #修改主页为index.aspx
      #其中pangshunlong 对应着upstream设置的集群名称
      proxy_pass http:/ pangshunlong;
      #设置主机头和客户端真实地址,以便服务器获取客户端真实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;
    }
  4. 修改完成配置文件之后,重启nginx服务 nginx –s reload 或者强制结束进程,因为有时候重启失效,加载conf文件失效,或者start nginx 下

  5. 有时候conf会报错,提示“nginx unknown directive xxx”的错误,基本都是conf文件内的空格不对,或者打开文件修改的编码不对,尽量使用txt打开,删除所有空格后再调整格式就ok了

3、运行结果

访问http://localhost:8096

如上图,请求被分发到了8097站点和8098站点,说明简单的负载均衡就搭建成功了。
如果我们停掉iis上的8098站点,刷新页面,则请求会分发给8097 站点, 说明其中一个站点挂了,只要还有一个站点是好的,系统仍然能够继续提供服务

4.session共享(待发文,这里只做说明)

  1. 使用数据库保存session信息
  2. 使用nginx将同一ip的请求分配到固定服务器,修改如下。ip_hash会计算ip对应hash值,然后分配到固定服务器,(这个还没试验过)
  3. 1
    2
    3
    4
    5
    upstream test.com {
      server 127.0.0.1: 8097;
      server 127.0.0.1: 8098;
      ip_hash;
    }

搭建一台Redis服务器,对session的读取都从该Redis服务器上读取

nginx Win下实现简单的负载均衡(1)nginx搭建部署的更多相关文章

  1. nginx Win下实现简单的负载均衡(2)站点共享Session

    快速目录: 一.nginx Win下实现简单的负载均衡(1)nginx搭建部署 二.nginx Win下实现简单的负载均衡(2)站点共享Session 三.nginx Win下实现简单的负载均衡(3) ...

  2. nginx+tomcat+memcached-session-manager组成简单的负载均衡和集群

    1.搭建环境 192.168.29.128(luxh-01.com) 安装nginx,参考 http://www.cnblogs.com/luxh/p/4067038.html 192.168.29. ...

  3. 用nginx进行同一个服务器下多域名的负载均衡配置

    用nginx进行同一个服务器下多域名的负载均衡配置 Nginx进行http负载均衡的模块是upstream Upstream可以进行多个配置,这样的话可以灵活的配置站点,但是注意的是upstream后 ...

  4. Windows下nginx+tomcat实现简单的负载均衡

    Nginx是一款轻量级的Web 服务器/反向代理服务器及电子邮件(IMAP/POP3)代理服务器.反向代理(Reverse Proxy)方式是指以代理服务器来接受internet上的连接请求,然后将请 ...

  5. Docker+nginx+tomcat7配置简单的负载均衡

    本文为原创,原始地址为:http://www.cnblogs.com/fengzheng/p/4995513.html 本文介绍在Docker上配置简单的负载均衡,宿主机为Ubuntu 14.04.2 ...

  6. Nginx知多少系列之(六)Linux下.NET Core项目负载均衡

    目录 1.前言 2.安装 3.配置文件详解 4.工作原理 5.Linux下托管.NET Core项目 6.Linux下.NET Core项目负载均衡 7.负载均衡策略详解 8.Linux下.NET C ...

  7. Nginx 简单的负载均衡配置示例(转载)

    原文地址:Nginx 简单的负载均衡配置示例(转载) 作者:水中游于 www.s135.com 和 blog.s135.com 域名均指向 Nginx 所在的服务器IP. 用户访问http://www ...

  8. 记录使用Redis和nginx 实现一个简单的负载均衡(FB)

    这两年在博客园看了不少大牛的分享,一直打算能写点什么东西. 之前偶然看见一个利用Redis 当作 Session数据宿主的demo,出处我已经找不到了.后来没事看了看nginx相关的东西.其中负载均衡 ...

  9. nginx作反向代理,实现负载均衡

    nginx作反向代理,实现负载均衡按正常的方法安装好 ngixn,方法可参考http://www.cnblogs.com/lin3615/p/4376224.html其中作了反向代理的服务器的配置如下 ...

随机推荐

  1. 江卓尔与比特币增发,谣言or先知-千氪

    最近,很多圈内人都在讨论比特币是否应该增发,但等等,比特币真的会增发吗?到底是真有增发计划还是某些人别有用心地在散布谣言? 那么消息是从哪里出来的?北京时间 2 月 10 日晚,莱比特矿池创始人江卓尔 ...

  2. springboot整合 Thymeleaf模板

    首先引入maven jar依赖 <dependency> <groupId>org.springframework.boot</groupId> <artif ...

  3. eval in Shell

    语法:eval cmdLine eval会对后面的cmdLine进行两遍扫描,如果第一遍扫描后,cmdLine是个普通命令,则执行此命令: 如果cmdLine中含有变量的间接引用,则保证间接引用的语义 ...

  4. 【转】ModelAndView 学习

    http://blog.csdn.net/wavaya/article/details/6185226 ModelAndView 类别就如其名称所示,是代表了Spring Web MVC程式中呈现画面 ...

  5. PAT 天梯赛 L1-020. 帅到没朋友 【STL】

    题目链接 https://www.patest.cn/contests/gplt/L1-020 思路 对于每个 K >= 2 的朋友圈,里面的所有 ID 都用 MAP 标记一下 对于每个 K = ...

  6. C语言中auto,register,static,const,volatile的区别

    1)auto 这个关键字用于声明变量的生存期为自动,即将不在任何类.结构.枚举.联合和函数中定义的变量视为全局变量,而在函数中定义的变量视为局部变量.这个关键字不怎么多写,因为所有的变量默认就是aut ...

  7. github资源下载速度慢的解决办法

    xx-net:https://github.com/XX-net/XX-Net

  8. Linux Shell编程 awk命令

    概述 awk是一种编程语言,用于在linux/unix下对文本和数据进行处理.数据可以来自标准输入(stdin).一个或多个文件,或其它命令的输出.它支持用户自定义函数和动态正则表达式等先进功能,是l ...

  9. android 7.0 (nougat)的编译优化-ninja

    http://blog.csdn.net/songjam/article/details/52640501 版权声明:本文为博主原创文章,未经博主允许不得转载. 从官方的定义,ninja大大缩短了an ...

  10. 20145239《网络对抗》- 逆向及Bof基础实践

    1 逆向及Bof基础实践说明 1.1 实践目标 本次实践的对象是一个名为pwn1的linux可执行文件.该程序正常执行流程是:main调用foo函数,foo函数会简单回显任何用户输入的字符串.该程序同 ...