redis
文章平均质量分 52
13号新秀-阿威
0基础程序员 到大牛的成长历程
展开
-
redis 缓存穿透、缓存击穿、缓存雪崩
简述: REDIS缓存穿透,缓存击穿,缓存雪崩原因+解决方案一、前言在我们日常的开发中,无不都是使用数据库来进行数据的存储, 由于一般的系统任务中通常不会存在高并发的情况,所以这样看起来并没有什么问题,可是一旦涉及大数据量的需求,比如一些商品抢购的情景, 或者是主页访问量瞬间较大的时候,单一使用数据库来保存数据的系统会因为面向磁盘,磁盘读/写速度比较慢的问题而存在严重的性能弊端, 一瞬间成千上万的请求到来,需要系统在极短的时间内完成成千上万次的读/写操作,这个时候往往不是数据库能够承受的, 极其容原创 2021-03-25 20:52:26 · 80 阅读 · 0 评论 -
SpringRedisData操作
创建项目application.yml配置文件 我们连接池使用的是lettuce。Jedis是直连模式,在多个线程间共享一个Jedis实例时是线程不安全的,可以通过创建多个Jedis实例来解决,但当连接数量增多时,物理连接成本就较高同时会影响性能,因此较好的解决方法是使用JedisPool。Lettuce的连接是基于Netty的,连接实例可以在多个线程间共享,Netty可以使多线程的应用使用同一个连接实例,而不用担心并发线程的数量。通过异步的方式可以让我们更好地利用系统资源。spring:原创 2021-03-25 16:54:43 · 119 阅读 · 0 评论 -
哨兵配置、主备切换
概述哨兵模式是一种特殊的模式,首先Redis提供了哨兵的命令,哨兵是一个独立的进程,作为进程,它会独立运行。其原理是哨兵通过发送命令,等待Redis服务器响应,从而监控运行的多个Redis实例。然而一个哨兵进程对Redis服务器进行监控,可能会出现问题,为此,我们可以使用多个哨兵进行监控。各个哨兵之间还会进行监控,这样就形成了多哨兵模式。总结来说哨兵就是来监视主服务器,一但主服务器宕机,就告诉子服务器,来接替主服务器执行读写功能,当主服务器再次开启的时候他就变成子服务器。开始配置文件首先是我们在我们原创 2021-03-24 19:13:42 · 361 阅读 · 0 评论 -
持久化存储方案
第一种bgsave。如果我们需要频繁的存储,这样我们就需要频繁的使用这行命令这样回使我们的速度降低。第二种rdb 保存,这种保存方式redis自带的 我们可以配置文件中看到。但是这种持久化存储还是有可能出现漏存,所以要结合实际情况使用。save 3600 1 在3600秒内有一各主键发生变化他就会进行存储save 300 100 在300秒内有100个主键发生变化 他会进行存储save 60 10000 在60秒内有10000个主键发生化 他会进习存储我们打开dump.rdb可以看到原创 2021-03-23 20:38:05 · 111 阅读 · 0 评论 -
redis主从分离 读写分离
前言使用一个Redis实例作为主机,其余的作为备份机。主机和备份机的数据完全一致,主机支持数据的写入和读取等各项操作,而从机则只支持与主机数据的同步和读取。也就是说,客户端可以将数据写入到主机,由主机自动将数据的写入操作同步到从机。主从模式很好的解决了数据备份问题,并且由于主从服务数据几乎是一致的,因而可以将写入数据的命令发送给主机执行,而读取数据的命令发送给不同的从机执行,从而达到读写分离的目的。整体首先是我们自己先创建三个文件[root@Aw opt]# mkdir -p /opt/redis/原创 2021-03-23 20:37:46 · 218 阅读 · 0 评论 -
将java对象存入redis 序列化、反序列化
首先时我们需要一个序列化工具类package com.aw.redisdemo.util;import java.io.ByteArrayInputStream;import java.io.ByteArrayOutputStream;import java.io.ObjectInputStream;import java.io.ObjectOutputStream;/** * 序列化工具 */public class SerializeUtil { /** * 将原创 2021-03-22 20:55:54 · 929 阅读 · 0 评论 -
jedis连接池操作String、list、hash。文件、失效时间、keys、事务
简单连接使用连接池我们只需要创建一个连接池,然后通过连接池 来获取jedis对象 @Test void contextLoads2() { //使用连接池 JedisPool jedisPool = new JedisPool(new JedisPoolConfig(), "192.168.26.146", 6379, 10000, "root"); //获取实例对象 Jedis jedis =原创 2021-03-22 19:10:42 · 253 阅读 · 0 评论 -
springboot 连接redis
创建项目springboot项目骨架依赖 我们需要添加一个jedis移除lettuce<dependencies> <dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-data-redis</artifactId><!--原创 2021-03-21 20:51:45 · 347 阅读 · 0 评论 -
redis基本命令
在学习过程中又不明白的我们可以直接在这个官网上查询。stringkeys *获取所有的域127.0.0.1:6379> keys *1) "name"2) "zqu"设置域、查看域、删除域127.0.0.1:6379> set age 18OK127.0.0.1:6379> get age"18"127.0.0.1:6379> del zqu(integer) 1设置多个域、查看多个域、删除多个域127.0.0.1:6379> mset s原创 2021-03-21 17:48:16 · 97 阅读 · 0 评论 -
redis的介绍、redis-Desktop(windows)
同样我们要先去官网上面去看他们的是历史简介官网Redis 是一个开源(BSD许可)的,内存中的数据结构存储系统,它可以用作数据库、缓存和消息中间件。 它支持多种类型的数据结构,如 字符串(strings), 散列(hashes), 列表(lists), 集合(sets), 有序集合(sorted sets) 与范围查询, bitmaps, hyperloglogs 和 地理空间(geospatial) 索引半径查询。 Redis 内置了 复制(replication),LUA脚本(Lua scriptin原创 2021-03-21 14:01:15 · 1389 阅读 · 1 评论 -
redis在centos7上安装
下载下载redis官网上传到我们的centos的opt文件中或者我们直接在opt中进行下载wget http://download.redis.io/releases/redis-6.0.3.tar.gz解压tar -zxvf redis-6.0.3.tar.gz现在我们要进行编译make,但是我们在编译之前要先检查gcc的版本。CentOS7默认安装的是4.8.5,而redis6.0只支持5.3以上版本所以现在我们要进行升级版本,在网上找了很多的教程,最中也是成功了sudo y原创 2021-03-19 17:28:38 · 80 阅读 · 0 评论