在这个reddit博客文章中,作者讨论了缓存密钥的MD5ing,以及它们发现很难扩展的原因。
有人能告诉我为什么要md5缓存密钥吗?,我不明白原因,尽管他们解释为
“几年前,我们决定md5所有的缓存密钥。我们这样做是因为当memcached (也就是memcachedb所基于的)时只能获取一定长度的键。事实上,它所基于的版本仍然有这个局限性。MD5ing键是解决这个问题的好办法,所以我们认为。“
发布于 2010-03-05 08:26:05
当时的密钥大小可能比现在更短(目前为250个字节,而250个字节是一个相当大的密钥名称),这意味着可能不可能有一个合理的密钥命名约定,因此他们只使用了合理的命名约定和md5'd。
发布于 2010-03-05 08:33:43
我们这样做是因为当memcached (它是memcachedb的基础)时只能获取一定长度的键。
我想,由于有些键的长度大于服务器允许的最大长度,所以他们决定创建一个密钥的md5来存储它。
但是,我不确定这与它们不能轻松添加新服务器这一事实之间有什么关系(因为memcached还使用散列甚至重新分区。也许梅卡切特不知道)
https://stackoverflow.com/questions/2385240
复制相似问题