- 1、本文档共41页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
Hash散列算法 int hash(char *key_str, unsigned long MAX_SS_NUM) { register unsigned int h; register unsigned char *p; for(h=0, p = (unsigned char *)key_str; *p ; p++) { h = 31 * h + *p; } return (h % MAX_SS_NUM); } 一个较经典的Hash算法。 Hash散列算法 unsigned htable_hash(const char *s, unsigned size) { unsigned long h = 0; unsigned long g; char *md5s = MDString(s); while (*md5s) { h = (h 4) + *md5s++; if ((g = (h 0xf0000000)) != 0) { h ^= (g 24); h ^= g; } } return (h % size); } 一个使用了MD5的自定义Hash算法。 最少链接算法 实现原理: 将请求分配至当前链接数最少的服务器。 最少链接算法 优点: 实现起来比较简洁,在大多数情况下非常有效。 缺点: 当各个服务器的处理能力不同时,该算法并不理想。 最少链接算法 适用: 需要长时处理的请求服务,如FTP等应用。 最快链接算法 实现原理: 均衡器记录自身到每一个集群节点的网络响应时间,并将下一个到达的连接请求分配给响应时间最短的节点。 适用: 基于拓扑结构重定向的高级均衡策略。 思考 思考1: 目前我们用到的负载均衡技术有哪些,都用在什么地方? 思考2: 目前我们的memcached集群用到的负载均衡技术? 负载均衡策略 负载均衡算法 负载均衡策略 基于DNS的负载均衡。 基于反向代理的负载均衡。 基于特定服务器软件的负载均衡。 基于NAT的负载均衡。 基于CDN的负载均衡。 基于DNS的负载均衡 实现原理: 一个域名绑定多个IP,通过DNS服务中的随机域名解析来实现 。 基于DNS的负载均衡 优点: 实现简单、实施容易、成本低、适用于大多数TCP/IP应用 。 基于DNS的负载均衡 问题: 一旦某个服务器出现故障,即使修改了DNS设置,还是要等待足够的时间(刷新时间)才能发挥作用,在此期间保存了故障服务器地址的客户计算机将不能正常访问服务器。 缺陷: DNS负载均衡无法得知服务器之间的差异,它不能做到为性能较好的服务器多分配请求,也不能了解到服务器的当前状态,甚至会出现客户请求集中在某一台服务器上的偶然情况。 基于反向代理的负载均衡 实现原理: 通过正则映射将请求重定向到内容服务器。 基于反向代理的负载均衡 优点: 自带高速缓冲,可减轻内容服务器压力,提速网络访问效率 。 基于反向代理的负载均衡 问题: 针对每一次代理,代理服务器就必须打开两个连接,一个对外,一个对内,因此在并发连接请求数量非常大的时候,代理服务器的负载也就非常大了,在最后代理服务器本身可能会成为服务的瓶颈。 缺陷: 反向代理是处于OSI参考模型第七层应用的,所以就必须为每一种应用服务专门开发一个反向代理服务器,这样就限制了反向代理负载均衡技术的应用范围,现在一般都用于对web服务器的负载均衡。 基于特定服务器软件的负载均衡 实现原理: 利用网络协议的重定向功能来实现 。 基于特定服务器软件的负载均衡 优点: 服务可定制,可依据底层服务器的性能及实况进行负载调控。 基于特定服务器软件的负载均衡 问题: 需要改动软件,成本较高。 基于NAT的负载均衡 实现原理: 将一个外部IP地址映射为多个内部IP地址。 基于NAT的负载均衡 优点: 比较完善的负载均衡技术,均衡算法也较灵活,如随机选择、最少连接数及响应时间等来分配负载。 基于NAT的负载均衡 问题: 伸缩能力有限,当服务器结点数目过多时,调度器本身有可能成为系统的新瓶颈 。 基于CDN的负载均衡 实现原理:
文档评论(0)