1. nginx配置文件

用户在浏览器上输入,http://www.xwld.site/ 实际上是在访问服务器80端口,nginx 监听80端口,将用户的请求转发到8080和9080端口

.    upstream www.xwld.site{
. server www.xwld.site:;
. server www.xwld.site:;
. }
. server {
. listen ;
. autoindex on;
. server_name www.xwld.site xwld.site;
. access_log /usr/local/nginx/logs/access.log combined;
. index index.html index.htm index.jsp index.php;
. if ( $query_string ~* ".*[\;'\<\>].*" ){
. return ;
. }
. location = / {
. root /product/front/mmall_fe/dist/view;
. index index.html;
. }
.
. location ~ .*\.html$ {
. root /product/front/mmall_fe/dist/view;
. index index.html;
. }
. location / {
. proxy_pass http://www.xwld.site/;
. }
. location ~ .*\.(gif|jpg|jpeg|png|bmp|swf|flv|ico)$ {
. proxy_pass http://www.xwld.site;
. expires 30d;
. }
. location ~ .*\.(js|css)?$ {
. proxy_pass http://www.xwld.site;
. expires 7d;
. }
. }

nginx 配置负载均衡的时候,可以修改上面的配置文件,新增多个服务器ip,也可以指定客户端请求到服务器的对应策略

2. Nginx负载均衡配置策略

常见的策略有轮询、权重、ip_hash、fair等

2.1 轮询

默认就是轮询的方式,轮询的方式,每个请求会按时间顺序逐一分配到不同的后端服务器,如果后端服务器down掉,能自动剔除。

优点

实现简单,不要配置

缺点

不考虑每台服务器处理能力。

示例: 

upstream www.xwld.site{
server www.xwld.site:;
server www.xwld.site:;
}

2.2 权重(weight)

指定轮询几率,weight和访问比率成正比,用于后端服务器性能不均的情况,在实际生产环境中用的最多。

优点

考虑的每台服务器处理能力的不同

如果,我们有两条linux服务器,有一台,配置比较高,那么这台高配置的服务器,应当要负担更多的请求。

示例:

upstream www.xwld.site{
server www.xwld.site: weight=;
server www.xwld.site: weight=;
}

上面的配置表示,访问8080端口的服务器的概率是访问9080端口的1.5倍。

2.3 ip_hash

每个请求按访问ip的hash结果分配,这样每个访客固定访问一个后端服务器,可以解决session的问题。

缺点是,ip_hash不一定平均,可能会造成某一台服务器的压力过大。

示例:

upstream www.xwld.site{
ip_hash;
server www.xwld.site:;
server www.xwld.site:;
}

