当前位置:   article > 正文

Redis 简介

Redis 简介

Redis的话,这东西其实说难很难,说简单也简单,想深入了解的话是比较难的,但是想用起来的话还算简单。

如果是Redis 集群的话,还要考虑很多问题。

 

今天讲一下 单机版 Redis

 

Redis 其实就是:高性能键值对数据库

A、支持的键值数据类型:

1、字符串类型

2、列表类型

3、游戏集合类型

4、散列类型

5、集合类型

 

B、Redis 的应用场景:

1、缓存(最广泛)

数据查询、新闻商品的内容,放在缓存中。聊天室的在线好友列表

2、网站访问统计

3、任务队列

秒杀、抢购

4、数据过期处理

5、应用排行榜

6、分布式集群架构中的session的分离

 

C、安装

Windows 环境下:https://github.com/MSOpenTech/redis/releases

Redis 支持 32 位和 64 位。这个需要根据你系统平台的实际情况选择,这里我们下载 Redis-x64-xxx.zip压缩包到 C 盘,解压后,将文件夹重新命名为 redis

打开文件,内容如下:

打开一个 cmd 窗口 使用 cd 命令切换目录到 C:\redis 运行:

redis-server.exe redis.windows.conf

如果想方便的话,可以把 redis 的路径加到系统的环境变量里,这样就省得再输路径了,后面的那个 redis.windows.conf 可以省略,如果省略,会启用默认的。输入之后,会显示如下界面:

这时候另启一个 cmd 窗口,原来的不要关闭,不然就无法访问服务端了。

切换到 redis 目录下运行:

redis-cli.exe -h 127.0.0.1 -p 6379

 

D、使用 Redis

项目中加入 redis依赖:

  1. <properties>
  2. <redis.util.version>0.0.3</redis.util.version>
  3. </properties>
  4. <dependencies>
  5. <dependency>
  6. <groupId>com.cmcc.iot.redistool</groupId>
  7. <artifactId>redis-util</artifactId>
  8. <version>${redis.util.version}</version>
  9. </dependency>
  10. <!-- jedis -->
  11. <dependency>
  12. <groupId>redis.clients</groupId>
  13. <artifactId>jedis</artifactId>
  14. <version>${jedis.version}</version>
  15. </dependency>
  16. </dependencies>

连接到 Redis 服务:

  1. import redis.clients.jedis.Jedis;
  2. public class RedisJava {
  3. public static void main(String[] args) {
  4. //连接本地的 Redis 服务
  5. Jedis jedis = new Jedis("localhost");
  6. System.out.println("连接成功");
  7. //查看服务是否运行
  8. System.out.println("服务正在运行: " + jedis.ping());
  9. }
  10. }

执行结果:

  1. 连接成功
  2. 服务正在运行: PONG

a)Redis  储存String 类型数据:

  1. import redis.clients.jedis.Jedis;
  2. public class RedisStringJava {
  3. public static void main(String[] args) {
  4. //连接本地的 Redis 服务
  5. Jedis jedis = new Jedis("localhost");
  6. System.out.println("连接成功");
  7. //设置 redis 字符串数据
  8. jedis.set("website", "https://blog.csdn.net/qq_39415129");
  9. // 获取存储的数据并输出
  10. System.out.println("redis 存储的字符串为: "+ jedis.get("website"));
  11. }
  12. }

执行结果:

  1. 连接成功
  2. redis 存储的字符串为: https://blog.csdn.net/qq_39415129

 

b)Redis  储存 List 类型数据:

  1. import java.util.List;
  2. import redis.clients.jedis.Jedis;
  3. public class RedisListJava {
  4. public static void main(String[] args) {
  5. //连接本地的 Redis 服务
  6. Jedis jedis = new Jedis("localhost");
  7. System.out.println("连接成功");
  8. //存储数据到列表中
  9. jedis.lpush("site-list", "Runoob");
  10. jedis.lpush("site-list", "Google");
  11. jedis.lpush("site-list", "Taobao");
  12. // 获取存储的数据并输出
  13. List<String> list = jedis.lrange("site-list", 0 ,2);
  14. for(int i = 0; i < list.size(); i++) {
  15. System.out.println("列表项为: " + list.get(i));
  16. }
  17. }
  18. }

执行结果:

  1. 连接成功
  2. 列表项为: Taobao
  3. 列表项为: Google
  4. 列表项为: Runoob

c)Redis  储存 Keys:

  1. import java.util.Iterator;
  2. import java.util.Set;
  3. import redis.clients.jedis.Jedis;
  4. public class RedisKeyJava {
  5. public static void main(String[] args) {
  6. //连接本地的 Redis 服务
  7. Jedis jedis = new Jedis("localhost");
  8. System.out.println("连接成功");
  9. // 获取数据并输出
  10. Set<String> keys = jedis.keys("*");
  11. Iterator<String> it = keys.iterator() ;
  12. while(it.hasNext()){
  13. String key = it.next();
  14. System.out.println(key);
  15. }
  16. }
  17. }

执行结果:

  1. 连接成功
  2. runoobkey
  3. site-list

 

思路清晰点:redis 其实就是一个用来存储 key-value 等形式的数据的数据库。

对于后面需要用到的数据进行存储到  Redis 中,要用的时候直接去获取。

 

当然目前推荐使用的是  Jedis ,因为 Jedis  是 Redis  的 Java  客户端。可以通过  Jedis  对  Redis 进行操作。

JedisPool  连接池也可以极大的用于项目中,实现缓存数据读取的高效率。

 

 

我是进阶的球儿,大家一起2019年的爬坑历程。感觉分享很给力的话给个赞,谢谢!!!有问题也可以下方留言沟通。

 

 

 

 

声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/小惠珠哦/article/detail/939495
推荐阅读
相关标签
  

闽ICP备14008679号