twemproxyベースredis分散アプリケーション
従来のテストの結論によれば、1つのredisのインスタンスのメモリ総量は8 G以内(最大20 Gを超えてはならない)に抑えることが望ましいが、実際にはredisに対するメモリの需要が8 Gよりはるかに大きい可能性があるため、redisサーバの性能を低下させないが、redisサーバの容量を効率的に拡張する案が必要である.
twemproxyは適切な選択です.
概要
twemproxy、nutcrakerとも呼ばれます.Twitterオープンソースのredisとmemcacheエージェントサーバです.
特長
•失敗したノードの自動削除をサポート
•HashTagの設定をサポート
•redisへの直接接続数を減らす
•バックエンドの複数のredisインスタンスに自動的にスライス
•単一の問題を回避
•複数のエージェント層を並列に配置することができる.クライアントは使用可能な1つを自動的に選択します
•redis pipelining requestのサポート
•ステータスモニタリングをサポート
•高スループット
配置
参考サイト:
https://github.com/twitter/twemproxy
コアスクリプト:
ヘルプドキュメント:
起動スクリプト:
依存パッケージ
実行中に依存パッケージが存在しないか、バージョンが低すぎる場合があります.主にm 4、autoconf、automake、libtoolがあります.手動インストール手順は次のとおりです.
m 4のインストール
Autoconfのインストール
Automakeのインストール
libtoolのインストール
twemproxyは適切な選択です.
概要
twemproxy、nutcrakerとも呼ばれます.Twitterオープンソースのredisとmemcacheエージェントサーバです.
特長
•失敗したノードの自動削除をサポート
•HashTagの設定をサポート
•redisへの直接接続数を減らす
•バックエンドの複数のredisインスタンスに自動的にスライス
•単一の問題を回避
•複数のエージェント層を並列に配置することができる.クライアントは使用可能な1つを自動的に選択します
•redis pipelining requestのサポート
•ステータスモニタリングをサポート
•高スループット
配置
参考サイト:
https://github.com/twitter/twemproxy
コアスクリプト:
git clone git://github.com/twitter/twemproxy.git
autoreconf -fvi
./configure --prefix=/usr/local --enable-debug=log
make && make install
ヘルプドキュメント:
Usage: nutcracker [-?hVdDt] [-v verbosity level] [-o output file]
[-c conf file] [-s stats port] [-a stats addr]
[-i stats interval] [-p pid file] [-m mbuf size]
Options:
-h, --help : this help
-V, --version : show version and exit
-t, --test-conf : test configuration for syntax errors and exit
-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/nutcracker.yml)
-s, --stats-port=N : set stats monitoring port (default: 22222)
-a, --stats-addr=S : set stats monitoring ip (default: 0.0.0.0)
-i, --stats-interval=N : set stats aggregation interval in msec (default: 30000 msec)
-p, --pid-file=S : set pid file (default: off)
-m, --mbuf-size=N : set size of mbuf chunk in bytes (default: 16384 bytes)
起動スクリプト:
./bin/nutcracker -c /usr/local/twemproxy/conf/nutcracker_test.yml -s 22222 -d -o /usr/local/twemproxy/logs/nutcracker.log
依存パッケージ
実行中に依存パッケージが存在しないか、バージョンが低すぎる場合があります.主にm 4、autoconf、automake、libtoolがあります.手動インストール手順は次のとおりです.
m 4のインストール
wget http://mirrors.kernel.org/gnu/m4/m4-1.4.17.tar.gz
tar -xzvf m4-1.4.17.tar.gz
cd m4-1.4.17
./configure --prefix=/usr/local
make && make install
Autoconfのインストール
wget http://mirrors.kernel.org/gnu/autoconf/autoconf-2.69.tar.gz
tar -xzvf autoconf-2.69.tar.gz
cd autoconf-2.69
./configure --prefix=/usr/local
make && make install
Automakeのインストール
wget http://mirrors.kernel.org/gnu/automake/automake-1.14.tar.gz
tar xzvf automake-1.14.tar.gz
cd automake-1.14
./configure --prefix=/usr/local
make && make install
libtoolのインストール
wget http://mirrors.kernel.org/gnu/libtool/libtool-2.4.tar.gz
tar xzvf libtool-2.4.tar.gz
cd libtool-2.4
./configure --prefix=/usr/local
make && make install