2.4 least_conn(最少连接

least_conn这种负载均衡策略,能把请求转发给连接数较少的后端服务器,适合请求处理时间长短不一造成服务器过载的情况。

有时候会出现这种情况,有些接口请求占用的时间很长,会导致其所在的后端服务负载过高。这种情况下,least_conn这种方式就可以达到更好的负载均衡效果。

示例:

upstream www.xwld.site{
least_conn;
server www.xwld.site:;
server www.xwld.site:;
}

2.5 fair(公平)

按后端服务器的响应时间来分配请求,响应时间短的优先分配。

fair属于第三方的负载均衡策略的实现,要使用这种策略,需要安装第三方插件。

示例:

upstream www.xwld.site{
server www.xwld.site:;
server www.xwld.site:;
fair;
}

2.6 url_hash

使用url_hash,可以使得同一个url(也就是同一个资源请求)会到达同一台服务器,一旦缓存住了资源,再此收到请求,就可以从缓存中读取

示例:

upstream www.xwld.site{
server www.xwld.site:;
server www.xwld.site:;
hash $request_uri;
}

Mall电商项目总结(二)——nginx负载均衡配置和策略的更多相关文章

  1. Nginx 负载均衡配置和策略

    Nginx 的 HttpUpstreamModule 提供对后端(backend)server的简单负载均衡.一个最简单的 upstream 写法例如以下: upstream backend { se ...

  2. Tomcat集群,Nginx集群,Tomcat+Nginx 负载均衡配置,Tomcat+Nginx集群

    Tomcat集群,Nginx集群,Tomcat+Nginx 负载均衡配置,Tomcat+Nginx集群 >>>>>>>>>>>> ...

  3. nginx高性能WEB服务器系列之六--nginx负载均衡配置+健康检查

    nginx系列友情链接:nginx高性能WEB服务器系列之一简介及安装https://www.cnblogs.com/maxtgood/p/9597596.htmlnginx高性能WEB服务器系列之二 ...

  4. Tomcat服务部署与Nginx负载均衡配置

    一.中间键产品介绍 目前来说IBM的WebSphere,Oracle的Weblogic占据了市场上java语言Web站点的部分份额,该两种软件都是商业化的软件,由于性能优越,可靠性高等优点应用于大型互 ...

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

    http://www.jb51.net/article/121235.htm Nginx作为负载均衡服务器,用户请求先到达nginx,再由nginx根据负载配置将请求转发至不同的Web服务器.下面通过 ...

  6. Docker 安装 Nginx 负载均衡配置

    Docker 安装 # 1)安装依赖包 yum install -y yum-utils device-mapper-persistent-data lvm2 # 2)添加Docker软件包源(否则d ...

  7. Mall电商项目总结(一)——项目概述

    项目概述 此电商项目为本人学习项目,后端 使用nginx实现负载均衡转发请求到多台tomcat服务器,使用多台 redis服务器分布式 缓存用户登录信息. 项目已经部署到阿里云服务器,从阿里云linu ...

  8. Nginx负载均衡配置实例详解

    负载均衡是我们大流量网站要做的一个东西,下面我来给大家介绍在Nginx服务器上进行负载均衡配置方法,希望对有需要的同学有所帮助哦. 负载均衡 先来简单了解一下什么是负载均衡,单从字面上的意思来理解就可 ...

  9. Nginx负载均衡配置实例详解(转)

    负载均衡是我们大流量网站要做的一个东西,下面我来给大家介绍在Nginx服务器上进行负载均衡配置方法,希望对有需要的同学有所帮助哦. 负载均衡 先来简单了解一下什么是负载均衡,单从字面上的意思来理解就可 ...

随机推荐

  1. (1)Unity3d界面、入门

    项目视图 层级视图 属性视图 场景视图 游戏视图 调整u3d整体界面布局 1.查看和移动视图 快捷键Q 2.沿轴方向位移 快捷键W 3.沿轴向旋转 快捷键E 4.沿轴向缩放 快捷键R 5.自由调节小大 ...

  2. Spring Tool Suite(STS)安装

    Spring Tool Suite是一个基于Eclipse的开发环境,可以自定义用于开发Spring应用程序.它提供了一个随时可用的环境来实现,调试,运行和部署Spring应用程序,包括Pivotal ...

  3. PyTorch学习笔记之nn的简单实例

    method 1 import torch from torch.autograd import Variable N, D_in, H, D_out = 64, 1000, 100, 10 x = ...

  4. Data.FireDACJSONReflect单元不支持跨平台

    Data.FireDACJSONReflect不支持跨平台 Data.FireDACJSONReflect里面:IFDJSONDeltasApplyUpdates,TFDJSONDeltas,TFDJ ...

  5. Android 获取设备唯一标识码

    概述 有时需要对用户设备进行标识,所以希望能够得到一个稳定可靠并且唯一的识别码.虽然Android系统中提供了这样设备识别码,但是由于Android系统版本.厂商定制系统中的Bug等限制,稳定性和唯一 ...

  6. 学习笔记 Java类的封装、继承和多态 2014.7.10

    1.问题:toString()没搞懂? int a = 1; Integer aa = new Integer(a); //这是实现的过程 System.out.println("Hello ...

  7. c语言函数---I

    函数名: imagesize 功 能: 返回保存位图像所需的字节数 用 法: unsigned far imagesize(int left, int top, int right, int bott ...

  8. Surrounded Regions 包围区域——dfs

    Given a 2D board containing 'X' and 'O', capture all regions surrounded by 'X'. A region is captured ...

  9. Java如何Attachment源码

    该文章教你如何在Eclipse中Attachment源码,学到了不少东西. http://jingyan.baidu.com/article/1709ad80b107f64635c4f040.html ...

  10. ubuntu 14.04 LTS 安装webbentch压力測试工具

    近期在做 压力測试工具,除了apache的ab測试工具外,发现webbentch工具也不错,这里简介下这两个工具. 一.webbentch安装: wget http://blog.s135.com/s ...