gpt4 book ai didi

signalr - SignalR Backplane 是否可以/应该用于构建分布式缓存?

转载 作者:行者123 更新时间:2023-12-02 16:40:47 25 4
gpt4 key购买 nike

我们的 Web 应用程序使用内存缓存(应用程序数据缓存)来提高吞吐量,这样就不必为每个请求从数据库 (SQL Server) 加载频繁查询的数据。它有可能部署在网络场中,因此我们必须解决必须同步所有节点缓存的经典问题。所以我们需要的是分布式缓存。

现成的解决方案有 NCache 和 REDIS(可能还有更多)。但是,由于我们已经使用 SignalR Backplane 将数据集的更改传达给 Windows 服务(和浏览器客户端),我想知道它是否可以用于实现分布式缓存。

这样做时,我们(或多或少)会重用现有的数据集已更改消息,但在 Web 应用程序本身中订阅它们以使其缓存失效。好处是我们不必引入新的库/技术。

我想我最大的问题是:这有意义吗?而且,SignalR 背板是否足够可靠,足以确保不会丢失事件,从而导致缓存过时?或者这是架构上的误用?

最佳答案

Signalr 用于实时解决方案,而不是静态解决方案。

在您的解决方案中,您将选择一项服务上的数据,然后通过背板将其发送到另一项服务。然后呢?也许你会把它保存在内存中。如果其中一项服务重新启动会发生什么情况?数据将会消失。使用redis你永远不会遇到这个问题。此外,您将消耗此数据的本地内存。

您将如何管理过期?另外,您将努力使用信号器来实现此缓存系统。

我不建议您为此使用信号器背板。坚持使用 Redis 或类似技术。

关于signalr - SignalR Backplane 是否可以/应该用于构建分布式缓存?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/36208963/

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