我在azure中有一个.net应用程序,通过CacheManager使用redis作为缓存。应用程序使用部署槽。我想为不同的插槽有不同的redis数据库id。测试/暂存/生产插槽使用redis数据库id 0/1/2。
在cachemanager中以编程方式设置databaseid,同时将其余配置(ip、端口、ssl、密钥等)保存在web.config文件中有可能吗?
只有数据库编号不同,它存储在每个插槽的azure appsetting中。
最佳答案
我问过cachemanager的事情,你没办法做到。至少目前是这样。从web.config生成cachemanager的配置后,它将是只读的。
但对于不同的部署槽,有一个针对不同redis数据库的解决方案:
在web.config的connectionstrings部分添加redis连接字符串
在连接字符串中包含数据库ID。
请参阅cachemanager->managers部分中的此连接字符串。
看看这里的例子
https://github.com/MichaCo/CacheManager/blob/dev/test/CacheManager.Tests/app.config
使用web.config转换或将不同的连接字符串附加到azure中的不同部署槽。
关于azure - 如何在Azure中为CacheManager选择Redis databaseId?,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/46282963/