Dynomite受Dynamo白皮书的启发,是一种用于不同存储引擎和协议的轻量级的分布式的Dynamo层。 目前包括Redis和Memcached。 Dynomite支持多数据中心复制,旨在实现高可用性。

Dynomite的最终目标是能够在提供不同功能的多种存储引擎上实现高可用性和跨数据中心复制。 其部署是高效的,不复杂(很少的移动部件),并且性能高。

Workflow

Dynamite的稳定版本是主分支。 https://github.com/Netflix/dynomite/tree/master

对于问题或贡献,请考虑阅读https://github.com/Netflix/dynomite/blob/dev/CONTRIBUTING.md

Build

从源代码构建Dynomite并启用调试日志,禁用assertions

$ git clone git@github.com:Netflix/dynomite.git
$ cd dynomite
$ autoreconf -fvi
$ ./configure --enable-debug=yes
$ make
$ src/dynomite -h
调试模式构建Dynomite:
$ git clone git@github.com:Netflix/dynomite.git
$ cd dynomite
$ autoreconf -fvi
$ CFLAGS="-ggdb3 -O0" ./configure --enable-debug=full
$ make
$ sudo make install

Help

Usage: dynomite [-?hVdDt] [-v verbosity level] [-o output file]
[-c conf file] [-s stats port] [-a stats addr]
[-i stats interval] [-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)

Configuration

可以通过在进程启动时由-c或--conf-file命令行参数指定的YAML文件配置Dynomite。

  • env: 指定节点的环境变量。目前支持aws和网络(用于物理数据中心)。
  • datacenter: 数据中心的名称。请参考 architecture document.
  • rack: rack的名称。请参考 architecture document.
  • dyn_listen: dynomite节点用于进行内部通信和gossip的端口。
  • enable_gossip: 启用gossip而不是静态tokens(默认值:false)。gossip是实验性的。
  • gos_interval: 在gossip round结束时的睡眠时间(以毫秒为单位)。
  • tokens: 节点拥有的令牌。目前,我们不支持vnode,所以现在只能使用一个令牌。
  • dyn_seed_provider: A seed provider implementation to provide a list of seed nodes.
  • dyn_seeds: seed节点列表,格式如下:address:port:rack:dc:tokens(目前不支持vnode的节点)
  • listen: 该服务器池的监听地址和端口(名称:port或ip:port)
  • timeout: 我们等待与服务器建立连接或从服务器接收响应的以msec为单位的超时值。默认情况下,我们无限期地等待。
  • preconnect: 一个布尔值,用于控制dynomite是否应在进程启动时预先连接到此池中的所有服务器。默认为false。
  • data_store: 一个整数值,用于控制服务器池是否使用redis(0)或memcached(1)或其他协议。默认为redis(0)。
  • auto_eject_hosts: 一个布尔值,用于控制在连续失败server_failure_limit次时是否应暂时弹出服务器。默认为false。 See liveness recommendations for information.
  • server_retry_timeout: The timeout value in msec to wait for before retrying on a temporarily ejected server, when auto_eject_host is set to true. Defaults to 30000 msec.
  • server_failure_limit: 服务器上连续发生故障的次数,当auto_eject_host设置为true时,达到该次数会导致临时弹出。默认为2。
  • servers: 服务器池的本地服务地址,端口和权重的列表(名称:port:weight或ip:port:weight)。目前只有一个。
  • secure_server_option: 加密通信。必须是 'none', 'rack', 'datacenter', or 'all'.
  • stats_listen: REST端点的地址和端口号以及访问统计信息。
  • stats_interval: 以msec为单位设置统计间隔(默认值:30000毫秒)。
  • mbuf_size: mbuf块的大小(以字节为单位)(默认值:16384字节)。
  • max_msgs: 要分配的最大消息数(默认值:200000)。

