将 Azure Redis 缓存拆分为主缓存和二级缓存
Splitting Azure Redis Cache into Primary and secondary cache
团队,
Azure 初学者。我是 运行 一个引用 azure redis 缓存的 Azure 网络应用程序。现在我有一个要求,我必须在第一次加载时将同事数据加载到主缓存中,并且对同事计数的任何更新都加载到二级缓存中。完成后,通过更改主键值的值来完成交换。
所以我的实现方式是首先识别哪个是主要的,哪个是次要的。 (请注意,我不确定这种方法是否正确)。我为此引入了一个主键值。所以我使用下面的代码
try
{
IServer server = cacheFactory.GetServer(getEndPoint(), null); //TODO read from config
var StoreCache = cacheFactory.GetDatabase(0, null);
StoreCache.StringSet("PrimaryCacheKey",cache.Name); //Set the primary cache key to be whatever this cache is
}
catch (Exception ex)
{
this.Logger.Error(ex, "Error setting primary cache.");
throw;
}
但这会引发一个错误,提示“对象未设置为对象的引用”。当我调试 cache.Name= 1 的值时。为什么它找不到 cache.Name 当我我正在尝试为此设置密钥。
欢迎提出任何其他建议。
实际上,这听起来正是 StackExchange.Redis
存储库中已跟踪的问题。所以,我建议您可以更新您的 nuget 版本并重新启动它。
更多的细节可以参考这篇类似的issue.
团队,
Azure 初学者。我是 运行 一个引用 azure redis 缓存的 Azure 网络应用程序。现在我有一个要求,我必须在第一次加载时将同事数据加载到主缓存中,并且对同事计数的任何更新都加载到二级缓存中。完成后,通过更改主键值的值来完成交换。
所以我的实现方式是首先识别哪个是主要的,哪个是次要的。 (请注意,我不确定这种方法是否正确)。我为此引入了一个主键值。所以我使用下面的代码
try
{
IServer server = cacheFactory.GetServer(getEndPoint(), null); //TODO read from config
var StoreCache = cacheFactory.GetDatabase(0, null);
StoreCache.StringSet("PrimaryCacheKey",cache.Name); //Set the primary cache key to be whatever this cache is
}
catch (Exception ex)
{
this.Logger.Error(ex, "Error setting primary cache.");
throw;
}
但这会引发一个错误,提示“对象未设置为对象的引用”。当我调试 cache.Name= 1 的值时。为什么它找不到 cache.Name 当我我正在尝试为此设置密钥。
欢迎提出任何其他建议。
实际上,这听起来正是 StackExchange.Redis
存储库中已跟踪的问题。所以,我建议您可以更新您的 nuget 版本并重新启动它。
更多的细节可以参考这篇类似的issue.