多个 Azure redis 连接

Multiple Azure redis connection

为了克服延迟,在 asp.net 核心 2.1 的 "Startup.cs" 上,我正在创建 2 个到 Azure Redis 的静态连接并在应用程序的整个生命周期中重复使用这些相同的连接实例。 为一个 Azure redis 实例创建多个连接是一种好习惯吗?什么是最大值不。连接?多实例会影响计费吗? Azure redis 使用费是按连接数还是按数据传输量收费?请确认。

首先,在应用程序中创建两个 Azure Redis 静态连接不是一个好习惯。

在一般的项目中,Redis并不经常使用,而是在业务需要的时候实例化创建,使用完毕后释放。如果需要经常使用,可以在项目启动的时候Startup.cs实例化,全局定义一个实例,这样就不会频繁的创建和删除实例了。

A​​zure Redis的计费方式可以参考the official documentation。它不是基于连接数或传输量。按时间计费。

实际上建议使用不同的连接来反映不同的数据包大小,即您可以为较大的数据设置一个超时时间较长的连接,而不是较小的数据。仅当您将数据包存储在不同大小的 redis 中时,才建议这样做:例如:1kb 到 100kb,并且您不能减小数据包的大小。

具有不同的连接可确保通常在获取数据时发生的流水线操作不会导致级联超时。 Microsoft 文档中也推荐使用多连接,请滚动到底部并查看第 3 点

https://docs.microsoft.com/en-us/azure/azure-cache-for-redis/cache-troubleshoot-client#large-request-or-response-size