主题:【半原创】Flickr 网站架构研究(1) -- 西电鲁丁
共:💬69 🌺366
每个数据中心平时的负载只是其可最大负载的50%,这样在"Pair"中的一个数据中心因为停电,地震等灾难或必要维护而停止服务时,另一个数据中心仍然能够处理全部的访问。
这部分看起来有一些浪费?现在是否可以使用云来替代?还是云在某些方面满足不了flickr的要求?
如何避免”多次缓存“,即我们希望同一份文件只缓存一次,而不是在多个Squid中保留多份COPY,以最大限度的利用缓存空间。解决这个问题的办法是在 Squid服务器集群之前放置Layer 7的Load Balancer。相对于传统的基于IP地址加PORT端口的Layer 4的Load Balancer,Layer 7的Load Balancer可以根据规则,对应用层的信息,如HTTP的Header,URL,Cookie Name等进行哈希或CRC计算,从而确保同一URL的请求总是指向后台集群中的同一台Squid服务器。
原来flickr是用这样的策略做负载均衡的,有意思,这样确实能保障squid缓存的内容不同,后面的图表也能看到缓存命中率不错,但是这样做从另一个角度看人为增加了群集节点的差异性,在failover和管理方面会比较麻烦,例如,如果负责A内容的squid节点当掉,在添加进新的节点或者转移请求到其他节点之前,A内容缓存命中率为0,加入新节点或者转移到其他节点之后,缓存命中率也有一个上升的过程,也就是说,有降低整体性能的可能。或者说,在flickr的负载平衡策略里面还有什么花样?让squid节点缓存内容适度形成交集?如果是,那么交集的决定策略又是什么?
做个大站,费神的事情真不少。。。
- 相关回复 上下关系8
压缩 2 层
🙂能让门外汉看懂的技术文章,了不起呀 然后203 字0 2009-12-31 05:07:11
🙂谢谢鼓励。 西电鲁丁 字0 2009-12-31 18:30:12
🙂看一遍不够 1 邓侃 字191 2009-12-22 02:11:43
🙂先送花再学习
🙂【讨论】好问题,送花并试着回答一下 5 西电鲁丁 字1637 2009-12-21 22:13:13
🙂Squid是用BerkeleyDB 6 yueyu 字708 2009-12-21 23:28:18
🙂谢谢yueyu兄参与讨论,花谢 2 西电鲁丁 字350 2009-12-22 07:30:22
🙂这个,要看用途啊 2 yueyu 字576 2009-12-22 20:11:40