Redis

本文涉及的产品
Redis 开源版,标准版 2GB
推荐场景:
搭建游戏排行榜
云数据库 Tair(兼容Redis),内存型 2GB
简介: Redis

  之前我们学习得都是SQL类型的, 从这里开始我们开始设置对应的NoSQL类型的

       国内的一些企业, 并不是都是仅仅只使用关系型数据库, 也就是SQL就可以进行相关操作的, 还需要其他的类型, 也就是NoSQL类型的数据库

NOSQL解决方案:

Redis:

  • 第一个重要的点就是数据库, 也就是说跟我们的MYSQL是一样的, 都是一个数据库的类型
  • 第二个点, 就是其存储方式, 是以 key-value的方式进行的, 也就是说你给我一个名称, 以及对应的值, 我就会进行存储
  • 第三个点, 存储结构, 也就是说, 其是存储在对应的硬盘内存当中的, 而不是磁盘当中的

       安装Redis:

Redis实际上是针对于Linux的操作系统的, 在我们的Windows当中的操作可能会有些不同

这个就是对应的Windows版本的下载方式

       启动Redis:

       在对应的我们解压过的目录之下, 输入CMD 直接启动控制台

       之后在控制台当中输入:

redis-server.exe即可

       显示这样的页面就代表对应的Redis数据库已经启动成功了

       之后在同一个文件夹之下 ,我们再启动一个CMD 输入 :


                                                                       redis-cli

之后我们就可以进行相关的操作了

       初级操作练习:

  其中的存储都是以KEY -- VALUE的形式存在的, 所以我们可以直接使用这种键值对的方式及进行存储操作



       除了这种一个一个存储的方式之外, 我们还可以使用另外的一种方式, 即使仅仅只设置一个, 我们就可以存储多个的键值对:


                                       hset groupname key value

  第一个groupname设置对应的键值对集合1名称, 第二个key 设置在其中的键以及对应的值


       查询:

                                            hget groupname key

       即可

SpringBoot整合Redis:

  导入对应的依赖:

       我们这里选择的应当是对应的SpringBoot为我们提供的Nosql

<dependency>
    <groupId>org.springframework.boot</groupId>
    <artifactId>spring-boot-starter-data-redis</artifactId>
</dependency>

配置文件:

配置文件当中并不需要我们修改过多的数据, 大多数都是默认的

<dependency>
    <groupId>org.springframework.boot</groupId>
    <artifactId>spring-boot-starter-data-redis</artifactId>
</dependency>

测试类设置:

跟之前配置JDBCTemplate是一样的, 我们可以将其自动装配在对应的测试类当中

@Autowired
private RedisTemplate redisTemplate;
 
@Test
void set() {
    ValueOperations ops = redisTemplate.opsForValue();
    ops.set("a","a1");
    }
 
@Test
void get(){
    ValueOperations valueOperations = redisTemplate.opsForValue();
    Object a = valueOperations.get("a");
    System.out.println(a);
}


 以上是一种仅仅只能存储一个键值对的方式

   

  还有HASH形式的存储形式, 一个对应的group当中可以存储多个键值对

@Test
void setHash() {
    HashOperations hashOperations = redisTemplate.opsForHash();
    hashOperations.put("a1","a","aaa");
}
 
@Test
void getHash(){
    HashOperations hash = redisTemplate.opsForHash();
    Object o = hash.get("a1", "a");
    System.out.println(o);
}

.

其实跟我们在对用的CMD界面获取的方式是一样的, 只不过这里变成了对象让我们使用

相关实践学习
基于Redis实现在线游戏积分排行榜
本场景将介绍如何基于Redis数据库实现在线游戏中的游戏玩家积分排行榜功能。
云数据库 Redis 版使用教程
云数据库Redis版是兼容Redis协议标准的、提供持久化的内存数据库服务,基于高可靠双机热备架构及可无缝扩展的集群架构,满足高读写性能场景及容量需弹性变配的业务需求。 产品详情:https://www.aliyun.com/product/kvstore &nbsp; &nbsp; ------------------------------------------------------------------------- 阿里云数据库体验:数据库上云实战 开发者云会免费提供一台带自建MySQL的源数据库&nbsp;ECS 实例和一台目标数据库&nbsp;RDS实例。跟着指引,您可以一步步实现将ECS自建数据库迁移到目标数据库RDS。 点击下方链接,领取免费ECS&amp;RDS资源,30分钟完成数据库上云实战!https://developer.aliyun.com/adc/scenario/51eefbd1894e42f6bb9acacadd3f9121?spm=a2c6h.13788135.J_3257954370.9.4ba85f24utseFl
相关文章
|
2月前
|
缓存 NoSQL Redis
说说你对redis的理解2
说说你对redis的理解2
32 6
|
存储 NoSQL Java
Redis3
Redis3
50 0
|
5月前
|
NoSQL 网络协议 安全
Redis系列-1.Redis浅谈
Redis系列-1.Redis浅谈
41 0
|
12月前
|
NoSQL Redis
06Redis - Redis的使用
06Redis - Redis的使用
55 0
|
监控 NoSQL Java
|
NoSQL Redis 流计算
使用redis
使用redis
75 0
|
存储 NoSQL Unix
redis
redis
113 0
|
存储 消息中间件 缓存
Redis总结(二)
redis 和 memcached 什么区别?为什么高并发下有时单线程的 redis 比多线程的memcached 效率要高?区别:1.mc 可缓存图片和视频。rd 支持除 k/v 更多的数据结构;2.rd 可以使用虚拟内存,rd 可持久化和 aof 灾难恢复,rd 通过主从支持数据备份;3.rd 可以做消息队列。原因:mc 多线程模型引入了缓存一致性和锁,加锁带来了性能损耗。redis 主从复制如何实现的?redis 的集群模式如何实现?redis 的 key 是如何寻址的?
99 0
|
存储 消息中间件 缓存
Redis总结(一)
Redis 的全称是:Remote Dictionary.Server,本质上是一个 Key-Value 类型的内存数据库,很像memcached,整个数据库统统加载在内存当中进行操作,定期通过异步操作把数据库数据 flush 到硬盘上进行保存。因为是纯内存操作,Redis 的性能非常出色,每秒可以处理超过 10 万次读写操作,是已知性能最快的Redis 的出色之处不仅仅是性能,Redis 最大的魅力是支持保存多种数据结构,此外单个 value 的最大限。
123 0