Linux haproxy基础
代理作用
web缓存,提供缓存功能,可以加速响应过程。
反向代理,可以隐藏后端服务器
内容路由,可把不同内容类型的请求转发至特定服务器,
转码器,与客户端通信,由于带宽限制,可将报文转码压缩;与后端服务器通信,一般都同个局域网内,可以不使用压缩传输。
haproxy
只是http协议的反向代理,不提供缓存功能,但支持对TCP层以及基于TCP通信的应用做负载均衡。
HTTP反向代理
TCP代理
SSL/TLS
负载均衡调度,工作于 TCP 模式时,可对整个连接进行负载均衡调度;工作于 HTTP 模式时,可对 HTTP 请求进行调度。
URL语法
scheme://user:password@host:port/path;params?query#frag
取模法
即取余法,可以很好的将负载分发到各后端服务器,但如果一台后端服务器down,被除数就会减一,大部分请求的余数都会改变,那么分配结果将会大量改动。
一致性哈希
相对于取模法,此方法还会对后端服务器进行hash计算,将hash值映射到一个0~65535值域上,当请求来到hsah计算后,将分配到第一个小于此hash值的机器上。如果其中一台机器down掉,本来应该分配到这台机器上的请求,就会自动分配至左侧机器。这样只会影响到一小部分请求。
调度算法
动态:权重可以动态调整
静态:调整权重不会实时生效
roundrobin:基于权重轮询,在服务器的处理时间保持均匀分布时,这是最平衡、最公平的算法。由于其权重可以在运行时进行调整,每个后端主机最多支持4128个连接。此算法是动态的。
static-rr:基于权重轮询,在运行时调整其服务器权重不会生效;不过,其在后端服务器连接数上没有限制;不支持慢启动,在高负荷的情况下,服务器重新上线时会立即被分配大量连接。此算法是静态的。
leastconn:适用于长连接的会话,新的连接请求被派发至具有最少连接数目的后端服务器;在有着较长时间会话的场景中推荐使用此算法,如LDAP、SQL等,其并不太适用于较短会话的应用层协议,如HTTP;此算法是动态的。
source:将请求的源地址进行hash计算,然后根据不同hash类型实现不同功能。
hash-type:map-based取模法,静态;consistent一致性哈希,动态。
uri:对URI左半部或整个URI进行hash计算,然后可将同一资源的请求发往特定的服务器,如果第一个访问某个资源,那么就根据roundrobin方式分配给一台后端服务器。根据不同hash类型实现不同功能。
url-param:根据URL中的指定参数的值hash后进行调度,根据不同hash类型实现不同功能。
hdr (<name>):根据请求报文中指定的header信息进行调度,把指定的header中的值hash计算。然后根据不同hash类型实现不同功能。
Linux haproxy基础的更多相关文章
- Linux Cluster 基础之LVS调度算法与集群类型
Linux Cluster 基础之LVS调度算法与集群类型 作者:尹正杰 版权声明:原创作品,谢绝转载!否则将追究法律责任. 一.LB Cluster 1>.什么是LB LB 集群是 load ...
- HAProxy详解(二):HAProxy基础配置与应用实例
一.HAProxy基础配置与应用实例: 1.快速安装HAProxy集群软件: HAProxy的官网: https://www.haproxy.org/#down下载HAProxy的源码包. 安装: [ ...
- 1、代理服务器及haproxy基础
1.web站点架构 前端一台主机提供app server,当用户请求到达时,如果要存储结构化数据,就需要找一台主机做database server.当业务达到一定程度时,要把web server.存储 ...
- Linux实战教学笔记06:Linux系统基础优化
第六节 Linux系统基础优化 标签(空格分隔):Linux实战教学笔记-陈思齐 第1章 基础环境 第2章 使用网易163镜像做yum源 默认国外的yum源速度很慢,所以换成国内的. 第一步:先备份 ...
- Linux实战教学笔记04:Linux命令基础
第四节:Linux命令基础 标签(空格分隔):Linux实战教学笔记 第1章 认识操作环境 root:当前登陆的用户名 @分隔符 chensiqi:主机名 -:当前路径位置 用户的提示符 1.1 Li ...
- Kali Linux渗透基础知识整理(四):维持访问
Kali Linux渗透基础知识整理系列文章回顾 维持访问 在获得了目标系统的访问权之后,攻击者需要进一步维持这一访问权限.使用木马程序.后门程序和rootkit来达到这一目的.维持访问是一种艺术形式 ...
- Kali Linux渗透基础知识整理(二)漏洞扫描
Kali Linux渗透基础知识整理系列文章回顾 漏洞扫描 网络流量 Nmap Hping3 Nessus whatweb DirBuster joomscan WPScan 网络流量 网络流量就是网 ...
- 5.linux内核模块基础,内核模块学习
linux内核模块基础 一.定义 Linux 内核的整体结构非常庞大,其包含的组件也非常多,如何使用这些组件呢: 方法 1:把所有的组件都编译进内核文件,即:zImage 或 bzImage,但这样会 ...
- Linux信号基础
Linux信号基础 作者:Vamei 出处:http://www.cnblogs.com/vamei 欢迎转载,也请保留这段声明.谢谢! Linux进程基础一文中已经提到,Linux以进程为单位来 ...
随机推荐
- Centos7下用FastDFS搭建图片服务器
1.所用到的工具: 1.FastDFS_v5.05.tar 2.fastdfs-nginx-module_v1.16.tar 3.libfastcommonV1.0.7.tar 4.nginx-1.1 ...
- 【English】十四、英语
一.英语 是 词法(词) + 语法 一个个拥有词法的词,就是材料.通过语法的规则将这些词合理组合排列起来.然后,就可以干很多事了.
- redis -list
列表的元素类型为string 按照插入顺序排序 增加: 例如: 从列表的 左侧 加入数据 a b c lpush 键 a b c 显示:1“c"2"b"3"c& ...
- JS直接调用C#后台方法(ajax调用)
1. 先手动引用DLL或者通过NuGet查找引用,这里提供一个AjaxPro.2.dll的下载: 2. 之后的的过程不想写了,网上都大同小异的,直接参考以前大佬写的: AjaxPro2完整入门教程 总 ...
- python之三行代码发送邮件
(1)首先进入cmd,输入pip install yagmail (2)思路:1 .连接服务器:yagmail.SMTP(邮箱账号,邮箱密码,邮箱服务器地址,邮箱服务器端口) 2 .准备正文内容:co ...
- Python基础之字典
字典初识 字典的认识 首先,我们来认识一下字典: # 定义一个字典 user_dict = {"name": "zhangsan", "age&quo ...
- day 21 垃圾回收机制、标记删除及分代回收
垃圾回收机制 # 不能被程序访问到的数据,就称之为垃圾 引用计数 # 引用计数是用来记录值的内存地址被记录的次数的# 每一次对值地址的引用都可以使该值的引用计数 +1# 每一次对值地址的释放都可以使 ...
- 随心测试_数据库_002 <数据库系统组成>
软测工程师:作为综合运用多学科知识,保障软件质量的重要岗位.需要我们学以致用,在工作中不断学习提升.以下:软测人员必备_数据库核心技能学习点,供大家学习参考. 数据库系统组成_必备 1. 简介:数据库 ...
- 身份认证功能chiro的使用
package com.cun;import org.apache.shiro.SecurityUtils;import org.apache.shiro.authc.*;import org.apa ...
- VMware 安装 centos6.8
参考文档:https://jingyan.baidu.com/article/49711c61964328fa441b7c93.html 准备工作 VMware Workstation Pro 下载地 ...