Twemproxy は、Memcached サーバーまたは Redis サーバーによって開かれる接続の数を減らすことができるプロキシ サーバーです。次の記事では、twemproxy を使用して Redis クラスターをデプロイする Laravel プロジェクトに関する関連情報を主に紹介します。必要な方は参照してください。 ##はじめに
twemproxy は Twitter によって開発された redis プロキシ プロキシであり、開発者が twemproxy を通じてこれらの redis サーバーにアクセスする場合、心配する必要はありません。 Redis サーバーは、k-v データをデータセットに読み取るか、k-v データを更新します。これにより、複数のサーバー間での Redis 共有の問題も解決されます。 Redis のマスター/スレーブ レプリケーションの助けを借りて、たとえいずれかの Redis が機能しなくなった場合でも、データ セット全体が存在することを保証できます。 Twemproxy は何に使用されますか?
#プロキシを介したキャッシュ サーバー接続の数を削減します。#複数のインスタンス、クライアント上で実行最初に利用可能なプロキシ サーバーに接続できます
1. twemproxy 、autoconf、automake、libtool、gcc をインストールする前に m4 をインストールする必要があります。そうしないと、さまざまなエラーが発生します。報告されますm4
wget http://mirrors.kernel.org/gnu/m4/m4-1.4.13.tar.gz && tar -xzvf m4-1.4.13.tar.gz && cd m4-1.4.13 && ./configure –prefix=/usr/local make && make installautoconf、automake、libtool、gcc
yum -y install autoconf automake libtool gccをインストールします
2. twemproxy
git clone https://github.com/twitter/twemproxy.git autoreconf -fvi #生成configure文件 .configure make && make install
##3 をインストールします。構成ファイル
##vim conf/nutcracker.yml
alpha: listen: 127.0.0.1:22121 #监听端口 hash: fnv1a_64 #key值hash算法,默认fnv1a_64 distribution: ketama #分布算法 #ketama一致性hash算法;modula非常简单,就是根据key值的hash值取模;random随机分布 auto_eject_hosts: true #摘除后端故障节点 redis: true #是否是redis缓存,默认是false timeout: 400 #代理与后端超时时间,毫秒 server_retry_timeout: 200000 #摘除故障节点后重新连接的时间,毫秒 server_failure_limit: 1 #故障多少次摘除 servers: - 172.16.175.145:6379:1 - 172.16.175.122:6379:1
#4. Redis 構成ファイルを変更します。
redis によって監視される IP とポートは twemproxy に対応している必要があります (twemproxy はいずれかのマシンにのみインストールされているため、両方のマシンにインストールされている場合は変更する必要はありません。)
2 つのサーバーの redis.conf でバインド オプションをそれぞれ変更します。この例では、127.0.0.1 を 172.16.175.145 と 172.16.175.122 に変更します。
5 twemproxy をオンにします。#nutcracker -t -c /twemproxy/conf/nutcracker.yml
#测试配置文件 如果不加-c 默认是检测conf/nutcracker.yml
nutcracker -d -c /twemproxy/conf/nutcracker.yml -p -o /data/logs/twemproxy/redisproxy.log #启动并将日志记录到/data/logs/twemproxy/redisproxy.log
6. プロジェクト内の Redis 接続を twemproxy ip と port に変更します。
私のプロジェクトはlaravelを使用しています。.envのREDIS_HOSTとREDIS_PORTを127.0.0.1と22121に設定するだけです。
注意、設定も設定する必要があります。「database」をコメントアウトしてください => 0フォルダー内のdatabase.phpのredis構成では、Predisはデフォルトでこの構成に対して選択操作を実行するため、接続エラーが発生します。
Redis の読み取りおよび書き込みテストを実行します。予期せぬことが起こらなければ、twemproxy を通常どおり使用できます。概要
興味があるかもしれない記事:
開く方法PHP7 オペコードは、php スキルの詳細な説明とともに強力なパフォーマンスを作成します##PHP は、ウサギがウサギを産む問題を解決するための再帰的アルゴリズムに基づいています php スキル
以上がLaravel プロジェクトは twemproxy を使用して Redis クラスター PHP インスタンスの完全な手順をデプロイしますの詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。