... | @@ -3,7 +3,7 @@ |
... | @@ -3,7 +3,7 @@ |
|
## 一、前言
|
|
## 一、前言
|
|
FastDHT 是一个高性能的分布式哈希系统 (DHT) ,使用 Berkeley DB 做数据存储,使用 libevent 做网络IO处理,提供 Java 版的客户端接口包。适合用来存储用户在线、会话等小数据量信息。
|
|
FastDHT 是一个高性能的分布式哈希系统 (DHT) ,使用 Berkeley DB 做数据存储,使用 libevent 做网络IO处理,提供 Java 版的客户端接口包。适合用来存储用户在线、会话等小数据量信息。
|
|
FastDHT存储Key Value Pair支持两种存储方式:缓存方式的MPOOL和持久存储方式的BDB。Key包括三部分:Namespace, ObjectID和Key。 Key可设置过期时间,自动清除过期数据.Server端划分group,同group数据互相备份,并且可自动压缩binlog.服务端可使用单线程,多线程模式。
|
|
FastDHT存储Key Value Pair支持两种存储方式:缓存方式的MPOOL和持久存储方式的BDB。Key包括三部分:Namespace, ObjectID和Key。 Key可设置过期时间,自动清除过期数据.Server端划分group,同group数据互相备份,并且可自动压缩binlog.服务端可使用单线程,多线程模式。
|
|
FastDHT一些特性:
|
|
FastDHT一些特性:
|
|
虚拟farm,便于扩容;
|
|
虚拟farm,便于扩容;
|
|
分布式算法client端实现,不需要中心服务器;
|
|
分布式算法client端实现,不需要中心服务器;
|
|
二进制通信协议,支持Proxy;
|
|
二进制通信协议,支持Proxy;
|
... | @@ -18,6 +18,7 @@ FastDHT由客户端决定应该选择哪台服务器,为例避免查表,应 |
... | @@ -18,6 +18,7 @@ FastDHT由客户端决定应该选择哪台服务器,为例避免查表,应 |
|
4. server_index = new_hash_code % 组内server_count
|
|
4. server_index = new_hash_code % 组内server_count
|
|
计算server_index和group_index时使用了不同的hash code,是因为如果group_count和组内server_count相等,例如都等于2,那么对于一个组来说,任何key值都将选中其中一台固定的服务器(server_index == group_index)。
|
|
计算server_index和group_index时使用了不同的hash code,是因为如果group_count和组内server_count相等,例如都等于2,那么对于一个组来说,任何key值都将选中其中一台固定的服务器(server_index == group_index)。
|
|
需要的依赖库文件: libevent-1.4.so.2 , libdb-4.7.so。
|
|
需要的依赖库文件: libevent-1.4.so.2 , libdb-4.7.so。
|
|
|
|
|
|
## 二、安装
|
|
## 二、安装
|
|
### 1、基本环境:
|
|
### 1、基本环境:
|
|
CentOS7、libfastcommon、Berkeley、FastDHT
|
|
CentOS7、libfastcommon、Berkeley、FastDHT
|
... | | ... | |