nginx主要用于1:请求分流 2:负载均衡。用在大型系统(集群)上,在单机上体现不出优势。 
 
本实例在windows环境下进行。 
 
一、安装nginx 
 
1、下载nginx1.8.0版 
2、解压至1、下载nginx1.8.0版 
2、解压至c:\nginx-1.8.0 
3、在cmd控制台进入到c:\nginx-1.8.0目录 
4、运行start nginx启动 nginx服务器 
5、在浏览器中输入 localhost ,如果能打开nginx欢迎页面,说明启动成功。 
 
相关命令: 
nginx -s stop     quick exit 
nginx -s quit     graceful quit 
nginx -s reload     changing configuration, starting a new worker, quitting an old worker gracefully 
nginx -s reopen     reopening log files 
tasklist /fi "imagename eq nginx.exe" 查看启动的nginx进程 
3、在cmd控制台进入到c:\nginx-1.8.0目录 
4、运行start nginx启动 nginx服务器 
5、在浏览器中输入 localhost ,如果能打开nginx欢迎页面,说明启动成功。 
 
相关命令: 
nginx -s stop     quick exit 
nginx -s quit     graceful quit 
nginx -s reload     changing configuration, starting a new worker, quitting an old worker gracefully 
nginx -s reopen     reopening log files 
tasklist /fi "imagename eq nginx.exe" 查看启动的nginx进程 
 
二、部署项目 
 
基本思路 
 
    nginx用于处理静态页面和请求分流调度。 
 
    1、在nginx安装完毕后,在nginx.conf中配置D:\dev\nginx作为nginx的执行目录(机器ip:192.168.11.35):如下 
        server { 
            listen       localhost:8888; #8888为端口号 
            root         D:/dev/nginx/myspring;#myspring是项目名称 
            index         test.html; 
            #jsp动态页面由此proxy_pass处理 
            #location ~ \.jsp$ { 
            #    root   html; 
            #    index  index.html index.htm; 
            #    proxy_pass http://192.168.11.35:8080; 
            #} 
        } 
    打开静态页面:重启nginx服务器后,访问http://localhost:8888/test.html将显示test.html中的内容。 
     
    2、在windows中使用tomcat部署一份myspring项目,ip为192.168.11.35,端口号设为8080 
    3、在linux中使用tomcat部署一份myspring项目,ip为192.168.11.38,端口号为8181 
    4、配置负载均衡: 
        在http{}中配置 
        #负载均衡的两台机器 
        upstream myCluster { 
            server 192.168.11.35:8080; #1/6的请求将会被分配到此服务器 
            server 192.168.11.38:8181 weight=5; #权重 指5/6的请求将会被分配到此服务器 
        }  
        在server {}中配置 
        location ~ \.jsp$ { 
            proxy_pass http://myCluster ; #这里的名字和上面的cluster的名字相同 
            proxy_redirect off; 
            proxy_set_header Host $host; 
            proxy_set_header X-Real-IP $remote_addr; 
            proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;

proxy_connect_timeout   1; #宕机时超时时间
             proxy_send_timeout      1;
             proxy_read_timeout      1;
        }  
        以上配置表示访问html静态页面时,由nginx自己处理。当访问jsp动态页面时,nginx根据设置的权重将请求分流到35,38两台服务器中处理,处理后结果返回到页面显示。 
        访问localhost:8888/myspring/default.jsp,将会随机分配给35或38的服务器处理。 
         
         
    说明:以上myspring是我使用的项目示例,项目直接路径下包含test.html和default.jsp两个文件。 
          nginx还有很多参数这里没有使用到,具体可上Nginx官网了解。

