Redis
线上幽灵
大道至简
展开
-
什么是Redis?什么是nosql?NoSQL数据库的四大分类
什么是Redisredis是一个nosql(not only sql不仅仅只有sql)数据库,翻译成中文叫做非关系型型数据库。1,什么是nosql?NoSQL,泛指非关系型的数据库,NoSQL即Not-Only SQL,它可以作为关系型数据库的良好补充。随着互联网web2.0网站的兴起,非关系型的数据库现在成了一个极其热门的新领域,非关系数据库产品的发展非常迅速。而传统的关系数据库...转载 2018-08-14 09:37:39 · 18927 阅读 · 0 评论 -
hiredis的使用
hiredis的使用转载 2019-06-13 15:43:29 · 2591 阅读 · 0 评论 -
Redis集群原理
Redis集群是Redis提供的分布式数据库方案,集群通过分片来进行数据共享,并提供复制和故障转移功能。1 节点一个Redis集群通常由多个节点(node)组成,一个节点就是一个运行在集群模式下的Redis服务器,在刚开始的时候,每个节点都是相互独立的,它们都处于一个只包含自己的集群当中,要组建一个真正可工作的集群,必须将各个独立的节点连接起来,构成一个包含多个节点的集群。连接各个...转载 2018-08-28 15:16:46 · 499 阅读 · 0 评论 -
Redis的同步机制
前言在Redis中,用户可以通过执行SLAVEOF命令或者设置slaveof选项,让一个服务器去复制另一个服务器,我们称被复制的服务器为主服务器(master),而对主服务器进行复制的服务器则被称为从服务器(slave)。1 旧版复制功能的实现Redis的复制功能分为同步(sync )和命令传播( command propagate )两个操作:同步操作用于将从服务器的数据库...转载 2018-08-27 18:29:33 · 8618 阅读 · 0 评论 -
Redis持久化的两种方式
1、前言Redis是一种高级key-value数据库。它跟memcached类似,不过数据可以持久化,而且支持的数据类型很丰富。有字符串,链表,集 合和有序集合。支持在服务器端计算集合的并,交和补集(difference)等,还支持多种排序功能。所以Redis也可以被看成是一个数据结构服务 器。 Redis的所有数据都是保存在内存中,然后不定期的通过异步方式保存到磁盘上(这称为“半持久化模式...原创 2018-08-15 13:06:13 · 341 阅读 · 0 评论 -
redis 事务实现原理
一:简介Redis事务通常会使用MULTI,EXEC,WATCH等命令来完成,redis实现事务实现的机制与常见的关系型数据库有很大的却别,比如redis的事务不支持回滚,事务执行时会阻塞其它客户端的请求执行。二:事务实现细节redis事务从开始到结束通常会通过三个阶段: 1.事务开始 2.命令入队 3.事务执行 我们从下面的例...转载 2018-08-15 09:39:37 · 1137 阅读 · 0 评论 -
redis和memcached的优缺点及区别
1. 使用redis有哪些好处?(1) 速度快,因为数据存在内存中,类似于HashMap,HashMap的优势就是查找和操作的时间复杂度都是O(1)(2) 支持丰富数据类型,支持string,list,set,sorted set,hash(3) 支持事务,操作都是原子性,所谓的原子性就是对数据的更改要么全部执行,要么全部不执行(4) 丰富的特性:可用于缓存,消息,按key设置过期...转载 2018-08-14 23:42:16 · 612 阅读 · 0 评论 -
Redis缓存穿透、缓存雪崩、redis并发问题分析
把redis作为缓存使用已经是司空见惯,但是使用redis后也可能会碰到一系列的问题,尤其是数据量很大的时候,经典的几个问题如下:一、缓存和数据库间数据一致性问题分布式环境下(单机就不用说了)非常容易出现缓存和数据库间的数据一致性问题,针对这一点的话,只能说,如果你的项目对缓存的要求是强一致性的,那么请不要使用缓存。我们只能采取合适的策略来降低缓存和数据库间数据不一致的概率,而无法保证...转载 2018-08-14 23:07:16 · 321 阅读 · 0 评论 -
Mysql几种索引类型的区别及适用情况
Mysql目前主要有以下几种索引方式:FULLTEXT,HASH,BTREE,RTREE。那么,这几种索引有什么功能和性能上的不同呢?FULLTEXT即为全文索引,目前只有MyISAM引擎支持。其可以在CREATE TABLE ,ALTER TABLE ,CREATE INDEX 使用,不过目前只有 CHAR、VARCHAR ,TEXT 列上可以创建全文索引。值得一提的是,在数据量较大...转载 2018-08-14 21:06:07 · 169 阅读 · 0 评论 -
redis 双写一致性问题
首先,缓存由于其高并发和高性能的特性,已经在项目中被广泛使用。在读取缓存方面,大家没啥疑问,都是按照下图的流程来进行业务操作。但是在更新缓存方面,对于更新完数据库,是更新缓存呢,还是删除缓存。又或者是先删除缓存,再更新数据库,其实大家存在很大的争议。目前没有一篇全面的博客,对这几种方案进行解析。于是博主战战兢兢,顶着被大家喷的风险,写了这篇文章。 文章结构本文由以下三个部分组成...转载 2018-08-14 16:09:13 · 3281 阅读 · 0 评论 -
redis的过期健删除策略以及内存淘汰机制
过期键删除策略经过上一节的介绍,我们知道了数据库键的过期时间都保存在过期字典中,又知道了如何根据过期时间去判断一个键是否过期,现在剩下的问题是:如果一个键过期了,那么它什么时候会被删除呢?这个问题有三种可能的答案,它们分别代表了三种不同的删除策略:定时删除:在设置键的过期时间的同时,创建一个定时器(timer ),让定时器在键的过期时间来临时,立即执行对键的删除操作。 惰性删除:放...原创 2018-08-14 15:29:14 · 6361 阅读 · 4 评论 -
为什么说Redis是单线程的以及Redis为什么这么快!
一、前言近乎所有与Java相关的面试都会问到缓存的问题,基础一点的会问到什么是“二八定律”、什么是“热数据和冷数据”,复杂一点的会问到缓存雪崩、缓存穿透、缓存预热、缓存更新、缓存降级等问题,这些看似不常见的概念,都与我们的缓存服务器相关,一般常用的缓存服务器有Redis、Memcached等,而笔者目前最常用的也只有Redis这一种。如果你在以前面试的时候还没有遇到过面试官问你《为什么说R...转载 2018-08-14 10:45:54 · 133 阅读 · 0 评论 -
分布式缓存Redis之Pipeline(管道)
分布式缓存Redis之Pipeline(管道)转载 2019-07-10 20:10:55 · 171 阅读 · 0 评论