1.haproxy使用最需要注意的点:
1.1连接数:
前端maxconn默认值为2000,非常有必要将其增加几倍。
1.2超时时间
timeout connect 60s # haproxy和服务端建立连接的最大时长,设置为1秒就足够了。局域网内建立连接一般都是瞬间的
参考:http://www.cnblogs.com/f-ck-need-u/p/8540805.html

frontend webserver
bind 0.0.0.0:80 #在本机的所有接口监听访问 80 端口的请求

MySQL集群在HAproxy之后运行,HAproxy对进来请求进行负载均衡,对外只暴露一个IP地址。

haproxy反向代理设置:

global
daemon
maxconn 25600
defaults
mode http
timeout connect 5000ms
timeout client 50000ms
timeout server 50000ms
frontend http-in
bind *:800
default_backend servers
backend servers
balance roundrobin #负载均衡模式轮询
server server1 192.168.1.102:80 cookie A check
server server2 192.168.1.104:80 cookie B check

根据用户访问内容实现动静分离:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
frontend http-in
    bind *:80
    mode http
    log global
    option httpclose
    acl url_static path_beg -i /static /images /javascript /stylesheets
    acl url_static path_end -i .jpg .jpeg .gif .png .css .js
    use_backend static_servers if url_static
    default_backend dynamic_servers
backend static_servers
    balance roundrobin
    server imgsrv1 172.18.64.7:80 check maxconn 6000
    server imgsrv2 172.18.64.107:80 check maxconn 6000
backend dynamic_servers
    balance source
    server websrv1 172.18.64.17:80 check maxconn 1000
    server websrv2 172.18.64.106:80 check maxconn 1000

http://www.cnblogs.com/heiye123/articles/7928292.html

################################################

2.haproxy服务器本身只提供代理,没有ssl证书 (一般我们常用的就是这种方式)

这种方式,haproxy不需要重新编译支持ssl,简单方便,只需要后面的web服务器配置好ssl即可。

配置参数(修改haproxy.cfg文件)

frontend https_frontend
bind *:
mode tcp
default_backend web_server backend web_server
mode tcp
balance roundrobin
stick-table type ip size 200k expire 30m
stick on src
server s1 192.168.1.150:
server s2 192.168.1.151: ---------------------------------------------------------
注意,这种模式下mode 必须是tcp 模式
---------------------------------------------------------

cp自http://www.mamicode.com/info-detail-1539510.html  和 https://blog.csdn.net/qq_32485197/article/details/81334974

haproxy原理理解的更多相关文章

  1. HAProxy原理和配置

    HAProxy原理和配置 目录 1.HAProxy简介 2.haproxy安装和配置说明 proxies配置参数 bind配置 Balance配置 基于cookie的会话绑定 统计接口启用相关的参数 ...

  2. JUC回顾之-ConcurrentHashMap源码解读及原理理解

    ConcurrentHashMap结构图如下: ConcurrentHashMap实现类图如下: segment的结构图如下: package concurrentMy.juc_collections ...

  3. POJ1523(割点所确定的连用分量数目,tarjan算法原理理解)

    SPF Time Limit: 1000MS   Memory Limit: 10000K Total Submissions: 7406   Accepted: 3363 Description C ...

  4. java的classLoader原理理解和分析

    java的classLoader原理理解和分析 学习了:http://blog.csdn.net/tangkund3218/article/details/50088249 ClassNotFound ...

  5. 01 . HAProxy原理使用和配置

    HaProxy简介 HaProxy是什么? HAProxy是一个免费的负载均衡软件,可以运行于大部分主流的Linux操作系统上. HAProxy提供了L4(TCP)和L7(HTTP)两种负载均衡能力, ...

  6. js 闭包原理理解

    问题?什么是js(JavaScript)的闭包原理,有什么作用? 一.定义 官方解释:闭包是一个拥有许多变量和绑定了这些变量的环境的表达式(通常是一个函数),因而这些变量也是该表达式的一部分. 很显然 ...

  7. kalman filter卡尔曼滤波器- 数学推导和原理理解-----网上讲的比较好的kalman filter和整理、将预测值和观测值融和

    = 参考/转自: 1 ---https://blog.csdn.net/u010720661/article/details/63253509 2----http://www.bzarg.com/p/ ...

  8. debug 调试原理理解

    引言: 昨天,看了一篇文章,很受启发,记得之前听别的人远程调试过代码,觉得很神奇,在自己程序里打断点,连接远程服务器,开启调试后可以调用远程方法来看数据的输入和输出,不需要查找问题,重新部署,测试问题 ...

  9. shiro的原理理解

    1.shiro原理图如下: 框架解释: subject:主体,可以是用户也可以是程序,主体要访问系统,系统需要对主体进行认证.授权. securityManager:安全管理器,主体进行认证和授权都 ...

随机推荐

  1. javascrip 实现简单的计算器功能

    页面样式 <!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF- ...

  2. 简易搭建git仓库、关联远程和本地仓库方法。克隆仓库方法。同一台电脑上创建两个git ssh key方法。

    一,在github上建仓库 react-js-antd-demo: 二:将远程仓库与本地仓库关联 git remote add origin git@github.com:begin256/react ...

  3. Oracle 通过出生日期计算年龄

    方法一: SELECT TRUNC(months_between(sysdate, birth)/12) AS age from mytable 方法二: select TRUNC((to_char( ...

  4. How To Secure Apache with Let's Encrypt on Ubuntu (Free SSL)

    Introduction This tutorial will show you how to set up a TLS/SSL certificate from Let's Encrypt on a ...

  5. EF6 按条件更新多行记录的值

    using (var db = new MyDbContext()) { string fromUser = ""; //sender string toUser = " ...

  6. flask多线程多协程操作

    local的作用:各个线程各开辟一块空间互不影响 基于local""" import threading from threading import local impo ...

  7. 阅读《大道至简第一章》读后感 (java 伪代码)

         通读大道至简第一章愚公移山,可以将其看做一个完整的工程,首先是创建工程的原因,需求:“惩山北之塞,出入之迂”,而后是团队之间的商议:“聚室而谋曰”,然后确定工程的目标:“毕力平险,指通豫南, ...

  8. 彻底澄清c/c++指针概念

    传统的指针概念教科书上已经写的很详细了,这里作为一些补充 在声明一个指针变量的时候 double  *ptr: 这是声明了一个ptr的指针变量,ptr本身是地址,它的数据类型是double  *,在变 ...

  9. Oracle - ORA-28547: Connection to server failed,probable Oracle Net admin error (Navicat)

    一.异常 用Navicat连接Oracle数据库时抛出的异常 二.方案 使用 Oracle 安装目录 \Oracle\product\11.2.0\dbhome_1\BIN 下的 oci.dll 替换 ...

  10. linux邮件客户端mutt日志文件,发不出邮件

    linux上面使用很方便的收发邮件客户端(即MUA),还有一个是mail,大家也可以试试. 在网上找了很多,都说需要msmtp配合使用,其实mutt里面也内建了smtp支持的. mutt and SM ...