今天看啥  ›  专栏  ›  GoCN

Go 如何做好缓存

GoCN  · 公众号  ·  · 2024-09-30 14:32
    

主要观点总结

本文主要讨论了关于应用API提速中缓存的重要性,缓存策略的选择,缓存更新的策略,以及缓存预热等问题。

关键观点总结

关键观点1: 缓存的重要性

在设计高性能应用时,缓存是不可或缺的一部分。缓存可以显著提高数据访问速度,减少延迟,从而提高应用的响应能力。

关键观点2: 缓存策略的选择

根据应用的需求和性能要求,选择合适的缓存策略。考虑内存大小、数据一致性、更新策略等因素。

关键观点3: 缓存更新的策略

在分布式系统中,本地缓存的更新需要采用合适的策略。旁路更新策略、写缓存后写数据库、写回策略等,需要根据实际场景选择。

关键观点4: 缓存预热

在启动应用时,进行缓存预热是很重要的。考虑并发加载、限流机制等,以减少对中间件的压力。同时,需要评估特殊情况的依赖,选择合适的预热方式。


文章预览

缓存对于应用API提速来说不可或缺,所以在设计初始阶段如果有较高的性能要求必不可少。 在做设计阶段如果需要使用缓存,最重要的是要 估算好需要使用多少内存 。 我们首先要明确自己需要缓存的数据有哪些内容。 在用户量不断增长的应用中,如果把所有使用的数据都进行缓存是不可取的。 因为应用的本地内存受到单机物理资源的制约,无限制的缓存数据最终会出现 OOM ,而导致应用被强制退出。 如果是分布式缓存,则高昂的硬件成本也让我们需要进行trade off。 如果 物理资源没有限制的情况下,那自然是全部放入速度最快的物理设备中是最好的。 但是现实的业务场景并不允许,我们才需要将数据分成冷热数据,甚至也需要对冷数据进行适当归档和压缩,存到更加便宜的介质中。 分析哪些数据可以放到本地内存中是做好本地缓存的第一步。 ………………………………

原文地址:访问原文地址
快照地址: 访问文章快照
总结与预览地址:访问总结与预览