<?xml version="1.0" encoding="utf-8" standalone="yes"?><rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom"><channel><title>一致性哈希 on Code Log</title><link>https://codelog.me/zh/tags/%E4%B8%80%E8%87%B4%E6%80%A7%E5%93%88%E5%B8%8C/</link><description>Recent content in 一致性哈希 on Code Log</description><generator>Hugo</generator><language>zh-CN</language><lastBuildDate>Mon, 12 Oct 2015 23:38:54 +0800</lastBuildDate><atom:link href="https://codelog.me/zh/tags/%E4%B8%80%E8%87%B4%E6%80%A7%E5%93%88%E5%B8%8C/index.xml" rel="self" type="application/rss+xml"/><item><title>一致性哈希算法之Ketama算法</title><link>https://codelog.me/zh/posts/consistent-hash-ketama/</link><pubDate>Mon, 12 Oct 2015 23:38:54 +0800</pubDate><guid>https://codelog.me/zh/posts/consistent-hash-ketama/</guid><description>&lt;p&gt;有关一致性哈希算法原理及其应用讨论的文章已经足够多，如果对一致性哈希算法一点概念都没有的同学可以先参考这篇文章：&lt;a href="http://blog.codinglabs.org/articles/consistent-hashing.html" title="一致性哈希"&gt;一致性哈希&lt;/a&gt;。&lt;/p&gt;
&lt;p&gt;相对来说，一致性哈希算法的原理还是比较容易理解的，但在日常开发过程中发现虽然大部分同事对一致性哈希算法的原理有个大概的认识，然而能知道该算法具体实现的人却寥寥无几。当然一致性哈希算法的实现不同语言有不同的实现方式，其中较为有名的一种实现叫Ketama算法，该算法最初是由&lt;a href="http://www.last.fm/" title="last.fm"&gt;Last.fm&lt;/a&gt;的程序员实现的并得到了广泛的应用，一些开源框架譬如spymemcached，twemproxy等都内置了该算法的实现。&lt;/p&gt;
&lt;p&gt;本文主要从spymemcached的源码出发，分析Ketama算法的具体实现。&lt;/p&gt;</description></item></channel></rss>