Dynamo 백서에서 영감을 받은 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
디버그 모드 에서 Dynamite를 빌드하려면:
$ 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는 구문 오류가 있는지 YAML 구성 파일을 테스트하는 데 사용할 수 있는 명령줄 인수 -t 또는 --test-conf를 제공합니다.
Apache 라이센스 버전 2.0에 따라 라이센스가 부여됩니다: http://www.apache.org/licenses/LICENSE-2.0