Redis
文章平均质量分 92
Redis是一款开源的内存键值存储数据库,支持多种数据结构,如字符串、哈希、列表、集合和有序集合等,并且支持多种数据的持久化方式。Redis具有快速、高效、可扩展等特点,能够满足许多不同应用场景的需求,如高速缓存、消息队列、实时计数等。
格林希尔
少年 远望 远行
展开
-
Redis 内存淘汰策略详解
Redis 是一款高性能的非关系型数据库,它支持多种数据结构,如字符串、哈希、列表、集合、有序集合和 HyperLogLog。Redis 可以用于缓存、消息队列、应用程序中的数据结构存储等场景,它的优点是响应速度快、支持丰富的数据结构和扩展性好。原创 2023-08-30 17:29:01 · 4055 阅读 · 2 评论 -
深入理解Redis缓存穿透、击穿、雪崩及解决方案
Redis是一个基于内存的数据结构存储系统,是一个支持键值对、发布/订阅、存储新闻资讯的高性能key-value存储数据库。原创 2023-08-28 16:04:03 · 535 阅读 · 0 评论 -
Redis 高可用之集群搭建和数据分片
Redis 集群是将数据和负载分散在多个节点上的一种方法。每个节点都是一个独立的 Redis 实例,这些实例协同工作以提供高可靠性和性能。在 Redis 集群中,数据被分数个槽位, 并将这些槽位分配给不同的节点存储,在读写数据时会自动进行数据迁移。Redis 集群的这种方式可以无需使用共享存储或共享内存等资源,便可以实现线性扩展。此外,Redis 集群还支持故障恢复和单点故障自动转移。原创 2023-08-27 09:57:07 · 1536 阅读 · 0 评论 -
Redis 分布式锁与 Redlock 算法实现
Redis是一款基于内存的高性能键值对数据库,通过提供多种数据类型支持,满足了大部分的应用场景,常用的数据类型有字符串、哈希表、列表、集合和有序集合等。在Redis中,可以使用多种方式实现分布式锁,如使用SETNX命令或RedLock算法。原创 2023-08-24 09:40:26 · 1021 阅读 · 0 评论 -
Redis 慢查询优化及命令画像分析
通过分析命令画像,可以了解Redis中各种数据结构的使用情况和热度,从而根据实际情况制定针对性的优化方案。当Redis重新启动时,可以通过读取AOF文件中的命令来恢复Redis的数据。在Redis中,每个命令的执行都会带来一定的网络开销,而使用管道可以将多个命令一次性发送给Redis服务器,减少网络开销,提高Redis性能。Redis通过使用多个内存池实现内存分配,同时对于不同大小的内存块,Redis使用不同的内存池进行分配,避免了内存碎片的产生。选择正确的数据结构,可以大大提高Redis的读写效率。原创 2023-08-20 16:11:19 · 905 阅读 · 0 评论 -
基于 Redis 实现分布式限流
分布式限流是指通过将限流策略嵌入到分布式系统中,以控制流量或保护服务,保证系统在高并发访问情况下不被过载。分布式限流可以防止系统因大量请求同时到达导致压力过大而崩溃,从而提高系统的稳定性和可靠性。同时,它可以使得业务资源能够更好地分配,提高系统的效率。原创 2023-08-18 20:21:37 · 1330 阅读 · 0 评论 -
使用 Redis 实现异步队列
异步队列是一种底层基于异步 I/O 模型的消息队列,用于在分布式系统中进行同步和异步的通讯和协作。通过异步队列,消费者可以随时请求生产者生产并发送消息,无需等待回应即可执行其他操作。异步队列在提高系统性能和吞吐量方面有很大的优势。原创 2023-08-16 09:14:10 · 1990 阅读 · 0 评论 -
Redis Geo 数据类型在移动互联网中的应用
支持丰富的数据类型,包括字符串、哈希、列表、集合、有序集合、位图、HyperLogLog 和地理空间索引等。是单线程应用,避免了多线程的锁竞争问题,保证了并发请求的不阻塞。采用 LRU 策略和不同层次的数据淘汰机制,在内存受限的情况下尽量保证热点数据的存活。提供了事务支持和 Lua 脚本扩展机制,支持原子性操作和自定义复杂操作。可以持久化存储于磁盘上,保证了断电和宕机的数据可靠性。原创 2023-08-12 21:35:33 · 624 阅读 · 0 评论 -
Redis 应用实践:缓存预热与缓存穿透解决方案
Redis是一个用于数据缓存、消息代理、持久化存储的内存型数据库。Redis的特点是高性能、高并发、支持丰富的数据类型,可以实现多种应用场景。原创 2023-08-11 14:23:41 · 1326 阅读 · 0 评论 -
Redis 事务、持久化、复制原理分析
Redis是一种高性能的键值存储数据库,同时也是一种基于内存的数据结构存储系统,它可以用作数据库、缓存和消息中间件。原创 2023-08-09 23:42:01 · 456 阅读 · 0 评论 -
Redis Cluster 集群故障排查与解决方案
Redis是一个开源的内存数据结构存储系统,可以用作数据库、缓存和消息中间件。它支持多种数据结构(如字符串、哈希表、列表、集合等)和功能(如事务、分布式锁、Lua脚本等),能够满足不同场景的需求。原创 2023-08-08 18:52:03 · 2066 阅读 · 0 评论 -
如何优化 Redis 内存使用
Redis 是一个快速的非关系型数据存储系统,其特点是支持多种数据结构以及高性能。Redis 可用于缓存、队列、发布/订阅、排行榜等多种应用场景。原创 2023-08-07 13:10:42 · 973 阅读 · 0 评论 -
Redis 在电商秒杀场景中的应用
在电商平台的特定时期,如双十一、618等节日或促销活动,会有大量用户涌入该平台进行购物。其中,秒杀场景是用户数量最多的,因为消费者可在限定的时间内获得极具性价比的产品和服务。举例来说,假设某电商平台推出了一款新品,原价为100元。但在秒杀期间,只需要支付10元便可购买该产品,而且该产品总共只有100件。那么这样的秒杀场景既能提高消费者的购买积极性,也能解决商家库存问题。原创 2023-08-04 12:21:23 · 939 阅读 · 0 评论 -
分布式天梯图算法在 Redis 图数据库中的应用
Redis是一个高性能的键值对数据库,支持常用的数据结构和分布式操作,被广泛应用于缓存、消息队列和排行榜等场景。除了基本的数据结构,Redis还支持图数据结构并提供了一些算法支持。原创 2023-08-02 18:29:19 · 789 阅读 · 0 评论 -
对 Redis 实现分布式事务的探索与实现
Redis是一个高性能的key-value型NoSQL数据库系统,它被广泛应用于缓存、队列、计数器等场景中。原创 2023-08-01 09:06:56 · 1234 阅读 · 0 评论 -
Redis 的五种数据类型以及使用场景
Redis的setnx命令可以在key不存在时设置key的值,因此可以基于此实现分布式锁。一个进程在执行加锁操作时,先尝试使用setnx占据锁的key,如果返回值为1,表示获得了锁;Redis提供了消息队列功能,可以作为轻量级的消息中间件使用,支持多个生产者和消费者。Redis 可以将常用的数据存储在内存中,并且设置过期时间来实现缓存的功能。当应用需要这些数据时,可以直接从 Redis 中获取,避免了从磁盘读取数据的IO操作,从而提高了系统的响应时间和吞吐量。原创 2023-07-12 21:39:56 · 3004 阅读 · 0 评论 -
使用 Redis 实现秒杀系统
秒杀系统是指在一个非常短的时间内(通常是几十秒钟),将某种商品或服务以极低的价格进行销售。这种销售方式需要保证高并发和高可用性,同时防止超卖和恶意攻击等问题。秒杀系统的特点是大量的用户在同一时间瞬间涌入服务器,该类型的高并发读写操作对系统性能提出了较高的要求。Redis(Remote Dictionary Server)是一个开源、支持网络、基于内存、键值对存储数据库。它支持多种数据结构,如字符串(String)、哈希(Hash)、列表(List)、集合(Set)和有序集合(Sorted Set)。原创 2023-06-29 21:31:42 · 4218 阅读 · 0 评论 -
Redis 高并发下的性能优化技术
Redis是一款高性能的键值存储数据库。与传统的数据库相比,Redis拥有更高的读写速度以及更丰富的数据结构支持。尽管Redis拥有出色的性能表现,但在高并发场景下其仍存在着一些性能问题需要我们注意。本文将围绕这些问题进行分析,并提供一些解决方案。Redis采用单进程单线程模型,通过事件驱动机制提高其并发性能。其内部包含多个模块,包括网络连接、命令请求处理、持久化管理等。在高并发下,对于Redis性能优化的关键点是:合理设置连接数、降低操作时间复杂度、开启持久化机制;原创 2023-06-24 00:08:14 · 3937 阅读 · 0 评论 -
使用 Redis 和 Lua 实现分布式锁
分布式锁是一种用于多台服务器上处理同一资源的并发访问的锁机制。它用于协调分布式系统中的各个节点,确保它们的操作不会相互干扰。Redis (Remote Dictionary Server)是一种使用 C 语言编写的,开源的 in-memory 数据库系统,支持多种数据结构类型,如字符串、哈希表、列表、集合等。由于其可高效地存储键值对,并且具有多种灵活的使用方式,因此经常被用作缓存、会话存储和消息队列等场景。原创 2023-06-10 21:05:07 · 3919 阅读 · 0 评论 -
Redis 布隆过滤器的原理和实践
布隆过滤器是一种空间效率高、误判率可控的数据结构,通常用于检索一个元素是否在一个集合中。它是由一个比特向量和多个哈希函数组成的。布隆过滤器可以用于快速检测一个元素是否存在于一个集合中,其主要优点是省内存缺点是有一定的误识别率和删除困难。原创 2023-05-27 18:10:31 · 1512 阅读 · 8 评论 -
Spring Data Redis实现高性能缓存:提升Web应用性能
随着互联网的普及Web应用的开发变得越来越普遍。然而,随着应用规模和用户数量的增加也会面临越来越多的性能问题。数据库查询和写入延迟网络传输延迟高并发请求压力这些问题都可能导致应用响应时间较长让用户体验变得不佳。为了提高Web应用的性能表现,我们需要寻找性能优化的方法。Spring Data Redis是Spring框架中的一个组件,它是对Redis客户端API的封装和实现。它提供了对Redis的常用操作支持,包括字符串、哈希表、列表、集合和有序集合等数据结构的操作。原创 2023-05-16 12:05:54 · 380 阅读 · 0 评论 -
Redis在大规模分布式系统的应用与优化
Redis是一个高性能的开源内存数据存储系统,被广泛应用于分布式系统中。在大规模分布式系统中,Redis主要应用于缓存、会话管理、消息队列等方面,可以提升系统的性能、可扩展性和可靠性。下面将从分布式系统架构设计、性能优化、容错性设计等方面介绍Redis在大规模分布式系统中的应用和优化。原创 2023-05-05 11:31:11 · 444 阅读 · 23 评论 -
Redis命令详解及使用技巧
Redis是一个基于Key-Value存储的NoSQL数据库,常用于Web应用程序的缓存、消息传递、排行榜等功能,本文主要介绍Redis常用的Key-Value类型的命令。原创 2023-05-04 14:36:39 · 798 阅读 · 0 评论 -
Redis高可用实现
在实际生产环境中为保证Redis的服务连续性和可靠性需要设计一个高可用架构。所谓高可用即当某一台Redis服务器出现故障时其他Redis服务器可以顶上去继续提供服务从而保证整个系统的连续性和稳定性。原创 2023-05-04 13:16:57 · 4467 阅读 · 5 评论