Dynomite 安装配置的更多相关文章

  1. Hive安装配置指北(含Hive Metastore详解)

    个人主页: http://www.linbingdong.com 本文介绍Hive安装配置的整个过程,包括MySQL.Hive及Metastore的安装配置,并分析了Metastore三种配置方式的区 ...

  2. Hive on Spark安装配置详解(都是坑啊)

    个人主页:http://www.linbingdong.com 简书地址:http://www.jianshu.com/p/a7f75b868568 简介 本文主要记录如何安装配置Hive on Sp ...

  3. ADFS3.0与SharePoint2013安装配置(原创)

    现在越来越多的企业使用ADFS作为单点登录,我希望今天的内容能帮助大家了解如何配置ADFS和SharePoint 2013.安装配置SharePoint2013这块就不做具体描述了,今天主要讲一下怎么 ...

  4. Hadoop的学习--安装配置与使用

    安装配置 系统:Ubuntu14.04 java:1.7.0_75 相关资料 官网 下载地址 官网文档 安装 我们需要关闭掉防火墙,命令如下: sudo ufw disable 下载2.6.5的版本, ...

  5. redis的安装配置

    主要讲下redis的安装配置,以及以服务的方式启动redis 1.下载最新版本的redis-3.0.7  到http://redis.io/download中下载最新版的redis-3.0.7 下载后 ...

  6. Windows环境下的NodeJS+NPM+Bower安装配置

    npm作为一个NodeJS的模块管理,之前我由于没有系统地看资料所以导致安装配置模块的时候走了一大段弯路,所以现在很有必要列出来记录下.我们要先配置npm的全局模块的存放路径以及cache的路径,例如 ...

  7. ubuntu kylin 14.04安装配置MongoDB v2.6.1(转)

    1.获取最新版本 https://fastdl.mongodb.org/linux/mongodb-linux-x86_64-2.6.1.tgz 2.解压并进入bin目录 tar zxvf mongo ...

  8. Django基础之安装配置

    安装配置 一 MVC和MTV模式 著名的MVC模式:所谓MVC就是把web应用分为模型(M),控制器(C),视图(V)三层:他们之间以一种插件似的,松耦合的方式连接在一起. 模型负责业务对象与数据库的 ...

  9. 【转】Windows平台下的Subversion安装配置新手指南

    原文地址:http://developer.51cto.com/art/201005/199628.htm 本文介绍Subversion安装配置快速指南,首先讲Subversion的安装和配置,Uni ...

随机推荐

  1. ios之mknetworkkit笔记

    asi没法用了,蛋疼了,在af和mk之间纠结,感觉af不适合我的口味,解析和网络耦合相对似乎重了点 mk似乎默认的不支持下载的断点续传,这里参考网上的代码处理了下,0修改mk的库,下面是实现的代码 / ...

  2. bzoj 3413: 匹配

    Description Input 第一行包含一个整数n(≤100000). 第二行是长度为n的由0到9组成的字符串. 第三行是一个整数m. 接下来m≤5·10^4行,第i行是一个由0到9组成的字符串 ...

  3. 关于String.valueOf()和.toString的问题

    以下是String.valueOf()的源代码 public static String valueOf(Object obj) {     return (obj == null) ? " ...

  4. java并发编程 Executor,Executors,ExecutorService,CompletionService,Future,C

    使用CompletionService获取多线程返回值 CompletionService和ExecutorCompletionService详解 Java并发编程系列之十五:Executor框架

  5. Python 标准库 ConfigParser 模块 的使用

    Python 标准库 ConfigParser 模块 的使用 demo #!/usr/bin/env python # coding=utf-8 import ConfigParser import ...

  6. java.lang.ClassNotFoundException: org.I0Itec.zkclient.exception.ZkNoNodeException 异常 如何处理

    严重: Context initialization failed java.lang.NoClassDefFoundError: org/I0Itec/zkclient/exception/ZkNo ...

  7. 【Unix网络编程】chapter2传输层:TCP,UDP和SCTP

    2.1 概述 TCP:复杂,可靠的字节流协议 UDP:简单的,不可靠的数据包协议 SCTP:流控制传输协议 2.2 总图 2.3 用户数据报协议2.4 传输控制协议2.5 流控制传输协议(SCTP)2 ...

  8. 面向服务的SOA架构与服务总线ESB

    之前的软件的开发主要是面向对象的编程架构 方法---对象---模块---组件---服务,感觉现在的开发的主流的软件架构的设计思想都是对其进行重用,只不过范围越来越大,有一个系统之间进行通信到多个系统之 ...

  9. 属性,类方法@classmethod

    # 属性的初识# class Person:## def __init__(self,name,hight,weight):# self.name = name# self.__hight = hig ...

  10. Python之函数——进阶篇

    嵌套函数 ---函数内部可以再次定义函数 ---函数若想执行,必须被调用 注意,下例中,执行结果为什么? age = 19 def func1(): print(age) def func2(): p ...