Dynamo ホワイトペーパーからインスピレーションを得たDynomite は、さまざまなストレージ エンジンとプロトコルに対応した薄い分散型ダイナモ レイヤーです。現在、これらには Redis と Memcached が含まれます。 Dynomite は複数のデータセンターのレプリケーションをサポートし、高可用性を実現するように設計されています。
Dynomite の最終目標は、本来はその機能を提供しないストレージ エンジンに高可用性とデータセンター間のレプリケーションを実装できるようにすることです。実装は効率的で、複雑ではなく (可動部分がほとんどない)、パフォーマンスが高くなります。
v0.5.9、v0.5.8 などの番号が付けられたすべてのブランチは安定しており、プレリリースとしてマークされていない限り、本番環境で安全に使用できます。 dev ブランチは開発が不安定なブランチです。時間の経過とともに、master ブランチは遅れをとり、メンテナンスされなくなりました。最終的には削除しますが、再作成する場合もあれば、再作成しない場合もあります。
質問や貢献については、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 は YAML 構成ファイルの構文エラーをテストするために使用できるコマンドライン引数 -t または --test-conf を提供します。
Apache License、バージョン 2.0 に基づいてライセンスされています: http://www.apache.org/licenses/LICENSE-2.0