Redis
文章平均质量分 95
介绍Redis原理及实战
超越不平凡
这个作者很懒,什么都没留下…
展开
-
决胜高并发战场:Redis并发访问控制与实战解析
实际应用中不可避免的存在并发场景,Redis也不例外,也会存在并发操作,比如用户下单时,有两个用户先从Redis查询到库存,然后同时下单,并发写操作,如果我们没做好控制,就可能导致数据被修改错,影响业务。为了保证并发访问的正确性,Redis提供了两种方法,分别是加锁和原子操作。加锁是一种常用的方法,在读取数据前,客户端需要先获取锁,获取不到的话就无法操作。等一个客户端获得锁后,就会一直持有这把锁,直到客户端完成更新,才会释放锁。原子操作是另一种提供并发访问控制的方法。原创 2024-01-15 08:30:00 · 2484 阅读 · 0 评论 -
Redis字符创类型内存消耗的奥秘
String 类型是二进制安全的,意思是 Redis 的String 类型可以包含任何数据,比如 jpg 图片或者序列化对象。还有一点是以前文章提到的,就是 Redis 在内存分配时并不是正好分配所需要的内存,而是分配的内存略大,比如申请 24 字节的内存,实际上会分配 32 字节的内存,这也是造成了内存消耗的一个原因。到这里你会发现,如果保存的字符串数据本身很小的话,那消耗在 SDS 元数据上的内存消耗就会很大,如果保存了大量这样的字符串数据,那内存消耗可想而知,保存了很多与数据无关的内容。原创 2024-04-09 09:00:00 · 916 阅读 · 0 评论 -
Redis分布式锁:保障微服务架构下的并发控制与数据一致性实战指南
分布式锁是一种在分布式系统中实现锁机制的技术,用于控制多节点对共享资源的访问,确保在并发环境下能够正确地实现互斥访问。在传统的单机环境下,我们可以使用线程锁来解决并发控制问题,但在分布式环境下,由于多个节点间物理分离,无法直接使用线程锁,因此需要设计一套能够在分布式系统中工作的锁服务。分布式锁需要一个单独的分布式系统来实现,可以实现分布式锁的主要方式有:Redis、Zookeeper、基于数据库实现等。本文主要介绍基于 Redis 实现的分布式锁。互斥性:确保同一时刻只有一个客户端持有锁。原创 2024-04-04 09:15:00 · 940 阅读 · 0 评论 -
Redis使用规范的最佳实践:打造高性能与稳定性的关键法则
在工作中 Redis 的使用非常广泛,它是提升性能的利器,那怎么样才能发挥出 Redis 的最大优势呢?那就是良好的使用规范,遵循 Redis 使用规范不仅能提升系统性能、节省资源、保障数据安全,还能极大地改善系统的可维护性、可靠性和长期可持续发展能力。今天就来介绍一下 Redis 的使用规范问题。原创 2024-03-17 10:20:08 · 1244 阅读 · 0 评论 -
面对海量数据Redis如何应对
如果要用Redis保存1亿个键值对,每个键值对大小为256B,该如何选择集群呢?先估算一下,这些键值对需要多少空间。1亿 * 256B 大约需要25G左右的空间来保存这些数据。我们可以使用单台机器来保存,但是数据量如果继续增加呢?只能纵向扩展,增加内存,但这种方式是由问题的Redis的高可靠主要体现在两方面,一是数据尽量不丢失;二是服务尽量少的中断。AOF和RDB持久化机制保证了数据不丢失,对于后者主要通过冗余设计来保证。Redis提供了多种分布式架构设计。主要包括:主从同步、哨兵机制、分片集群方式。原创 2024-01-05 08:30:00 · 1153 阅读 · 1 评论 -
透视Redis大key背后的I/O挑战
要分析这个问题,需要详细了解下Redis的IO模型。原创 2023-12-31 09:00:00 · 1809 阅读 · 1 评论 -
Redis持久化(AOF、RDB)用到的写时复制到底是什么
Redis中有两种持久化方式,分别为AOF和RDB,这两种方式都会使用写时复制(Copy on Write),那到底他们是如何工作的呢?本文作为的补充内容,请先看上文在看本文,如以了解可跳过。原创 2024-01-03 09:00:00 · 1530 阅读 · 1 评论 -
Redis突破性能瓶颈:揭示缓存污染之谜并采取革命性防御措施
何为缓存污染?在一些场景下,有些数据被访问的次数非常少,甚至只会被访问一次,当这些数据完成数据访问请求后,如果还继续留存在缓存中,就会白白占用缓存空间,这种情况就是缓存污染。当缓存污染不严重时,只有少量数据占用缓存空间,此时对缓存的影响不大。但是缓存污染一旦变得严重,就会有大量不在访问的数据滞留在缓存中。如果这时数据占满了缓存空间,再往缓存中写入新数据,就需要先淘汰数据,这回引入额外的开销,进而影响性能。原创 2024-01-11 08:30:00 · 1189 阅读 · 2 评论 -
Redis缓存危机大揭秘:雪崩、击穿与穿透——从理论到实战防御策略
使用Redis时经常会听到缓存雪崩、缓存击穿和缓存穿透,它们到底是什么,我们应该如何应对呢?本文将向你做详细介绍。原创 2024-01-10 08:00:00 · 1133 阅读 · 0 评论 -
Redis性能大挑战:深入剖析缓存抖动现象及有效应对的战术指南
Redis变慢了该怎么排查呢?本文将为你提供几个思路来轻松掌握原创 2024-01-08 08:30:00 · 1690 阅读 · 1 评论 -
揭秘Redis中AOF与RDB的协同作战,确保数据万无一失
众所周知Redis内存数据库,如果发生了宕机,数据就会丢失,那Redis是如何做持久化的呢?Redis有两种持久化方式,分别为AOF和RDB,但是他们二者是如何配合工作的呢?本文将带你了解一下。原创 2024-01-02 11:29:29 · 1327 阅读 · 2 评论 -
Redis高性能的秘密原来在这,超越想象
redis(Remote Dictionary Server)本质上是一个key-value型的数据库,整个数据库加载在内存当中运行定期通过异步操作把数据库数据flush到硬盘上,因此是纯内存操作。Redis是基于Reactor模式开发的网络事件处理器,这个处理器被称为文件事件处理器。它的组成结构分为4部分:多个套接字、IO多路复用程序、文件事件分派器、事件处理器。因为文件事件分派器队列是单线程的,所以redis才叫做单线程模型。原创 2023-12-28 10:24:07 · 641 阅读 · 1 评论