07 2012 档案

32bit g++编译64位整数作为key的__gnu_cxx::hash_map的编译错误问题
摘要:类似这样一段代码:__gnu_cxx::hash_map<uint64_t, Obj> objs;64bits的整数作为key的__gnu_cxx::hash_map, 原来一直在64bits的编译器下编译,一直好好的。有一次放到32bits的编译器下,产生一大堆乱七八糟的错误(模板编译错误提示太坑爹了)。问题出现在template<class _Key> struct hash{} 里面。struct __gnu_cxx::hash{}偏特化了几种整数版本,包括char, short, int, long,以及上面4种unsigned版本,分析unsigned lon 阅读全文

posted @ 2012-07-21 18:14 daemonh 阅读(252) 评论(0) 推荐(0)

从 Memcached 分布式应用看一致性哈希散列函数的选择 .
摘要:一致性哈希算法来源于 P2P 网络的路由算法,目前主流的 P2P 软件就是利用我们所熟知的 DHT (Distributed Hash Table,分布式哈希表) 来定位整个分布式网络的信息,另外此算法在目前火热的云计算领域也将占有极其重要的位置。可以说散列函数在当代计算机和网络系统中所起的重要作用大家应该都有目共睹了,特别是在目前这个分布式应用爆炸的时代,这个方面的知识只会越来越引起人们的重视,本文重在从 Memcached 这个流行的分布式应用的场景中来对一致性哈希散列的几个主流算法做一些比较和分析。[背景信息] 对于 Memcached 来说,本身是集中式的缓存系统,要搞多节点分布,只能 阅读全文

posted @ 2012-07-09 15:37 daemonh 阅读(193) 评论(0) 推荐(0)

导航