【运维防护】RailGun加速器简单介绍以及部署方案

版权声明:本文为博主原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。
本文链接: https://blog.csdn.net/weixin_45470503/article/details/102582314

Railgun 使用长链接技术维持您的源服务器与 Cloudflare 网络之间的连接(不需要重复发起握手请求)
Railgun 利用类似于压缩高质量视频时使用的技术,将以前不可缓存的 Web 对象压缩高达 99.6%。这可以带来平均 200% 的额外性能提高。(不需要PHP,MYSQL重复运算)

通过长链接的维持握手及服务器端的压缩缓存技术,不单单能提供访问速度,还能缓解CC攻击带来的频繁握手及频繁请求动态资源造成的PHP或者MYSQL的性能损耗

Railgun 使用一系列技术来加速和缓存这些以前不可缓存的网页,这样即使必须查询原始服务器,也可以快速传送网页。这甚至适用于不断快速变化的网页(如新闻网站)或个性化内容。

Railgun 包含两个软件组件:Listener 和 Sender。
Railgun Listener 安装在源服务器上。它是一款小型软件,使用加密的二进制 Railgun 协议为来自 Cloudflare 的请求提供服务,因为只与CF的数据中心通讯,因此您无须担心隐私泄露问题。
Railgun Sender 安装在全世界所有 Cloudflare 数据中心,并与 Railgun Listener 保存连接。
当 HTTP 请求进入必须由源服务器原始服务器 处理时,Cloudflare 确定它是否发往启用 Railgun 的网站。如果不是,则使用标准 HTTP,但如果是,则将 HTTP 请求路由到 Railgun 发送器进行处理。 Railgun Sender 会将请求转为压缩的二进制数据块,传输给相应的 Railgun Listener。Railgun Listener 会处理该请求并向原始服务器执行 HTTP 请求。从原始服务器的角度来看,此 HTTP 连接好像直接来自 Cloudflare,但由于它来自托管合作伙伴的基础架构内部,该请求不会遭受相关延迟。 Railgun 使用基于比较页面版本的新缓存机制来确定需要通过 Internet 传输给 Railgun Sender 的内容。使用这种机制, Cloudflare 通常能够实现 99.6% 压缩率(例如,100k 网页压缩至 400 字节)和超过 700% 的加速。事实上,压缩数据通常很小,使用二进制 Railgun 协议,即可将整个响应纳入单个 TCP 数据包。 通过 TLS 保护 Railgun 连接,以便无法窃听通过它们发送的请求。此连接通过凭证确保安全,因此不可能受到中间人攻击。Cloudflare 和原始服务器之间的 TCP 连接保持活动状态,以便可以将其重用于后续请求,从而消除 TCP 连接的缓慢启动。 Railgun 请求被多路复用到同一连接上,并且可以异步处理。这意味着 Railgun 能够在不阻塞的情况下处理多个并发请求,并最大限度地利用 TCP 连接。
以上是官方的说明,有点复杂,简单说就是如下:
1、Railgun 是 Cloudflare 专门为 Business($200/月)和 Enterprise($5000/月) 企业级客户提供的终极加速方案,RAILGUN软件部署的服务器将与CF的CDN服务器之间通过非HTTP协议(CF railgun专用加密协议)建立长链接,这样可以减少每次访客请求数据重复TCP握手造成的时间和资源浪费;
2、Railgun会自动判断动态页面所包含的大量相同的 HTML 信息,在用户请求一个新的动态页面时,服务器将只发送那些变化了的内容。相当于多次的 Gzip 压缩,因此可以明显的节省传输流量,提升传输速度;
3、官方宣称,使用 Railgun 能够实现 99.6% 的压缩率,并实现两倍的速度,实际测试确实如此;
4、因为使用长链接维持握手状态及服务器端高缓存压缩提升命中率因此对缓解CC类攻击有很好的效果;
5、使用方法 :①您自备服务器并在源站所在的服务器上安装RAILGUN(可以实现动态内容缓存+长链接) ②使用我们提供的公共RAILGUN(可以实现长链接,无缓存功能?[待验证])。
Railgun是实现对CF不缓存(无法HIT命中缓存)的内容的缓存压缩及传输,安装后就可以实现默认缓存走CF缓存,默认无法缓存的走RAILGUN,如果提示NEW WAN那就是未生效,要有以下标志才算生效
在这里插入图片描述

猜你喜欢

转载自blog.csdn.net/weixin_45470503/article/details/102582314
今日推荐