Nginx负载均衡配置简单配置方法

Nginx负载均衡配置简单配置方法

大家好,又见面了,我是全栈君。

http://www.jb51.net/article/121235.htm

Nginx作为负载均衡服务器,用户请求先到达nginx,再由nginx根据负载配置将请求转发至不同的Web服务器。下面通过本文给大家分享Nginx负载均衡配置简单配置方法,需要的的朋友参考下吧


背景

当一个网站从小到大,访问量逐渐增大现有的服务器已经支撑不住,一般的解决方案就是缓存、加服务器、数据库读写分离、实行负载均衡分布式等等,本人对这些技术方案都没有在项目中具体的实践过,

但是一直听同事过说起,利用空闲时间自我学习了解下;

负载均衡

什么是负载均衡,就是当快要承受不住的时候,又给你一台服务器来分担压力,请求会分配到两台服务器上,两台服务器上部署相同的内容相当于一个分身,可以处理相同的事情;

Nginx作为负载均衡服务器,用户请求先到达nginx,再由nginx根据负载配置将请求转发至不同的Web服务器

Nginx负载均衡配置简单配置方法

Nginx配置文件

 1)  从Nginx官网下载 http://nginx.org/en/download.html

 2)    安装Nginx,并找到nginx.conf文件(C:\nginx\conf\nginx.conf);

 在http中加入配置:

   加权轮询,按服务器的性能给予权重,本例是1:2分配

1
2
3
4
upstream www.woizuqiu.com {
  server 192.168.1.1:8080 weight=1;
 
server 192.168.1.1:8090 weight=2;
}

  ip_hash轮询方法,不可给服务器加权重,nginx会让相同的客户端ip请求相同的服务器 

1
2
3
4
5
upstream www.woizuqiu.com {
    server 192.168.1.1:8080;
    server 192.168.1.1:8090 max_fails=3 fail_timeout=30s ;
   ip_hash;
   }

  根据服务器的本身的性能差别及职能,可以设置不同的参数控制。

  down 表示负载过重或者不参与负载

  weight 权重过大代表承担的负载就越大

  backup 其它服务器时或down时才会请求backup服务器

  max_fails 失败超过指定次数会暂停或请求转往其它服务器

  fail_timeout 失败超过指定次数后暂停时间

server配置如下: 

1
2
3
4
5
6
7
8
9
10
11
12
1
server {
  
listen  80;
  
server_name www.woizuqiu.com;
  
#charset koi8-r;
  
#access_log logs/host.access.log main;
  
location / {
   
add_header backendIP $upstream_addr;
#被转发到的上游服务器地址
   
add_header backendCode $upstream_status;
#状态码
   
proxy_pass http:
//www
.woizuqiu.com;
   
proxy_set_header Host $host;
   
proxy_set_header X-Real-IP $remote_addr;
   
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;         
  
}
 
}

1.查看Nginx版本:

  C:\nginx>nginx -v

2.启动Nginx:

  C:\nginx>start nginx

  启动Nginx需要占用80端口,常见错误:bind() to 0.0.0.0:8080 failed (10013: An attempt was made to access a socket in a way forbidden by its access permissions),需要把系统的80端口关掉,

  检查端口:netstat -aon | findstr :80 

3.判断Nginx是否启动:

  tasklist /fi “imagename eq nginx.exe”

4.停止:

  C:\nginx>nginx.exe -s stop

5.重新载入Nginx:

  C:\nginx>nginx.exe -s reload

总结

以上所述是小编给大家介绍的Nginx负载均衡配置简单配置方法,希望对大家有所帮助

原文链接:http://www.cnblogs.com/amoshu/p/7346806.html

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请联系我们举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/108102.html原文链接:https://javaforall.net

(0)
全栈程序员-站长的头像全栈程序员-站长


相关推荐

  • 程序员 你读过的书,藏着自己的命运-技术类(二)

    做一个积极的人编码、改bug、提升自己我有一个乐园,面向编程,春暖花开!=================================================对人工智能感兴趣的伙伴,分享一个我朋友的人工智能教程。零基础!通俗易懂!风趣幽默!大家可以看看是否对自己有帮助,点击这里查看教程。===========================================…

    2022年2月28日
    38
  • javaWeb前后台交互(二)[通俗易懂]

    javaWeb前后台交互(二)[通俗易懂]接上一篇javaWeb前后台交互。链接:https://blog.csdn.net/blackplus28/article/details/80603863一、MVC思想责任分离思想.M:Model,数据模型对象.(JavaBean)V:View,视图界面.(JSP,Panel,Window)C:Controller,控制器(Servlet)本次代码采用:Tomc…

    2022年6月13日
    27
  • pycharm设置项目路径_vscode和pycharm区别

    pycharm设置项目路径_vscode和pycharm区别#-*-coding=utf-8-*-#@Time:${DATE}${TIME}#@Author:Donvink${USER}#@Site:${SITE}#@File:${NAME}.py#@Software:${PRODUCT_NAME}

    2022年8月25日
    5
  • ASP.NET MVC Section

    ASP.NET MVC Section本篇文章我们来讨论一下ASP.NETMVC框架中的Section。Section主要用于将一部分代码插入到Layout页面中的指定位置。通俗地说就是,我们先在Layout页面中通过@RenderSection(“Header”)的方式挖一个坑,告诉下面的视图页面说,我这个地方有个坑,你们把你们各自相关的代码放进来吧。然后,使用该Layout的视图页面通过如下的方式将一坨坨的代码送到Layo

    2022年7月21日
    8
  • 【Themes for IntelliJ-based IDEs】Idea主题下载

    【Themes for IntelliJ-based IDEs】Idea主题下载下载地址:https://plugins.jetbrains.com/search?isPaid=false&tags=Theme下载完成后直接将.jar拖入到idea中即可

    2022年5月31日
    160
  • 数组转LIst的几种方法

    数组转LIst的几种方法第一种方式/***针对数组类型转换*分别是int[]、long[]、double[],其他数据类型比如short[]、byte[]、char[],在JDK1.8中暂不支持*/List<Integer>intList=Arrays.stream(newint[]{1,2,3,}).boxed().collect(Collectors.toList());List<Long>longList=Arrays.stream(newlong[]

    2022年6月21日
    27

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号