java どのように redis クラスターに接続するか

Redisクラスタに接続するには、Java用のRedisクライアントライブラリを使用する必要があります。以下はJedisライブラリを使用してRedisクラスタに接続するサンプルコードです。

import redis.clients.jedis.HostAndPort;
import redis.clients.jedis.JedisCluster;
import redis.clients.jedis.JedisPoolConfig;

import java.util.HashSet;
import java.util.Set;

public class RedisClusterExample {
    public static void main(String[] args) {
        // 创建JedisPoolConfig对象
        JedisPoolConfig jedisPoolConfig = new JedisPoolConfig();
        jedisPoolConfig.setMaxTotal(100); // 设置最大连接数
        jedisPoolConfig.setMaxIdle(20); // 设置最大空闲连接数

        // 创建Redis集群节点的Set对象
        Set<HostAndPort> nodes = new HashSet<>();
        nodes.add(new HostAndPort("192.168.0.1", 6379));
        nodes.add(new HostAndPort("192.168.0.2", 6379));
        nodes.add(new HostAndPort("192.168.0.3", 6379));

        // 创建JedisCluster对象
        JedisCluster jedisCluster = new JedisCluster(nodes, jedisPoolConfig);

        // 使用JedisCluster对象进行操作
        jedisCluster.set("key", "value");
        String value = jedisCluster.get("key");
        System.out.println(value);

        // 关闭JedisCluster对象
        jedisCluster.close();
    }
}

上記のサンプルコードでは、まず、最大接続数や最大アイドル接続数など、接続プールに関するパラメータを設定するためのJedisPoolConfigオブジェクトを作成しています。次に、Redisクラスタのノード情報を格納するためのSetオブジェクトを作成しています。そして、これらのノード情報とJedisPoolConfigオブジェクトを使用して、JedisClusterオブジェクトを作成しています。

JedisClusterオブジェクトを使用すると、Redisクラスタ全体を、あたかも単一のRedisインスタンスを操作できるように操作できます。サンプルコードでは、setメソッドでキーと値を設定し、その後getメソッドでそのキーに対応する値を取得しました。最後に、closeメソッドを呼び出してJedisClusterオブジェクトを閉じました。

Jedisライブラリの依存関係をプロジェクト内に含めたうえで、サンプルコードを実行してください。Maven または Gradle を使用して依存関係を追加できます。たとえば、Maven プロジェクトの pom.xml ファイルには次の依存関係を追加できます。

<dependency>
    <groupId>redis.clients</groupId>
    <artifactId>jedis</artifactId>
    <version>3.6.0</version>
</dependency>

ご参考になれば幸いです。

bannerAds