【云知易】DCS分布式缓存服务 入门 03 连接缓存实例

举报
阅识风云 发表于 2017/11/13 09:59:30 2017/11/13
【摘要】 连接缓存实例:成功申请分布式缓存实例后,用户可通过相应的Redis客户端从弹性云服务器上连接使用缓存实例。本节介绍如何使用Redis-cli客户端连接缓存实例。

博文配图.jpg

连接缓存实例

成功申请分布式缓存实例后,用户可通过相应的Redis客户端从弹性云服务器上连接使用缓存实例。

本节介绍如何使用Redis-cli客户端连接缓存实例,更多的客户端的使用方法,请参考https://redis.io/clients

前提条件

  • 已成功申请分布式缓存实例,且状态为“运行中”。

  • 已创建弹性云服务器,创建弹性云服务器的方法,请参见《弹性云服务器用户指南》。

  • 弹性云服务器已经安装gcc编译环境。

     说明:

    您创建的弹性云服务器必须与分布式缓存实例属于同一个VPC,以确保弹性云服务器与缓存实例的网络是连通的。

操作步骤

  1. 登录管理控制台。

  2. 单击“数据库 > 分布式缓存服务”,进入分布式缓存服务信息页面。

  3. 单击左侧菜单栏的“缓存管理”,进入缓存实例信息页面。

  4. 单击需要使用的其中一个缓存实例的名称,进入该缓存实例的基本信息页面。查看并获取该分布式缓存实例的IP和端口。

  5. 连接缓存实例。


    ●使用redis命令行工具连接分布式缓存实例。

    1. 获取Redis客户端源码,下载路径为http://download.redis.io/releases/redis-3.0.7.tar.gz

    2. 将Redis客户端源码包上传到已创建的弹性云服务器。

    3. 登录弹性云服务器。

    4. 执行如下命令,解压Redis客户端源码包。

      tar -xzf redis-3.0.7.tar.gz

    5. 进入Redis目录并编译Redis客户端源码。

      cd redis-3.0.7

      make

    6. 执行以下命令连接缓存实例。

      cd src

      ./redis-cli -h 192.168.0.148 -p 6379

      其中“192.168.0.148”为缓存实例的IP,“6379”为缓存实例的端口。IP和端口获取见步骤4,请按实际情况修改后执行。

    7. 进入Redis-cli客户端界面后输入密码,校验通过后即可进行缓存数据读写。

      auth <password>

      其中 “<password>”为创建缓存实例时自定义的密码,请按实际情况修改后执行。回显如下:

      #redis-cli -h 192.168.0.148 -p 6379
      redis 192.168.0.148:6379> auth ******
      OK
      redis 192.168.0.148:6379>

    ●使用Redis Java (Jedis)客户端连接分布式缓存实例。

      a.获取Redis Java (Jedis)客户端源码,具体方法可参考https://github.com/xetorthio/jedis

      b.编写如下操作代码。

  1. jedis单连接示例。

    // 创建连接
     String host = "192.168.0.150"; 
     int port = 6379; 
     String pwd = "passwd"; 
      
     Jedis client = new Jedis(host, port); 
     client.auth(pwd);
     client.connect(); // 执行set指令
     String result = client.set("key-string", "Hello, Redis!"); 
     System.out.println( String.format("set指令执行结果:%s", result) ); // 执行get指令
     String value = client.get("key-string"); 
     System.out.println( String.format("get指令执行结果:%s", value) );
  2. jedisPool连接池示例。

    // 生成连接池配置信息
     String ip = "192.168.0.150"; 
     int port = 6379; 
     String pwd = "passwd"; 
     GenericObjectPoolConfig config = new GenericObjectPoolConfig(); 
     config.setTestOnBorrow(false); 
     config.setTestOnReturn(false); 
     config.setMaxTotal(100); 
     config.setMaxIdle(100); 
     config.setMaxWaitMillis(2000); 
     JedisPool pool = new JedisPool(config, ip, port, 100000, pwd);// 在应用初始化的时候生成连接池
     // 在业务操作时,从连接池获取连接
     Jedis client = pool.getResource(); 
     try { 
         // 执行指令
         String result = client.set("key-string", "Hello, Redis!"); 
         System.out.println( String.format("set指令执行结果:%s", result) ); 
         String value = client.get("key-string"); 
         System.out.println( String.format("get指令执行结果:%s", value) ); 
     } catch (Exception e) { 
         // TODO: handle exception
     } finally { 
         // 业务操作完成,将连接返回给连接池
         if (null != client) { 
             pool.returnResource(client); 
         } 
     } // end of try block
     // 应用关闭时,释放连接池资源
     pool.destroy();

    c.参考Redis Java (Jedis) 客户端源码中的readme文件编译代码并运行Redis Java (Jedis) 客户端连接分布式缓存实例。


【版权声明】本文为华为云社区用户原创内容,转载时必须标注文章的来源(华为云社区)、文章链接、文章作者等基本信息, 否则作者和本社区有权追究责任。如果您发现本社区中有涉嫌抄袭的内容,欢迎发送邮件进行举报,并提供相关证据,一经查实,本社区将立刻删除涉嫌侵权内容,举报邮箱: cloudbbs@huaweicloud.com
  • 点赞
  • 收藏
  • 关注作者

评论(0

0/1000
抱歉,系统识别当前为高风险访问,暂不支持该操作

全部回复

上滑加载中

设置昵称

在此一键设置昵称,即可参与社区互动!

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。