zoukankan      html  css  js  c++  java
  • Nginx负载均衡的实现(初级)

    不用nginx.conf,新建一个 fzjh.conf (名称自定义)

    内容如下:

    user nobody; # 声明用户为nobody

    worker_processes 4; # 开启的nginx 进程数为4

    events{

             worker_connections 1024; # 最大并发数是1024个并发

    }

    http{

             upstream myproject{ # 服务器待选列表。如果某个服务器崩溃,自动移除

                       server ip:port;

                       server ip:prot;

             }

             Server{

                       listen 8080; # 监听8080端口

                       location / { # 监听的目录

                                # 代理的服务器列表

                                proxy_pass http://myproject

                       }

             }

    }

    Location表达式

    ~      #波浪线表示执行一个正则匹配,区分大小写

    ~*    #表示执行一个正则匹配,不区分大小写

    ^~    #^~表示普通字符匹配,如果该选项匹配,只匹配该选项,不匹配别的选项,一般用来匹配目录

    =      #进行普通字符精确匹配

    @     #"@" 定义一个命名的 location,使用在内部定向时,例如 error_page, try_files

    例:

    location  = / {

      # 只匹配"/".

    }

    location  / {

      # 匹配任何请求,因为所有请求都是以"/"开始

      # 但是更长字符匹配或者正则表达式匹配会优先匹配

    }

    location ^~ /images/ {

      # 匹配任何以 /images/ 开始的请求,并停止匹配 其它location

    }

    location ~* .(gif|jpg|jpeg)$ {

      # 匹配以 gif, jpg, or jpeg结尾的请求.

      # 但是所有 /images/ 目录的请求将由 [Configuration C]处理.  

    }

    Http Upstream模块

    !!! 默认是轮询!!!

    ip_hash指令(用户对应IP)

    同一个用户登录后端的服务是稳定的

    在服务器待选列表前面加入ip_hash;命令

    server指令

    server ip:port weight=2; # 设置服务器的权重

    权重越高,分配的几率越高

  • 相关阅读:
    HDU 2078 复习时间
    HDU 2076 夹角有多大
    邮票(codevs 2033)
    特种部队(codevs 1427)
    小a和uim之大逃离(洛谷 1373)
    地铁间谍(洛谷 2583)
    推销员(codevs 5126)
    小朋友的数字(codevs 3293)
    车站分级(洛谷 1983)
    Code(poj 17801)
  • 原文地址:https://www.cnblogs.com/MarsJiang/p/nginx_fzjh1.html
Copyright © 2011-2022 走看看