Tafficserver旁路接入方案综述

2024-03-18 16:08

本文主要是介绍Tafficserver旁路接入方案综述,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

转载自 https://blog.zymlinux.net/index.php/archives/821

随着宽带技术的加速普及,目前,几款高性能开源CDN方案在广大开源爱好团队的充分的测试、企业服务应用验证中破壳而出。实际这个地球的互联网用户都在知情与不知情之间使用了ATS的环保服务。
这方面的内容可以在 APACHE的官方网站(http://trafficserver.apache.org/users.html)可以分享更多信息。
小注:不得不提一下的是,Taobao的工程师们,“仓实知礼”的开源精神,让这张用户表中出现了很多中国大小公司。这其中少不了赵永明(掌管中国ATS官方QQ群:281057393)这位中国CDN的资深使用者与开发者的贡献。进入小康社会的中国,还会有多少人参与开源软件与方案的研发与推广大军呢?从笔者的开发、服务与科研应用中,对目前Trafficserver(下简称ATS)这款开源cdn系统(笔者认为是当前所有核心可推测系统中最优选方案)接触使了很长时间。特别是随着LINUX核心3.11(直接稳定支持SSD)的发布,更助推了ATS在网络内容传输世界的动人表现。
笔者认识到ATS的几处优势:
1.cache数据库式的存储与检索
ATS支持以大数据库存储形式存储并检索cache内容。这基本上综合了目前全部CDN体系地存储检索方面的优点。自3.2.5以上版本已经对16T以上的存储文件稳定支持。
2.直接支持裸设备存储(directory的读写)
这项功能摆脱linux文件系统的限制,可以将设备的物理性能发挥到极致了。
3.对wccp的应用
虽然开源以后将wccp的握手模块去除了,但是利SQUID的UDP2048端口握手能力也能极好地使用上WCCP的自动集群负载能力。
4.最重要的特性在于同时支持SMP。

本文重点在于介绍ATS的三种旁路接入方式。
旁路接入的好处,网络规划师基本上可以实现项目的交钥匙工程。虽然不能0运维,但是需要“半个小时到现场”的任务肯定将少很多。
依据现行的工业标准,能实现ATS(squid也是一样)有三种办法:

1)PBR(策略路由);
2)WCCP集群;
3)端口镜像(分光)。

先发布三种旁路方案实际模型

Tafficserver旁路接入方案综述 - itoedr - itoedr的it学苑

说明
:本方案中,核心交换机处需要进行路由配置,才能实现用户请求优先转向ATS服务器而不是直接通过交换机向外网申请服务。

图1:PBR旁路模型

Tafficserver旁路接入方案综述 - itoedr - itoedr的it学苑
图2-1:wccp的拦截原理图(from csico site)

 

Tafficserver旁路接入方案综述 - itoedr - itoedr的it学苑

图2-2:wccpv2自动负载集群模型

Tafficserver旁路接入方案综述 - itoedr - itoedr的it学苑
说明:本方案中,nginx 使用临时重定向镜像口B(A’)取得的请求Q.url,只要nginx 拦劫服务足够快,因为nginx回程距离小,绝大部分请求都能重定向成功,实现旁路接入对原主路的控制。

图3:镜像端点+抢占式服务模型​​​​​


这篇关于Tafficserver旁路接入方案综述的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/822888

相关文章

C#高效实现在Word文档中自动化创建图表的可视化方案

《C#高效实现在Word文档中自动化创建图表的可视化方案》本文将深入探讨如何利用C#,结合一款功能强大的第三方库,实现在Word文档中自动化创建图表,为你的数据呈现和报告生成提供一套实用且高效的解决方... 目录Word文档图表自动化:为什么选择C#?从零开始:C#实现Word文档图表的基本步骤深度优化:C

Python + Streamlit项目部署方案超详细教程(非Docker版)

《Python+Streamlit项目部署方案超详细教程(非Docker版)》Streamlit是一款强大的Python框架,专为机器学习及数据可视化打造,:本文主要介绍Python+St... 目录一、针对 Alibaba Cloud linux/Centos 系统的完整部署方案1. 服务器基础配置(阿里

SpringSecurity中的跨域问题处理方案

《SpringSecurity中的跨域问题处理方案》本文介绍了跨域资源共享(CORS)技术在JavaEE开发中的应用,详细讲解了CORS的工作原理,包括简单请求和非简单请求的处理方式,本文结合实例代码... 目录1.什么是CORS2.简单请求3.非简单请求4.Spring跨域解决方案4.1.@CrossOr

使用MyBatis TypeHandler实现数据加密与解密的具体方案

《使用MyBatisTypeHandler实现数据加密与解密的具体方案》在我们日常的开发工作中,经常会遇到一些敏感数据需要存储,比如用户的手机号、身份证号、银行卡号等,为了保障数据安全,我们通常会对... 目录1. 核心概念:什么是 TypeHandler?2. 实战场景3. 代码实现步骤步骤 1:定义 E

Python实现繁体转简体功能的三种方案

《Python实现繁体转简体功能的三种方案》在中文信息处理中,繁体字与简体字的转换是一个常见需求,无论是处理港澳台地区的文本数据,还是开发面向不同中文用户群体的应用,繁简转换都是不可或缺的功能,本文将... 目录前言为什么需要繁简转换?python实现方案方案一:使用opencc库方案二:使用zhconv库

MyBatis Plus中执行原生SQL语句方法常见方案

《MyBatisPlus中执行原生SQL语句方法常见方案》MyBatisPlus提供了多种执行原生SQL语句的方法,包括使用SqlRunner工具类、@Select注解和XML映射文件,每种方法都有... 目录 如何使用这些方法1. 使用 SqlRunner 工具类2. 使用 @Select 注解3. 使用

SpringBoot基于注解实现数据库字段回填的完整方案

《SpringBoot基于注解实现数据库字段回填的完整方案》这篇文章主要为大家详细介绍了SpringBoot如何基于注解实现数据库字段回填的相关方法,文中的示例代码讲解详细,感兴趣的小伙伴可以了解... 目录数据库表pom.XMLRelationFieldRelationFieldMapping基础的一些代

前端缓存策略的自解方案全解析

《前端缓存策略的自解方案全解析》缓存从来都是前端的一个痛点,很多前端搞不清楚缓存到底是何物,:本文主要介绍前端缓存的自解方案,文中通过代码介绍的非常详细,需要的朋友可以参考下... 目录一、为什么“清缓存”成了技术圈的梗二、先给缓存“把个脉”:浏览器到底缓存了谁?三、设计思路:把“发版”做成“自愈”四、代码

解决docker目录内存不足扩容处理方案

《解决docker目录内存不足扩容处理方案》文章介绍了Docker存储目录迁移方法:因系统盘空间不足,需将Docker数据迁移到更大磁盘(如/home/docker),通过修改daemon.json配... 目录1、查看服务器所有磁盘的使用情况2、查看docker镜像和容器存储目录的空间大小3、停止dock

Spring Gateway动态路由实现方案

《SpringGateway动态路由实现方案》本文主要介绍了SpringGateway动态路由实现方案,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随... 目录前沿何为路由RouteDefinitionRouteLocator工作流程动态路由实现尾巴前沿S