《最新图片服务器的hash架构剖析PPT课件》由会员分享,可在线阅读,更多相关《最新图片服务器的hash架构剖析PPT课件(14页珍藏版)》请在金锄头文库上搜索。
1、图片服务器的图片服务器的hash架构剖析架构剖析什么是url hash架构url hash架构对url进行一次hash算法,然后通过hash结果找到对应的服务器。因为针对单一个url的hash结果是一样的,所以理论上这个url会被永久分配到固定的一台服务器上。另外因为经过了hash算法,所以分配url就很均匀,同时访问量也可以达到均衡。基于nginx的自动hash架构说明这是一种新的缓存架构,由nginx作为最前端,代理到缓存机器。nginx后面是缓存组,由nginx经过url hash后将请求分到缓存机器。这个架构方便纯squid缓存升级,可以在squid的机器上加装nginx。nginx有
2、缓存的功能,可以将一些访问量特大的链接直接缓存在nginx上,就不用经过多一次代理的请求。比如favicon.ico和网站的logo。基于nginx的自动hash架构优缺点优点1)高性能2)使用方便,后台是什么样关系不大3)有很高的可用性4)缓存架构,分流方便5)可直接在nginx代理缓存部分链接缺点url分流可控性弱,增减缓存机器都会引起缓存重新分配,意味着缓存全部失效。基于nginx的手动hash架构说明这个架构图和自动hash的架构是一样的,唯一有差别的是hash算法的变化,自动hash是用nginx upstream hash模块自带的hash算法来实现分流,这个手动架构是自己设计一个
3、算法来实现。算法设计思路是从url中取一个字符来作分流依据,比如定义链接的倒数第10个字符来分流,同样可以分配得很均匀。手动架构可以避免自动架构中增减机器带来的缓存失效问题,另外可以精确知道一个链接到底存在哪台缓存上。基于nginx的手动hash架构优缺点优点1)基本可以继承自动架构的优点2)避免增减机器的问题3)精确知道链接存储在哪台缓存上缺点配置较复杂,要分配均匀配置不易。采用Hash架构对bbs架构优化先前讲的bbs架构采用的是lvs+squid作为前端,这样的话squidclient更新缓存时需要更新所有的squid,这个效率很低下,使用hash架构就可以使squidclient每次只需要清理一台squid,效率大为提升。推荐的是使用nginx手动hash架构,它可以精确知道链接会存在哪台机器上,这样就可以配置精确的备份机器。结束语结束语谢谢大家聆听!谢谢大家聆听!14