dynomite
1.0.0
Dynomite受到 Dynamo 白皮书的启发,是一个适用于不同存储引擎和协议的薄型分布式发电机层。目前这些包括 Redis 和 Memcached。 Dynomite 支持多数据中心复制,专为高可用性而设计。
Dynomite 的最终目标是能够在本身不提供该功能的存储引擎上实现高可用性和跨数据中心复制。该实施高效、不复杂(移动部件很少)并且性能很高。
每个编号为 v0.5.9、v0.5.8 等的分支都是稳定且安全的,可以在生产中使用,除非标记为预发布。 dev分支是开发不稳定分支。随着时间的推移,主分支已经落后并且不再被维护。我们最终将删除它,并且可能会也可能不会重新创建它。
如有问题或贡献,请考虑阅读 CONTRIBUTING.md。
要从源代码构建 Dynomite,并启用调试日志并禁用断言:
$ git clone [email protected]:Netflix/dynomite.git
$ cd dynomite
$ autoreconf -fvi
$ ./configure --enable-debug=yes
$ make
$ src/dynomite -h
在调试模式下构建 Dynomite:
$ git clone [email protected]:Netflix/dynomite.git
$ cd dynomite
$ autoreconf -fvi
$ CFLAGS="-ggdb3 -O0" ./configure --enable-debug=full
$ make
$ sudo make install
Usage: dynomite [-?hVdDt] [-v verbosity level] [-o output file]
[-c conf file] [-p pid file]
Options:
-h, --help : this help
-V, --version : show version and exit
-t, --test-conf : test configuration for syntax errors and exit
-g, --gossip : enable gossip (default: disabled)
-d, --daemonize : run as a daemon
-D, --describe-stats : print stats description and exit
-v, --verbosity=N : set logging level (default: 5, min: 0, max: 11)
-o, --output=S : set logging file (default: stderr)
-c, --conf-file=S : set configuration file (default: conf/dynomite.yml)
-p, --pid-file=S : set pid file (default: off)
-x, --admin-operation=N : set size of admin operation (default: 0)
Dynomite 可以通过进程启动时 -c 或 --conf-file 命令行参数指定的 YAML 1.1(YAML 1.1 与 JSON 不兼容)文件进行配置。配置文件解析并理解以下键:
datacenter
意味着数据中心之间的所有通信都是加密的,但数据中心内部的通信则不是加密的。 rack
意味着机架和区域之间的所有通信都已加密,但同一机架内的节点之间的通信未加密。 all
表示所有节点之间的所有通信都是加密的。 none
意味着所有通信都没有加密。例如conf/dynomite.yml中的配置文件
最后,为了更轻松地编写语法正确的配置文件,dynomite 提供了命令行参数 -t 或 --test-conf,可用于测试 YAML 配置文件是否存在任何语法错误。
根据 Apache 许可证 2.0 版获得许可:http://www.apache.org/licenses/LICENSE-2.0