Trafficserver Cluster模式
来源:互联网 发布:短线必杀神器 源码 编辑:程序博客网 时间:2024/04/26 02:49
http://blog.chinaunix.net/uid-10249062-id-3243299.html
1 概述
为了解决大流量、大存储的访问特性,Cache Cluster架构方案通常引入四层负载机制(LVS或硬件设备)解决大流量的问题,引入七层负载机制(Haproxy等)解决大存储的问题。而这样的Cache Cluster架构方案一次request需要经过七层负载机制和Cache Server两次的解析。以选择Haproxy为例,其request解析的CPU开销占到用户态的10%以上(不包括其它七层的匹配处理)。因此,避免request的重复解析,能够减少CPU的开销。
另外,业界只有TrafficServer能够提供融合七层负载和Cache Server的单独解决方案,而其它的方案只能用两个软件来分别来实现七层负载和Cache Server。而TrafficServer正式实现完整方案的关键技术。
2 原理
TrafficServer的Cluster模式原理如下图所示:
Trafficserve在Cluster模式下,远端client访问Cache Cluster在服务时存在四种处理策略:
本地CacheServer Hit状态
client的request经过一致性哈希计算出对应的服务Server为本地(即如图中的Cache Server 1)。此时req如果在Cache Server1中Hit,则直接回复resp。数据流程为:
1:req->8:resp
本地CacheServer Miss状态
client的request经过一致性哈希计算出对应的服务Server为本地(即如图中的Cache Server 1)。此时req如果在Cache Server1中Miss,则回Orig Server。数据流程为:
1:req->5:req->6:resp->8:resp
远端CacheServer Hit状态
client的request经过一致性哈希计算出对应的服务Server为远端(即如图中的Cache Server 2)。此时req如果在Cache Server 2中Hit,则回复数据至Cache Server 1,再由Cache Server 1把数据回复给client。数据流程为:
1:req->2:req->3:resp->8:resp
远端Cacheserver Miss状态
client的request经过一致性哈希计算出对应的服务Server为远端(即如图中的Cache Server 2)。此时req如果在Cache Server 2中Miss,则回复Miss信息至Cache Server 1,再由Cache Server 1回源,再把回源的resp一边回复至client,一边回复至Cache Server 2,由Cache Server 2存入本地。数据流程为:
1:req->2:req->3:Miss->5:req->6:resp->8:resp(7:resp)
备注:
TrafficServer之间交互的request和response都为序列化后的解析结果数据,因此可以减少重复解析。
- Trafficserver Cluster模式
- Trafficserver Cluster模式
- spark 运行log cluster 模式
- Spark开发-Yarn cluster模式
- pm2 无法启动cluster模式
- TrafficServer源码初体验
- TrafficServer一致性hash实现
- TrafficServer内存分配器优化
- TrafficServer日志系统配置指南
- TrafficServer日志系统配置指南
- TrafficServer内存分配器优化
- TrafficServer内存分配器优化
- trafficserver安装配置
- 高并发TrafficServer设置
- trafficserver事件驱动机制
- cluster
- Cluster
- cluster
- 使用PowerDesigner 设计SQL Server 数据库
- MII总线基础知识
- MySQL新建用户,授权,删除用户,修改密码
- 线程池 C++实现
- 【转】MySql错误:error :Can't connect to MySQL server (10060)解决办法
- Trafficserver Cluster模式
- TrafficServer一致性hash实现
- IPhone 之 UIView的一些基本方法理解
- Elance(外国版猪八戒)网上兼职 新手入门
- makefile 的一些知识
- Linux下通过进程名获得进程号
- JasperReport 导出PDF时使用其他字体
- 游戏引擎剖析
- 字符与Unicode互转