gpt4 book ai didi

c# - Redis 与应用内缓存

转载 作者:IT王子 更新时间:2023-10-29 06:01:16 25 4
gpt4 key购买 nike

使用 Redis 缓存 userId-UserName 对、NewsId-NewsDomainName 等数据有哪些优点和缺点?为什么我不应该将此数据缓存在应用程序内存中而不是为其创建字典?我认为它一定比使用 redis 快得多?谢谢!

最佳答案

根据您的工作负载情况,您可能需要其中一种或两种缓存策略的组合。为什么?

  • 进程内缓存速度更快(有利于延迟),更重要的是,它不会产生任何网络流量来获得成功(有利于可扩展性);
  • 远程缓存,Redis 或类似的,允许你保留所有服务器访问的缓存数据的一份副本*,因此它使用更少的内存(除非你只有一个应用程序服务器,这似乎不太可能),并且更少容易出现数据不一致问题(如果您正在处理用户数据,这似乎很重要)

在缓存集群或任何数据集群中,对特定数据的请求会发送到一小组服务器,其中最大的问题之一就是热点。在这种情况下,您可能希望在本地组合这两种缓存热键,但要非常简单,以防止后端服务器不堪重负,但又不能太长以至于导致长时间提供陈旧数据。

* 但是,如果集群中有多个缓存服务器,并且集群管理有服务器弹出/重新接纳逻辑但没有数据刷新逻辑,您可能在某些服务器上有陈旧数据。

关于c# - Redis 与应用内缓存,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/25798896/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com