Este conteúdo foi traduzido por máquina para sua conveniência e a Huawei Cloud não pode garantir que o conteúdo foi traduzido com precisão. Para exibir o conteúdo original, use o link no canto superior direito para mudar para a página em inglês.
Atualizado em 2022-11-08 GMT+08:00

Redisson

Acesse uma instância do DCS Redis por meio do Redisson em um ECS na mesma VPC. Para obter mais informações sobre como usar outros clientes do Redis, visite o site oficial do Redis.

  • Se uma senha tiver sido definida durante a criação da instância do DCS Redis, configure a senha para conexão com o Redis usando o Redisson. Não codifique duramente a senha de texto simples.
  • Para conectar a uma instância de cluster de proxy, mestre/em espera ou de nó único, use o método useSingleServer do objeto SingleServerConfig do Redisson. Para se conectar a uma instância do Cluster do Redis, use o método useClusterServers do objeto ClusterServersConfig.

Pré-requisitos

  • Uma instância do DCS Redis foi criada e está no estado Running.
  • Foi criado um ECS. Para obter detalhes sobre como criar um ECS, consulte Comprando um ECS .
  • Se o ECS executar o SO de Linux, certifique-se de que o ambiente de compilação Java tenha sido instalado no ECS.

Procedimento

  1. Visualize o endereço IP/nome do domínio e o número da porta da instância do DCS Redis a ser acessada.

    Para obter detalhes, consulte Exibindo Detalhes da Instância .

  2. Acesse o ECS.
  3. Use o Maven para adicionar a seguinte dependência ao arquivo pom.xml:

    <dependency>
      <groupId>org.redisson</groupId>
      <artifactId>redisson</artifactId>
      <version>3.16.8</version>
    </dependency>

  4. Acesse a instância do DCS usando o Redisson (um cliente Java).

    • Exemplo de uso do Redisson para se conectar a uma instância do DCS Redis de cluster de nó único, mestre/em espera ou proxy com uma única conexão
      Config config = new Config();
      SingleServerConfig singleServerConfig = config.useSingleServer();
      singleServerConfig.setAddress("redis://host:port");
      // singleServerConfig.setPassword("9client!");
      RedissonClient redisson = Redisson.create(config);
      //Test concurrentMap. Data is synchronized to Redis when the put method is used.
      ConcurrentMap<String, Object> map = redisson.getMap("FirstMap");
      map.put("wanger", "male");
      map.put("zhangsan", "nan");
      map.put("lisi", "female");
      ConcurrentMap resultMap = redisson.getMap("FirstMap");
      System.out.println("resultMap==" + resultMap.keySet());
      //Test Set
      Set mySet = redisson.getSet("MySet");
      mySet.add("wanger");
      mySet.add("lisi");
      Set resultSet = redisson.getSet("MySet");
      System.out.println("resultSet===" + resultSet.size());
      //Test Queue
      Queue myQueue = redisson.getQueue("FirstQueue");
      myQueue.add("wanger");
      myQueue.add("lili");
      myQueue.add("zhangsan");
      myQueue.peek();
      myQueue.poll();
      Queue resultQueue = redisson.getQueue("FirstQueue");
      System.out.println("resultQueue===" + resultQueue);
      //Close the connection.
      redisson.shutdown();
    • Exemplo de uso do Redisson para conectar-se a uma instância de Cluster DCS Redis de nó único, mestre/em espera ou proxy com pool de conexão
      //1. Initialization
      Config config = new Config();
      SingleServerConfig singleServerConfig = config.useSingleServer();
      singleServerConfig.setAddress("redis://host:6379");
      //Set the maximum number of connections in the connection pool of the master node to 500.
      singleServerConfig.setConnectionPoolSize(500);
      //The connections will be automatically closed and removed from the connection pool. The time unit is millisecond.
      singleServerConfig.setIdleConnectionTimeout(10000);
      RedissonClient redisson = Redisson.create(config);
      //Test concurrentMap. Data is synchronized to Redis when the put method is used.
      ConcurrentMap<String, Object> map = redisson.getMap("FirstMap");
      map.put("wanger", "male");
      map.put("zhangsan", "nan");
      map.put("lisi", "female");
      ConcurrentMap resultMap = redisson.getMap("FirstMap");
      System.out.println("resultMap==" + resultMap.keySet());
      //Test Set
      Set mySet = redisson.getSet("MySet");
      mySet.add("wanger");
      mySet.add("lisi");
      Set resultSet = redisson.getSet("MySet");
      System.out.println("resultSet===" + resultSet.size());
      //Test Queue
      Queue myQueue = redisson.getQueue("FirstQueue");
      myQueue.add("wanger");
      myQueue.add("lili");
      myQueue.add("zhangsan");
      myQueue.peek();
      myQueue.poll();
      Queue resultQueue = redisson.getQueue("FirstQueue");
      System.out.println("resultQueue===" + resultQueue);
      //Close the connection.
      redisson.shutdown();
    • Exemplo de uso do Redisson para se conectar a um cluster do Redis
      Config config = new Config();
      ClusterServersConfig clusterServersConfig = config.useClusterServers();
      clusterServersConfig.addNodeAddress("redis://host:port");
      //Set a password.
      // clusterServersConfig.setPassword("");
      RedissonClient redisson = Redisson.create(config);
      ConcurrentMap<String, Object> map = redisson.getMap("FirstMap");
      map.put("wanger", "male");
      map.put("zhangsan", "nan");
      map.put("lisi", "female");
      ConcurrentMap resultMap = redisson.getMap("FirstMap");
      System.out.println("resultMap==" + resultMap.keySet());
      //2. Test Set
      Set mySet = redisson.getSet("MySet");
      mySet.add("wanger");
      mySet.add("lisi");
      Set resultSet = redisson.getSet("MySet");
      System.out.println("resultSet===" + resultSet.size());
      //3. Test Queue
      Queue myQueue = redisson.getQueue("FirstQueue");
      myQueue.add("wanger");
      myQueue.add("lili");
      myQueue.add("zhangsan");
      myQueue.peek();
      myQueue.poll();
      Queue resultQueue = redisson.getQueue("FirstQueue");
      System.out.println("resultQueue===" + resultQueue);
      //Close the connection.
      redisson.shutdown();