使用nginx进行负载均衡的更多相关文章

  1. nginx+tomcat负载均衡

    最近练习nginx+tomcat负载均衡.根据一些资料整理了大体思路,最终实现了1个nginx+2个tomcat负载均衡. 安装JDK 1>进入安装目录,给所有用户添加可执行的权限 #chmod ...

  2. 使用Nginx实现负载均衡

    使用Nginx实现负载均衡 一.nginx简介 nginx是一个高性能的HTTP服务器和反向代理服务器.它起初是俄罗斯人Igor Sysoev开发的,至今支撑者俄罗斯的很多大型的网站. 二.nginx ...

  3. nginx作为负载均衡服务器——测试

    i. 需求 nginx作为负载均衡服务器,用户请求先到达nginx,再由nginx根据负载配置将请求转发至 tomcat服务器. nginx负载均衡服务器:192.168.101.3 tomcat1服 ...

  4. windows配置nginx实现负载均衡集群

    windows配置nginx实现负载均衡集群2014-08-20 09:44:40   来源:www.abcde.cn   评论:0 点击:617 网上大部分关于nginx负载均衡集群的教程都是lin ...

  5. 使用nginx做负载均衡的session共享问题

    查了一些资料,看了一些别人写的文档,总结如下,实现nginx session的共享PHP服务器有多台,用nginx做负载均衡,这样同一个IP访问同一个页面会被分配到不同的服务器上,如果session不 ...

  6. 【Nginx】配置Nginx的负载均衡

    参考的优秀文章 tomcat配置文件server.xml详解 AJP协议总结与分析 Using nginx as HTTP load balancer 在本机运行2个Tomcat 现需要运行两个Tom ...

  7. Nginx的负载均衡 - 整体架构

    Nginx的负载均衡 - 整体架构 Nginx版本:1.9.1 我的博客:http://blog.csdn.net/zhangskd Nginx目前提供的负载均衡模块: ngx_http_upstre ...

  8. Nginx作为负载均衡服务器(Windows环境)

    一个最简单的负载均衡测试,不涉及到session复制,只是将请求分配到不同的服务器上去而已. 1.创建一个简单的web应用.只有一个index.jsp页面,,内容如下. <%@ page lan ...

  9. [转载] nginx的负载均衡

    原文:http://www.srhang.me/blog/2014/08/27/nginx-loabbalance/ Nginx负载均衡 一.特点 1.1 应用情况 Nginx做为一个强大的Web服务 ...

  10. Nginx之负载均衡

    转自:http://www.360doc.com/content/13/1114/12/7694408_329125489.shtml 注,大家可以看到,由于我们网站是发展初期,nginx只代理了后端 ...

随机推荐

  1. 类中的internal成员可能是一种坏味道

    前言 最近除了搞ASP.NET MVC之外,我也在思考一些编程实践方面的问题.昨天在回家路上,我忽然对一个问题产生了较为清晰的认识.或者说,原先只是有一丝细微的感觉,而现在将它和一些其他的方面进行了联 ...

  2. JS input 银行卡号格式转换

    replace(/\D/g,'').replace(/....(?!$)/g,'$& ')

  3. weex 学习

    相关资料和链接: # 官方网站https://weex.apache.org/cn/ # githubhttps://github.com/apache/incubator-weex # weex环境 ...

  4. Spring事务管理简介

    © 版权声明:本文为博主原创文章,转载请注明出处 1.什么是事务 - 事务是指逻辑上的一组操作,这组操作要么全部成功,要么全部失败 2.事务特性(ACID) - 1.原子性(Atomicity):指事 ...

  5. MFC错误集锦

    MFC中相关报错及其解决的方法: (1)0x00000005: 解决的方法:看是哪里的 数组越界: (2)0xCCCCCCCC:在类中声明指针,但没有赋初值之类的错误. 解决的方法:在类的构造函数中给 ...

  6. Atitit.程序包装exe启动器 打包 发布 设计 -生成exe java

    Atitit.程序包装exe启动器 打包 发布 设计 -生成exe java 1. 要实现的功能1 2. ahk是个好东东..能启动了...1 3. exe4j   vs  nativej1 4. 2 ...

  7. lua学习笔记(十三)

    math库     定义在math中     所有三角函数都使用弧度     指数和对数函数     取整函数     伪随机数math.random         调用时没有参数返回0~1之间的随 ...

  8. 关于myeclipse中启动项目(server为welogic10)报valid license.bea错误的问题解决方式

    之前由于重转系统.导致我的weblogic和myeclipse都要重装.重装之后,出现了问题,我是依照weblogic破解版的步骤来的.但还是报例如以下错误: Unable to start WebL ...

  9. Java学习笔记之equals和Objects.equals

    equals 相信大家就知道,就是比较,我们平时也会在自己定义的类中加入自己重写的equals用来比较两个类是否相同,例如这样 public class Person { private String ...

  10. python学习 04 函数参数

    1.参数可以传递元组,但是要加* 2.参数可以传递字典,但是要加**