zoukankan      html  css  js  c++  java
  • Haproxy 8种算法+Session共享

    Haproxy有8种负载均衡算法(balance),分别如下:

    1.balance roundrobin # 轮询,软负载均衡基本都具备这种算法
    
    2.balance static-rr # 根据权重,建议使用
    
    3.balance leastconn # 最少连接者先处理,建议使用
    
    4.balance source # 根据请求源IP,建议使用
    
    5.balance uri # 根据请求的URI
    
    6.balance url_param,# 根据请求的URl参数'balance url_param' requires an URL parameter name
    
    7.balance hdr(name) # 根据HTTP请求头来锁定每一次HTTP请求
    
    8.balance rdp-cookie(name) # 根据据cookie(name)来锁定并哈希每一次TCP请求

    由于负载请求分发到不同服务器,可能导致Session会话不同步的问题,若想实现会话共享或保持,可采用如下3种方式:

    1.用户IP 识别

    haroxy 将用户IP经过hash计算后 指定到固定的真实服务器上(类似于nginx 的IP hash 指令)

    配置指令

    balance source

    2.Cookie 识别

    haproxy 将WEB服务端发送给客户端的cookie中插入(或添加加前缀)haproxy定义的后端的服务器COOKIE ID。

    配置指令例举

    cookie SESSION_COOKIE insert indirect nocache

    用firebug可以观察到用户的请求头的cookie里 有类似” Cookie jsessionid=0bc588656ca05ecf7588c65f9be214f5; SESSION_COOKIE=app1” SESSION_COOKIE=app1就是haproxy添加的内容

    3.Session 识别

    haproxy 将后端服务器产生的session和后端服务器标识存在haproxy中的一张表里。客户端请求时先查询这张表。

    配置指令例举

    appsession JSESSIONID len 64 timeout 5h request-learn

  • 相关阅读:
    cs231n--详解卷积神经网络
    Spring 2017 Assignments2
    深度神经网络基础
    cs231n官方note笔记
    Spring 2017 Assignments1
    问题
    win7下解决vs2015新建项目,提示“未将对象引用设置到引用实例“的问题
    项目二:人脸识别
    ubutu强制关闭应用程序的方法
    将caj文件转化为pdf文件进行全文下载脚本(ubuntu下亲测有用)
  • 原文地址:https://www.cnblogs.com/qwop/p/6637359.html
Copyright © 2011-2022 走看看