nginx安装及负载均衡配置

      最近项目不忙就考虑把现有的单点系统应用增加成多节点应用,就考虑到采用nginx做负载均衡,记录下来配置的过程

       nginx安装
      1  windows下安装nginx(此处只写windows下,linux下略网上很多就不再写了)
     下载nginx http://nginx.org/en/download.html
      解压完成:
      

     2 启动关闭常用命令

         进入命令行:cmd 进入到nginx的安装目录

         

          

               start nginx : 启动nginx
                nginx -s reload  :修改配置后重新加载生效
                nginx -s reopen  :重新打开日志文件
                nginx -t -c /path/to/nginx.conf 测试nginx配置文件是否正确

                关闭nginx:
                nginx -s stop  :快速停止nginx
                nginx -s quit  :完整有序的停止nginx

 

二: nginx负载均衡配置
           1  准备两个tomcat,分别端口设置为8081和8082(具体端口设置略过)
           2  到nginx的安装目录,修改nginx.conf文件做负载配置(配置如下两个地方就可以)

            

             至此 我们nginx负载就配置完成了,分别启动两个tomcat ,启动nginx,访问就可以了

  三 负载均衡后遇到的问题
           1 文件上传下载问题
              假如我上传图片时候,正好调用的是81端口的项目,那么文件就上传到81服务器上去了,在我访问的时候,分配到82                  服务器,这样就导致文件无法展示,针对此问题有几种处理方案:
              A 做文件服务器,所有的应用公用文件服务器,上传下载都指向该文件服务器
              B 通过nginx配置 使得上传下载都指向同一台服务器上去(这种方式最简单,但是这种方式不能实现完全的负载)
              这里介绍B方案的配置如下: 

                

              2 Session问题
                 当负载后 我们的应用部署在不同的机器上,每一次请求随机分配到不同的服务器,这样导致访问81机器后,下一访问                   会分配到82机器上,这样与81建立的session在82机器上就不能使用了
                 解决方案:
                  A 使用readis 将session 缓存到独立的readis服务器
                  B session保存到数据库中
                  C 采用ngin的配置,使用ip_hash配置,保证同一个ip请求落在同一台服务器上
                  C方案的nginx配置如下:

                    

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值