学员试听 >
机构入驻 >
试听课程申请
看不清,请点击刷新
立即申请
机构入驻申请
看不清,请点击刷新
立即申请
试听课程申请
看不清,请点击刷新
立即申请
机构入驻申请
看不清,请点击刷新
立即申请
课程分类
寻客吧 > 教育新闻 > 电脑培训 >  稳定分流增加:MurmurHash算法

稳定分流增加:MurmurHash算法

时间:2025-06-12 16:12:25  编辑:洛阳达内  来源:寻客吧  浏览:164次   【】【】【
  稳定分流增加:MurmurHash算法
  我们采用的MurmurHash算法,参与该算法的Hash因子包括设备id、策略id和流量层id。
  MurmurHash是行业内常用的ABTest算法,可应用于Redis、Memcached、Cassandra、HBase等多个开源项目。MurmurHash有两个明显的特点:
  快,比安全散列算法快几十倍。
  变化足够激烈。对于类似的字符串,如abc和abd,可以均匀分布在哈希环上,主要用于实现正交和互斥实验的分流。
  下面简单解释一下正交和互斥:
  ·互斥。指两个实验流量独立,用户只能进入其中一个实验。一般来说,对于同量层的实验,如图形混排列表实验和纯图形列表实验,同一用户只能同时看到一个实验,所以互斥。

  ·正交。正交是指用户进入所有实验之间没有必然关系。例如,进入实验1中a版本的用户在进行其他实验时也是均匀分布的,而不是集中在某个区间。

稳定分流增加:MurmurHash算法

  实验分流在流量层:
  实验流量层中的hash因子包括设备id和流量层id。当请求流经一个流量层时,只会命中一个实验,即同一用户的同一请求较多只会命中一个实验。先对hash因子进行hash操作,采用murmurhash2算法,可以增加hash因子的微小变化,但结果的值变化很大,然后对100求余+1,较后得到1-100之间的值。
  分流实验内版本:
  实验hash因子包括设备id、策略id和流量层id。用同样的策略来匹配版本。
上一篇:UI设计概念