源站压力大网站跑不动?没关系,二级缓存功能来了!

百家 作者:知道创宇 2019-07-12 00:57:15

“不断提升产品能力,让用户有更好的产品体验”一直是知道创宇研发产品的原则之一。近期,我们对缓存功能进行了升级,上线二级缓存功能


CDN,即Content Delivery Network,内容分发网络,所谓CDN缓存就是通过在网络边缘部署边缘服务器,依靠CDN中心平台的负载均衡、内容分发及调度等功能,使用户能就近获取所需的内容,降低网络拥堵,提高访问响应速度和命中率。



传统的CDN缓存机制,或者说目前主要采用的CDN缓存机制通常是单机缓存。随着互联网的快速发展,互联网用户的猛速增加,这种缓存机制很难再有效负载:


1)缓存容量有限,缓存率低。一旦有大缓存网站接入,缓存容量可能远远不足。而单机缓存的机制使得缓存的内容不能共用,又有大量存储空间被浪费,大概就是传说中的“涝的涝死旱的旱死”吧;


2) 源站压力大,访问速度受限,源站成本增加。每天机器miss后都要回源,同一个资源全网上百个节点大量回源。一边是日益增加的用户流量,一边是不断增加的回源次数,这么大的访问流量,哪个服务器顶得住?



打个比方,好比商品买卖。


为了方便各地的消费者买汽水,生产商在各地设置小卖部,一个小卖部卖一种汽水。可乐卖得快,各地的小卖部每天都得去厂家进货,但因为放不下且不能放到隔壁卖雪碧的店里,只能少量并多次进货。最后的结果是消费者可能无法及时喝到可乐,而厂商也面临着巨大的生产压力。



对于这种情况,我们的做法是,在生产商和小卖部中间设置储货仓,小卖部缺货时先从仓库拿货,仓库不够再找厂商。同时扩大部分地方的仓库,本地仓库缺货,也可以就近仓库配货:


1)针对静态资源,在原有节点缓存的基础上增加二级缓存。节点本地缓存未命中则从二级缓存读取缓存,二级缓存未命中再回源,进一步提高缓存率;


2)在部分机房部署数个缓存集群,每个集群能支持大量的缓存。边缘节点则根据联通情况选择合适的二级缓存集群,二级集群之间互为备份,防止单点故障;


3)二级缓存采用可以水平扩展的集群部署,将存储引擎连接成一个集群,可以方便得增加减少存储引擎调容量,替换损坏的磁盘和主机。



这样设置以后,可乐果然卖的更好了...缓存率大幅提升


1)网站支持资源预热,使得用户首次访问即可直接命中缓存,访问速度大大提高,源站压力大大降低;


2)部分用户回源流量大幅度减少,源站压力得到减缓。比如下图某网站,红色线代表总流量,黄色线为缓存流量开启二级缓存后,缓存效果大幅提升,两条线几近趋同,源站带宽从2.5Gbps 降到了1.5Gbps



(开启前)


(开启后,缓存率大大提高)


(开启后,源站带宽大幅减少)


3)部分网站缓存率大幅提高,由原来的85%显著提高至95%;


(图示网站开启二级缓存功能后, cache miss流量陡降)


总的来说,二级缓存功能对于网站,能极大地减轻源站压力降低源站运营成本,提高网站运营效率,而对于用户,那就是飞速的上网体验了!



点击菜单栏“联系我们”

开启二级缓存,让你的网站飞起来!


关注公众号:拾黑(shiheibook)了解更多

[广告]赞助链接:

四季很好,只要有你,文娱排行榜:https://www.yaopaiming.com/
让资讯触达的更精准有趣:https://www.0xu.cn/

公众号 关注网络尖刀微信公众号
随时掌握互联网精彩
赞助链接