Redis概述 您所在的位置:网站首页 nosql的数据库类型 Redis概述

Redis概述

2023-06-13 02:25| 来源: 网络整理| 查看: 265

什么是Redis

Redis是一个基于内存的key-value结构数据

基于内存存储,读写性能高适合存储热点数据(热点商品、资讯、新闻)企业应用广泛 Redis 简介 缓存任务队列消息队列分布式锁 Redis下载与安装

Redis安装包分为windows版本和Linux版:

Windows版下载地址:https://github.com/microsoftarchive/redis/releasesLinux版下载地址:https://download.redis.io/releases 在Linux系统安装Redis步骤: 将redis安装包上传到Linux解压安装包,命令:tar -zxvf redis-4.0.0.tar.gz -C /usr/local安装Redis的依赖环境gcc,命令: yum install gcc-c++进入/usr/local/redis-4.0.0,进行编译,命令:make进入redis的src目录,进行安装,命令:make install

Redis的Windows版本属于绿色软件,直接解压即可使用,解压后目录结构如下: 在这里插入图片描述

Redis 服务启动与停止

Linux中redis服务启动,可以使用redis-server,默认端口号6379 在这里插入图片描述 Ctrl + C停止Redis服务

Redis数据类型

Redis存储的是key-value结构的数据,其中key是字符串类型,value有5种常用的数据类型:

字符串 string哈希hash列表list集合set有序集合sorted set 在这里插入图片描述 Redis常用命令 字符串string操作命令哈希hash操作命令列表list操作命令集合set操作命令有序集合sorted set操作命令通用命令 字符串string操作命令

Redis中字符串类型常用命令:

SET key value 设置指定key的值GET key 获取指定key的值SETEX key seconds value 设置指定key的值,并将key的过期时间设为seconds秒SETNX key value 只有在key不存在时设置key的值

更多命令可以参考Redis中文网:https://www.redis.net.cn

哈希hash操作命令

Redis hash是一个string类型的field和value的映射表,hash特别适合用于存储对象,常用命令:

HSET key field value 将哈希表key中的字段field的值设为valueHGET key field 获取存储在哈希表中指定字段的值HDEL key field 删除存储在哈希表中的指定字段HKEYS key 获取哈希表中所有字段HVALS key 获取哈希表中所有值HGETALL key 获取在哈希表中指定key的所有字段和值 在这里插入图片描述 列表list 操作命令

Redis列表是简单的字符串列表,按照插入顺序排序,常用命令:

LPUSH key value1[value2] 将一个或多个值插入到列表头部LRANGE key start stop 获取列表指定范围内的元素RPOP key 移除并获取列表最后一个元素LLEN key 获取列表长度BRPOP key1 [key2] timeout 移除并获取列表的最后一个元素,如果列表没有元素会阻塞列表直到等待超时或发现科弹出元素为止 在这里插入图片描述 集合set操作命令

Redis set是string类型的无序集合。集合成员是唯一的,这就意味着集合中不能出现重复的数据,常用命令:

SADD key member1[member2] 向集合添加一个或多个成员SMEMBERS key 返回集合中的所有成员SCARD key 获取集合的成员数SINTER key1 [key2] 返回给定所有集合的交集SUNION key1 [key2] 返回所有给定集合的并集SDIFF key1 [key2] 返回给定所有集合的差距SREM key member1[member2] 移除集合中一个或多个成员 在这里插入图片描述 有序集合 sorted set操作命令

Redis sorted set 有序集合是string类型的集合,且不允许重复的成员。每个元素都会关联一个double类型的分数(score)。redis正是通过分数来为集合中的成员进行从小到大排序。有序集合的成员是唯一的,但分数却可以重复。 常用命令:

ZADD key score1 member1 [score2 member2] 向有序集合添加一个或多个成员,或者更新已存在成员的分数ZRANGE key start stop [WITHSCORES] 通过索引区间返回有序集合中指定区间内的成员ZINCRBY key increment memebr 有序集合中对指定成员的分数加上增量incrementZREM key member[member…] 移除有序集合中的一个或多个成员 在这里插入图片描述 通用命令 KEYS pattern 查找所有符合规定模式(pattern)的keyEXISTS key 检查给定key是否存在TYPE key 返回key所储存的值的类型TTL key 返回给定key的剩余生存时间(TTL,time to live),以秒为单位DEL key 该命令用于在key存在时删除key 在Java中操作Redis 介绍

Redis的java客户端很多,官方推荐的有三种:

JedisLettuceRedisson Spring 对Redis客户端进行了整合,提供了Spring Data Redis,在Spring Boot 项目中还提供了对应的starter,即spring-boot-starter-data-redis Jedis

jedis的maven坐标

redis.clients jedis 2.8.0

使用Jedis操作Redis的步骤

获取连接执行操作关闭连接 Spring Data Redis

在Spring Boot项目中,可以使用Spring Data Redis来简化Redis操作,maven坐标:

org.springframework.boot spring-boot-starter-data-redis

Spring Data Redis中提供了一个高度封装的类:RedisTemplate, 针对jedis客户端中大量api进行了归类封装,将同一类型操作封装为operation接口,具体分类如下:

ValueOperations: 简单K-V操作SetOperations: set类型数据操作ZSetOprations: zset类型数据操作HashOperations:针对map类型的数据操作ListOperations:针对list类型的数据操作


【本文地址】

公司简介

联系我们

今日新闻

    推荐新闻

    专题文章
      CopyRight 2018-2019 实验室设备网 版权所有