Redis 相关
高并发
多机的时候,虽然有失效时间,但还是会有短时间内缓存和数据库数据不一致(读操作不需要特殊操作),
更新操作的时候
先删除缓存,再更新数据库
先更新数据库,再删除缓存
原子性破坏,增加队列重试
先删除缓存,再更新数据库
在高并发下表现不如意,在原子性被破坏时表现优异
先更新数据库,再删除缓存(Cache Aside Pattern设计模式)
在高并发下表现优异,在原子性被破坏时表现不如意
雪崩
大量key同时失效,或者缓存层崩了
1.多机负载,哨兵监控,限流降级,同一个线程对同一个key
2. 给每个key的过期时间加随机数,尽量设置把过期时间设置的均匀一些
3.缓存持久化,宕机之后重启并快速从磁盘恢复
穿透
不断地访问数据库不存在的值,空值因为不存缓存,就会一直访问数据库。
1.数据库返回为空,也放入缓存,并设置短过期时间,下次再访问就返回空。
2.布隆过滤器,不合法的提前拦截
持久化
RDB和AOF的优缺点
RDB优点:全量数据快照,文件小,恢复快
RDB缺点:无法保存最近一次快照之后的数据,数据量大会由于I/O严重影响性能
AOF优点:可读性搞,适合保存增量数据,数据不一丢失
AOF缺点:文件体积大,恢复时间长
Redis 相关的更多相关文章
- redis 相关知识
1. 什么是Redis Redis是由意大利人Salvatore Sanfilippo(网名:antirez)开发的一款内存高速缓存数据库.Redis全称为:Remote Dictionary Ser ...
- redis相关配置
redis相关配置1.yum 源码 rpm yum 快速,间接,高效,解决依赖关系,(自动安装到某个路径,不可控),通过yum安装的软件查询命令 rpm -ql nginx yum源的软件包可能版本非 ...
- 【面试】我是如何在面试别人Redis相关知识时“软怼”他的
事出有因 Redis是一个分布式NoSQL数据库,因其数据都存储在内存中,所以访问速度极快,因此几乎所有公司都拿它做缓存使用,所以Redis常被称为分布式缓存. 一次我的一个同事让我帮他看Redis相 ...
- Redis相关知识整理
Redis相关知识整理 1. Redis和MySQL的区别?a).mysql是关系型数据库,而redis是NOSQL,非关系型数据库.mysql将数据持久化到硬盘,读取数据慢,而redis数据先存储在 ...
- Redis相关命令及Jedis的demo(转)
org.springframework.data.redis.core.RedisTemplate在List操作时的一个注意事项:BoundListOperations boundListOperat ...
- Redis的安装和使用之------Redis相关运用
原文 http://wangzhijian.blog.51cto.com/6427016/1731962 一.简介 REmote DIctionary Server(Redis) 是一个由 Salv ...
- redis相关运维命令
1. 查询redis里面的大key? 在redis实例上执行bgsave,然后我们对dump出来的rdb文件进行分析,找到其中的大KEY 有个不太推荐的命令,debug object xxx 可以看到 ...
- redis相关问题
什么是Redis?Redis 是一个使用 C 语言写成的,开源的 key-value 数据库..和Memcached类似,它支持存储的value类型相对更多,包括string(字符串).list(链表 ...
- redis 相关知识点
(1)什么是redis? Redis 是一个基于内存的高性能key-value数据库. (有空再补充,有理解错误或不足欢迎指正) (2)Reids的特点 Redis本质上是一个Key-Value类型的 ...
- Redis 相关操作
1.安装 下载地址:http://www.redis.cn/ 在使用Redis时,开始就遇到了问题,客户端打不开,原因是需要先开启服务端,这需要先配置—— 1.下载好redis安装包,解压安装之后,复 ...
随机推荐
- Python学习(四)——配套《PyTorch深度学习实战》
1. Python中字符串的相加和相乘 在Python中,字符串可以通过加号(+)进行相加(连接),也可以通过乘号(*)进行相乘(重复).以下是这两种操作的详细说明和示例: 字符串的相加(连接) 字符 ...
- 禁用Windows服务器iis错误导致启动vs调试
问题描述: IIS站点错误会导致windows服务器启动vs调试,这在生产服务器是完全没必要的,会导致下面的问题,弹出一个调试框,必须手动关闭.很是不爽.. 关闭调试导入注册表: Windows Re ...
- Jetbrains fleet 配置 C++开发环境(基于CMAKE和MinGW)
Jetbrains fleet 配置 C++开发环境 1. 安装 Jetbrains Fleet 到Fleet下载页面下载Toolbox并安装 Jetbrains-Fleet下载页 安装完成后在任务栏 ...
- [rustGUI][iced]基于rust的GUI库iced(0.13)的部件学习(00):iced简单窗口的实现以及在窗口显示中文
前言 本文是关于iced库的部件介绍,iced库是基于rust的GUI库,作者自述是受Elm启发. iced目前的版本是0.13.1,相较于此前的0.12版本,有较大改动. 本合集是基于新版本的关于分 ...
- 压力测试-jmeter-copy
1. 场景描述 新申请的服务器,要压测下python算法程序最多能执行多少条数据,有几年没用压力测试工具-jmeter了,重新下载了最新版本,记录下,也希望能帮到准备使用jmeter做压测的朋友. 2 ...
- OS:MMU
MMU? 全称:memory management unit [内存管理单元] 是: 1.CPU中用来管理虚拟存储器.物理存储器的控制线路 2.同时也负责虚拟地址映射为物理地址 3.以及提供硬件机制的 ...
- 推荐一款非常好用的在线 SSH 管理工具
前言 SSH工具在远程连接.文件传输.远程管理和增强安全性等方面发挥着重要作用,是我们开发人员和系统管理员不可或缺的工具.今天大姚给大家推荐一款非常好用的在线 SSH 管理工具:Xterminal. ...
- ffmpeg简易播放器(4)--使用SDL播放音频
SDL(英语:Simple DirectMedia Layer)是一套开放源代码的跨平台多媒体开发函数库,使用C语言写成.SDL提供了数种控制图像.声音.输出入的函数,让开发者只要用相同或是相似的代码 ...
- 分布式事务之2PC两阶段提交
1. 分布式事务概述 1.1 问题背景 在分布式系统中,业务操作可能跨越多个服务或数据库(如订单服务.库存服务.支付服务),传统单机事务(ACID)无法满足跨网络节点的数据一致性需求. 网络不可靠:服 ...
- 腾讯云HAI服务器上部署与调用DeepSeek-R1大模型的实战指南
上次我们大概了解了一下 DeepSeek-R1 大模型,并简单提及了 Ollama 的一些基本信息.今天,我们将深入实际操作,利用腾讯云的 HAI 服务器进行 5 分钟部署,并实现本地 DeepSee ...