English | 简体中文 | 繁體中文 | Русский язык | Français | Español | Português | Deutsch | 日本語 | 한국어 | Italiano | بالعربية

Redis クライアント接続

RedisはTCPポートまたはUnixソケットを監視してクライアントからの接続を受け取ります。接続が確立すると、Redis内部で以下の操作が行われます:

  • まず、クライアントソケットは非ブロッキングモードに設定されます。なぜなら、Redisは非ブロッキングマルチスレッドモデルを使用するためのネットワークイベント処理を行っているからです。

  • このソケットにTCP_NODELAY属性を設定し、Nagleアルゴリズムを無効にします

  • このクライアントソケットにデータ送信を監視するための読み取り可能なファイルイベントを作成します

最大接続数

Redis2.4 中では、最大接続数はコードに直接ハードコードされていますが、2.6バージョンでこの値が設定可能になります。

maxclientsのデフォルト値は 10000、redis.confでこの値を変更することもできます。

config get maxclients
1) "maxclients"
2) "10000"

オンラインサンプル

以下の例では、サービスの起動時に最大接続数を設定しています 100000:

redis-server --maxclients 100000

クライアントコマンド

S.N.コマンド説明
1CLIENT LISTredisサービスに接続しているクライアントのリストを返します
2CLIENT SETNAME現在の接続の名前を設定します
3CLIENT GETNAMECLIENT SETNAME コマンドで設定されたサービス名を取得します
4CLIENT PAUSEクライアント接続を一時停止し、指定された時間(ミリ秒)で一時停止します
5CLIENT KILLクライアント接続を閉じる