
redis
redis学习总结成长
后台服务器开发
这个作者很懒,什么都没留下…
展开
-
走进redis事务
走进redis事务 听到事务,相比大家知道传统数据库事务,最重要的就是四原则: 原子性:要么全部成功,要么全部失败 隔离性:多个并发事务之间互相隔离 永久性:事务一旦提交,数据永久有效 一致性:事务执行之前和执行之后处于一致性状态 redis作为内存数据库,是否也支持事务? 答案是肯定的,但是redis的事务支持和传统数据库的支持是有一定的区别的;redis的事务支持是不具备上述的四个条件的,具体的我们在操作中见真知。 事务命令 multi 开启事务 exec 执行事务 discard 取消事务原创 2020-12-19 16:33:57 · 168 阅读 · 1 评论 -
带你彻底理解 Redis 持久化
带你彻底理解 Redis 持久化 一、前言 redis作为内存数据库,在我们后端开发中应用是非常多的,尤其是在大流量背景下,redis作为缓存数据库就必不可少了。想了解redis使用场景可以移步至redis使用场景。 redis 作为内存数据库,就会存在一个致命的问题,比如宕机、停电、自然灾害等等导致redis停止服务,那么内存中的数据就会丢失,对于不重要的数据还好,但是一旦涉及到核心数据,这个是万万不能接受的。为此,redis也为我们提供了两种持久化方式,AOF和RDB持久化,既然两种持久化方式是同时提供原创 2020-12-13 08:50:59 · 336 阅读 · 0 评论 -
redis分布式锁?坑那么多
redis分布式锁?坑那么多 一、白话分布式 什么是分布式,用最简单的话来说,就是为了较低单个服务器的压力,将功能分布在不同的机器上面; 就比如: 本来一个程序员可以完成一个项目:需求->设计->编码->测试 但是项目多的时候,一个人也扛不住,这就需要不同的人进行分工合作了 这就是一个简单的分布式协同工作了; 二、分布式锁 首先看一个问题,如果说某个环节被终止或者别侵占,...原创 2020-03-14 18:43:32 · 720 阅读 · 2 评论 -
redis源码:SDS是何方人物
redis源码:SDS是何方人物 SDS介绍: Redis中SDS称之为简单动态字符串 sds数据结构与API相关文件是:sds.h, sds.c。 最大预分配长度: #define SDS_MAX_PREALLOC (1024*1024) 定义: struct sdshdr { // buf 中已占用空间的长度 int len; // buf 中剩余可...原创 2020-03-07 09:57:57 · 214 阅读 · 0 评论 -
redis使用场景
redis使用场景 string类型 字符串常见操作 set key value //存入键值对 mset key value [key value…] //批量存储字符串键值对 setnx key value //存入一个不存在的字符串键值对 get key ...原创 2020-02-10 11:39:39 · 167 阅读 · 0 评论 -
redis-cluster
redis-cluster redis-cluster 简介 Redis Cluster是一个高性能高可用的分布式系统 结构图 特点 所有的redis节点彼此互联(PING-PONG机制),内部使用二进制协议优化传输速度和带宽。 节点的fail是通过集群中超过半数的节点检测失效时才生效。 客户端与redis节点直连,不需要中间proxy层.客户端不需要连接集群所有节点,连接集群中...原创 2020-01-18 22:44:30 · 203 阅读 · 0 评论 -
redis哨兵模式
redis哨兵模式 哨兵模式 概述 哨兵模式主要是基于前面用到的主从模式进行改造的,由于主从模式的缺陷,所以哨兵模式弥补了这以缺陷 优点 监控主数据库和从数据库是否正常运行 主数据库出现故障时,可以自动将从数据库转换为主数据库,实现自动切换 如果redis服务出现问题,会发送通知 缺点 主数据库出现故障时,选举切换的时候容易出现瞬间断线现象 判断在线情况 默认情况下,每个...原创 2020-01-12 09:12:18 · 302 阅读 · 0 评论 -
redis主从模式
redis主从模式 主从模式 在软件架构中,master-slave(主从模式)是使用比较多的一种架构方式; 概述 主(master)和 从(slave)部署在不同的服务器上,当主节点服务器写入数据时会同步到从节点的服务器上,一般主节点负责写入数据,从节点负责读取数据 优点 读写分离,提高效率 数据热备份,提供多个副本 缺点 主节点故障,集群则无法进行工作,可用性比较低,从节点...原创 2020-01-05 22:22:59 · 278 阅读 · 0 评论 -
缓存穿透和缓存雪崩
缓存穿透和缓存雪崩 缓存穿透 概念 所谓缓存穿透就是说在缓存中不存在,然后直接在数据库中查询的现象,图例如下: 场景 一般来说,缓存穿透的场景发生在故意攻击的场景下;比如说,本来查询意见商品的序号是正数,但是请求方总是请求大量的负数过来,导致缓存无效,全部流量都打在了数据库中,如果某一时刻流量过大,则会导致数据库崩溃; 解决方案 方案一:布隆过滤器 布隆过滤器会判断某个元素是否...原创 2020-01-04 21:19:36 · 187 阅读 · 0 评论 -
Redis从入门到使用
初识Redis Redis是一款开源的、高性能的键-值存储(key-value store)。它常被称作是一款数据结构服务器(data structure server)。 Redis的键值可以包括字符串(strings)类型,同时它还包括哈希(hashes)、列表(lists)、集合(sets)和 有序集合(sorted sets)等数据类型。 对于这些数据类型,你可以执行原...原创 2019-03-03 13:25:53 · 221 阅读 · 0 评论 -
mysql->redis同步
hello,大家好,今天看到一篇redis相关的文章,我自己专门把代码搞到跑了一下,还是不错的,对于我们平时使用redis和mysql同步还是很不错的,工作中也是可以去使用的,因为这个确实会比我们去使用代码的方式去读取数据库再次插入到redis中,效率会高的多。 1.开发环境 开发环境:linxu 开发语言:C/C++ mysql 使用的库:hiredis 2.redis通信协议 (1...原创 2019-06-16 21:34:36 · 1023 阅读 · 0 评论