当前位置: 主页 > 环境部署 > 负载均衡 >

淘宝tengine一致性hash功能测试(2)

时间:2013-05-04 20:29来源:www.shencan.net 作者:shencan 点击:
关于一致性hash的配置 有以下3种情况(来至官网) 1 consistent_hash $remote_addr :可以根据客户端ip映射 1 consistent_hash $request_uri : 根据客户端请求的uri映射 1 co
欢迎大家分享自己的文档,请点击查阅:分享方法,Linux系统运维
如果你喜欢这文章,可以点击文章结尾处百度分享,分享到你的各种社区收藏,或推荐给朋友……


关于一致性hash的配置 有以下3种情况(来至官网)

1
consistent_hash $remote_addr

:可以根据客户端ip映射

1
consistent_hash $request_uri

: 根据客户端请求的uri映射

1
consistent_hash $args

:根据客户端携带的参数进行映射

因为我用到了http_upstream_check_module 模块所有下面还有一段check的配置 (这样这个功能前面的文章已经测试过了)

配置完后 我们来验证一致性hash的功能

关于一致性hash的东西大家知道吧  不知道的我简单说下吧  如果你不知道  那就没办法测试验证这个功能 是不是有用

一致性hash 就是 假设后端5台设备  突然down了 一台  只有以前hash到这台down的设备上的请求 才会被重新hash计算到其他设备上 剩下的4台的原来hash 不会变 . 这样可以最大限度的保证后端设备的命中率 .如果哪天这台设备好了  同样以前 滩给其他4台的请求  会重新打回这台设备(最后所有的hash 跟服务没down前的hash一模一样)

开始测试吧 (因为设备环境问题 我只挑选了1个URL就行测试)

如果有环境 可以这样测试 #下面只是简单测试  其实还有很多方法  比如调换后端设备配置顺序   还有新增一个后端 对其他设备原本的hash 是否有影响等等.

准备100个URL  3台后端设备   绑定tengine 来抓  然后分别看下后端的访问 日志

然后注释一台设备  继续绑定 tengine 来抓  然后分别对比剩下的2台的日志(对比第一次的) 看 是不是 第一次的日志 都在第二次的日志中 (第二次的内容 一段包含第一次的所有内容)

最后把注释取消  继续绑定tengine 来抓  最后对比 这3次的日志 (最后一次的日志  应该跟第一次一模一样)

第一次测试(绑定自己)

转载请注明linux系统运维
http://www.linuxyw.com/linux/fuzaijunheng/20130504/153.html

------分隔线----------------------------
发表评论
请自觉遵守互联网相关的政策法规,严禁发布色情、暴力、反动的言论。
评价:
验证码: 点击我更换图片