20、删除数据后内存占用率还是很高你好,我是蒋德钧。 在使用Redis时,我们经常会遇到这样一个问题:明明做了数据删除,数据量已经不大了,为什么使用top命令查看时,还会发现Redis占用了很多内存呢? 实际上,这是因为,当数据删除后,Redis释放的内存空间会由内存分配器管理,并不...2025-10-18Redis核心技术与实战
21、一个可能引发“惨案”的地方你好,我是蒋德钧。今天,我们一起来学习下Redis中缓冲区的用法。 缓冲区的功能其实很简单,主要就是用一块内存空间来暂时存放命令数据,以免出现因为数据和命令的处理速度慢于发送速度而导致的数据丢失和性能问题。但因为缓冲区的内存空间有限,如果往里面写入数...2025-10-18Redis核心技术与实战
22、第11~21讲思考题答案及答疑你好,我是蒋德钧。 咱们的课程已经更新到第21讲了,今天,我们来进行一场答疑。 前半部分,我会给你讲解第11~21讲的课后思考题。在学习这部分内容时,可以和你的答案进行对照,看看还有哪里没有考虑到。当然,有些问题不一定有标准答案,我们还可以继续讨论。...2025-10-18Redis核心技术与实战
23、Redis是如何工作的你好,我是蒋德钧。 我们知道,Redis提供了高性能的数据存取功能,所以广泛应用在缓存场景中,既能有效地提升业务应用的响应速度,还可以避免把高并发大压力的请求发送到数据库层。 但是,如果Redis做缓存时出现了问题,比如说缓存失效,那么,大量请求就会...2025-10-18Redis核心技术与实战
24、缓存满了怎么办你好,我是蒋德钧。 Redis缓存使用内存来保存数据,避免业务应用从后端数据库中读取数据,可以提升应用的响应速度。那么,如果我们把所有要访问的数据都放入缓存,是不是一个很好的设计选择呢?其实,这样做的性价比反而不高。 举个例子吧。MySQL中有1TB...2025-10-18Redis核心技术与实战
25、解决缓存和数据库数据不一致问题你好,我是蒋德钧。 在实际应用Redis缓存时,我们经常会遇到一些异常问题,概括来说有4个方面:缓存中的数据和数据库中的不一致;缓存雪崩;缓存击穿和缓存穿透。 只要我们使用Redis缓存,就必然会面对缓存和数据库间的一致性保证问题,这也算是Redis...2025-10-18Redis核心技术与实战
26、解决缓存雪崩、击穿、穿透难题你好,我是蒋德钧。 上节课,我们学习了缓存和数据库的数据不一致问题和应对方法。除了数据不一致问题,我们常常还会面临缓存异常的三个问题,分别是缓存雪崩、缓存击穿和缓存穿透。这三个问题一旦发生,会导致大量的请求积压到数据库层。如果请求的并发量很大,就会导...2025-10-18Redis核心技术与实战
27、缓存被污染了,该怎么办你好,我是蒋德钧。 我们应用Redis缓存时,如果能缓存会被反复访问的数据,那就能加速业务应用的访问。但是,如果发生了缓存污染,那么,缓存对业务应用的加速作用就减少了。 那什么是缓存污染呢?在一些场景下,有些数据被访问的次数非常少,甚至只会被访问一次...2025-10-18Redis核心技术与实战
28、如何基于SSD实现大容量Redis你好,我是蒋德钧。 我们在应用Redis时,随着业务数据的增加(比如说电商业务中,随着用户规模和商品数量的增加),就需要Redis能保存更多的数据。你可能会想到使用Redis切片集群,把数据分散保存到多个实例上。但是这样做的话,会有一个问题,如果要保...2025-10-18Redis核心技术与实战
29、Redis如何应对并发访问你好,我是蒋德钧。 我们在使用Redis时,不可避免地会遇到并发访问的问题,比如说如果多个用户同时下单,就会对缓存在Redis中的商品库存并发更新。一旦有了并发写操作,数据就会被修改,如果我们没有对并发写请求做好控制,就可能导致数据被改错,影响到业务...2025-10-18Redis核心技术与实战