![](https://img-blog.csdnimg.cn/20201014180756738.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
【缓存】
文章平均质量分 79
记录常见的缓存原理和使用方式
执于代码
职业画像详情:https://github.com/xiamaocheng,
其他:https://www.infoq.cn/profile/8E8D58FE040264/publish
展开
-
Redis
edis核心原理Redis的单线程和高性能Redis单线程为什么还能这么快?因为它所有的数据都在内存中,所有的运算都是内存级别的运算,而且单线程避免了多线程的切换性能损耗问题。正因为Redis是单线程,所以要小心使用Redis指令,对于那些耗时的指令(比如keys),一定要谨慎使用,一不小心就可能会导致Redis卡顿。Redis单线程如何处理那么多的并发客户端连接?R...原创 2019-10-16 19:14:20 · 80 阅读 · 0 评论 -
redis三种集群模式:
当一个sentinel节点与master节点的心跳丢失时,这个sentinel节点就会认为master节点出现了故障,处于不可用的状态,这种判定叫作主观下线(即sentinel节点自己主观认为master下线了)之后,这个sentinel节点会与其他sentinel节点交换信息,如果发现认为主节点发生故障的sentinel节点的个数超过了某个阈值(通常为sentinel节点总数的1/2+1,即超过半数),则sentinel会认为master节点已经处于客观下线的状态,即大家都认为master故障不可用了。原创 2022-08-28 19:59:13 · 1323 阅读 · 0 评论 -
(六) redis 作为任务队列
(一)任务对立的好处1.公耦合,生产者和消费者无需知道批次实现的细节,只需要决定好任务的描述格式, 这使得生产者和消费则都不同额团队使用不同的语言编写。2.已于扩展:消费者可以有多个,而且分布在不同的机器上,可以轻易的降低单台服务器的负载。(二)使用redis实现简单的任务队列(生产者消费者模型)生产者命令:LPUSH key alue[....] RPUSH key value消费者命令:RPOP key或BRPOP key timeout,LPOP key 或者BLPOP或者BLP...原创 2020-08-16 14:42:00 · 178 阅读 · 0 评论 -
redis 使用场景拓展
set 应用场景---------------------------Set 应用场景:关注模型:关注的大V,为关系,重要的列表有,微关系有什么用呢?关注相同的人,社交,最主要的是,这个广告就是买的,打开社交网站,根据微关系,也关注了他, 公共爱好,所以微关系其实用户收据,根据任务画像,微关系来说:共同关注如何计算呢?集合操作无法set 预算符号,每个集合里面,求差...原创 2020-03-30 21:59:24 · 130 阅读 · 0 评论 -
(三.一)集群搭建源码分析&水平扩容
集群搭建源码:水平扩容:---------------------集群搭建源码:Linux下环境的搭建:(略)为什么从节点没有slot?因为的从节点并不歪提供服务,除非发送故障转移的,从节点不会处理,集群环境OK,做个试验。设置gJ的时候,有个命令也可以设置cluster keyslot k1 ,现在12706 是哪个节点的负责的呢,要从master节点找。...原创 2020-03-28 21:55:05 · 171 阅读 · 0 评论 -
(五)redis缓存设计&开发规范和性能建议
缓存设计缓存穿透 缓存穿透是指查询一个根本不存在的数据, 缓存层和存储层都不会命中, 通常出于容错的考虑, 如果从存储 层查不到数据则不写入缓存层。 缓存穿透将导致不存在的数据每次请求都要到存储层去查询, 失去了缓存保护后端存储的意义。 造成缓存穿透的基本原因有两个: 第一, 自身业务代码或者数据出现问题。 第二, 一些恶意攻击、 爬虫等造成大量空命中。缓存穿透问题解决方案:缓存空对象...原创 2020-03-27 08:10:21 · 326 阅读 · 0 评论 -
(二)redis 持久化 &主从复制& Jedis 连接&哨兵架构
RDP 快照:在默认情况下, Redis 将内存数据库快照保存在名字为 dump.rdb 的二进制文件中。你可以对 Redis 进行设置, 让它在“ N 秒内数据集至少有 M 个改动”这一条件被满足时, 自动保存一次 数据集。 比如说, 以下设置会让 Redis 在满足“ 60 秒内有至少有 1000 个键被改动”这一条件时, 自动保存一次 数据集: # save 60 1000 关闭RD...原创 2020-03-24 19:07:04 · 1350 阅读 · 0 评论 -
(四) redis 分布式锁 比较完善 实现
Synic实现:redisAPI 改进计数器改进锁续命改进(Redssion)-----------------------1.Synic实现:一个最简单的例子:使用synized 实现使用redis锁的实现:一个简单的实现:wang'yi万一代码没有被执行的话呢? 此时加上一个过期时间。万一代码没有执行到过期时间呢?此时加上一个原子操作。...原创 2020-03-26 21:09:42 · 215 阅读 · 0 评论 -
(三)redis 集群架构&Java操作redis集群&Redis集群原理分析&Redis集群选举原理分析
redis 集群架构Java操作redis集群Redis集群原理分析--------------------------在redis3.0以前的版本要实现集群一般是借助哨兵sentinel工具来监控master节点的状态,如果master节点异常,则会 做主从切换,将某一台slave作为master,哨兵的配置略微复杂,并且性能和高可用性等各方面表现一般,特别是在主 从切换的瞬间存...原创 2020-03-26 00:14:10 · 269 阅读 · 0 评论 -
(一)redis数据结构&redis 核心原理&高级命令使用
Redis核心原理 Redis的单线程和高性能 Redis 单线程为什么还能这么快? 因为它所有的数据都在内存中,所有的运算都是内存级别的运算,而且单线程避免了多线程的切换性 能损耗问题。正因为 Redis 是单线程,所以要小心使用 Redis 指令,对于那些耗时的指令(比如 keys),一定要谨慎使用,一不小心就可能会导致 Redis 卡顿。 Redis 单线程如何处理那么多的并发客户端连接? ...原创 2020-03-24 14:25:14 · 292 阅读 · 0 评论 -
Redis 使用方法
src 适用方法,redis client 方法,6379 的方法,6734:本地进程,redis server 的方法的,redis 的方法配置文件中的内容,一起完了之后:String 的公司的,面试的操作的不一样,redis 数据结构:一.编程的技术:原来看过的redis book 这本书的,对redis 的基本功能都已经基本熟悉了。从上周开始,看red...原创 2020-01-20 13:42:35 · 240 阅读 · 0 评论 -
缓存框架
MemCache 介绍 MemCache 是一套高性能分布式的高速缓存系统,用于动态 Web 应用以减轻数据库负载,由 LiveJournal 的 Brad Fitzpatrick 开发。目前被许多网站使用以提升网站的访问速度,尤其对于一 些大型的、需要频繁访问数据库的网站访问速度提升效果十分显著。这是一套开放源代码软 件,以 BSD license 授权发布。 MemCac...转载 2020-01-02 19:19:47 · 198 阅读 · 0 评论 -
redis 缓存设计和性能优化
请求缓存:https://blog.csdn.net/xiaowangku/article/details/90409224缓存的受益与成本通过缓存加速读写速度:CPU L1/L2/L3 Cache、Linux page Cache加速硬盘读写、浏览器缓存、Ehcache缓存数据库结果。降低后端负载后端服务器通过前端缓存降低负载:业务端使用Redis降低后端MySQL负载等...原创 2020-01-20 17:32:02 · 346 阅读 · 0 评论 -
分布式缓存选型
如今,市面上的缓存解决方案已经有很大成绩了。今天我将选取一些代表的方案 包括Redis,Memcached 和Tair 进行比较,帮助大家更加了解,并且更好地进行技术选型。一、常用的分布式缓存的对比常用的分布式缓存包括Redis、Memcached,因为Redis提供的数据结构比较丰富且简单易用,所以Redis的使用广泛。下面我们从9个大方面来对比最常用的Redis和M...原创 2020-01-04 20:15:34 · 479 阅读 · 0 评论 -
redis 缓存
redis缓存1、为什么使用redis2、使用redis有什么缺点3、单线程的redis为什么这么快4、redis的数据类型,以及每种数据类型的使用场景5、redis的过期策略以及内存淘汰机制6、redis和数据库双写一致性问题7、如何应对缓存穿透和缓存雪崩问题8、如何解决redis的并发竞争问题正文1、为什么使用redis分析:博主觉得在项目中使用re...转载 2020-01-02 19:28:25 · 101 阅读 · 0 评论