草庐IT

servicestack-auth

全部标签

c# - ServiceStack.Redis - 哨兵模式是否支持分片?

我想实现以下高可用性设置:2个主节点(作为一个逻辑数据集的分片与客户端key散列)2个奴隶(每个主人一个)6个哨兵(每对主/从3个)现在,我知道ServiceStack.Redis提供了通过哨兵连接到redis的api:newRedisSentinel(sentinelHosts,masterName:"mymaster").Start().我还熟悉一个计算哈希键并返回相应连接池的ShardedRedisClientManager。但我如何将它们组合在一起,以便我的输入将是一个哨兵列表(在初始化时)和一个用于请求实际数据的键?哨兵模式是否内置了对分片的支持?

c# - ServiceStack.Redis - 哨兵模式是否支持分片?

我想实现以下高可用性设置:2个主节点(作为一个逻辑数据集的分片与客户端key散列)2个奴隶(每个主人一个)6个哨兵(每对主/从3个)现在,我知道ServiceStack.Redis提供了通过哨兵连接到redis的api:newRedisSentinel(sentinelHosts,masterName:"mymaster").Start().我还熟悉一个计算哈希键并返回相应连接池的ShardedRedisClientManager。但我如何将它们组合在一起,以便我的输入将是一个哨兵列表(在初始化时)和一个用于请求实际数据的键?哨兵模式是否内置了对分片的支持?

c# - 关于ServiceStack.Redis的一些问题

支持哪个代理?如果有,我该如何使用它?是否支持hashtag?或者类似的东西?除了单元测试,有没有完整的用例?(即虽然看了官方的GitHub文档,但是还是不懂怎么用。)OfficialGitHubDocs 最佳答案 您正在链接到ConfigureRedisSentinelServers文档,所以我假设您想配置ServiceStack.Redis实例以使用RedisSentinel配置。备注RedisSentinel是Redis的高可用性解决方案(它不是代理),我建议阅读Redis'sofficialRedisSentineldocs

c# - 关于ServiceStack.Redis的一些问题

支持哪个代理?如果有,我该如何使用它?是否支持hashtag?或者类似的东西?除了单元测试,有没有完整的用例?(即虽然看了官方的GitHub文档,但是还是不懂怎么用。)OfficialGitHubDocs 最佳答案 您正在链接到ConfigureRedisSentinelServers文档,所以我假设您想配置ServiceStack.Redis实例以使用RedisSentinel配置。备注RedisSentinel是Redis的高可用性解决方案(它不是代理),我建议阅读Redis'sofficialRedisSentineldocs

.net - 如何使用 ServiceStack 将多个读取命令管道化到 Redis

使用ServiceStack,有没有办法执行多个读取命令(特别是ContainsKey命令)?存储的对象需要一段时间才能从数据库中获取,因此我们希望只获取不在缓存中的对象。我知道我可以向redis请求对象,如果它返回null,然后从数据库中获取,但是存储的对象相当大,所以我宁愿只返回一个bool列表,然后确定哪个从中查询数据库中的ID。目前我正在遍历我的ID列表(最多可以有100个左右)并使用servicestack中的ContainsKey方法。我希望避免所有来回的来回,一次性提出所有请求。 最佳答案 关于ServiceStack

.net - 如何使用 ServiceStack 将多个读取命令管道化到 Redis

使用ServiceStack,有没有办法执行多个读取命令(特别是ContainsKey命令)?存储的对象需要一段时间才能从数据库中获取,因此我们希望只获取不在缓存中的对象。我知道我可以向redis请求对象,如果它返回null,然后从数据库中获取,但是存储的对象相当大,所以我宁愿只返回一个bool列表,然后确定哪个从中查询数据库中的ID。目前我正在遍历我的ID列表(最多可以有100个左右)并使用servicestack中的ContainsKey方法。我希望避免所有来回的来回,一次性提出所有请求。 最佳答案 关于ServiceStack

c# - 如何使用 Redis 支持的 ServiceStack ICacheClient 存储和检索枚举的值

我正在使用ICacheClient和Redis在我的应用中缓存值。在一种情况下,我需要缓存枚举的值。枚举看起来像这样publicenumStatus{OK,Warn,Error}我将值添加到缓存中:cacheClient.Add(myKey,Status.Warn);当我像这样检索值时:Statusstatus;status=cacheClient.Get(myKey);由于缓存客户端返回的值与枚举值不匹配而抛出异常。我似乎得到了一个逃脱了"标记的值,例如:\"Warn\"我做错了什么吗? 最佳答案 修复似乎使用的是ServiceS

c# - 如何使用 Redis 支持的 ServiceStack ICacheClient 存储和检索枚举的值

我正在使用ICacheClient和Redis在我的应用中缓存值。在一种情况下,我需要缓存枚举的值。枚举看起来像这样publicenumStatus{OK,Warn,Error}我将值添加到缓存中:cacheClient.Add(myKey,Status.Warn);当我像这样检索值时:Statusstatus;status=cacheClient.Get(myKey);由于缓存客户端返回的值与枚举值不匹配而抛出异常。我似乎得到了一个逃脱了"标记的值,例如:\"Warn\"我做错了什么吗? 最佳答案 修复似乎使用的是ServiceS

redis - servicestack redis,使用SetEntry时,会在redis db中自动生成key为 "ids:+objectName"的set,如何禁用?

使用SetEntry时,会在redisdb中自动生成key为“ids:+objectName”的set。例如:typedClient.SetEntry("famyly:username:jhon",newFamily{FatherName="Jhon",...});将在redis数据库中自动创建一个键名为“ids:Family”的集合和一个成员如“2343443”,每次我使用SetEntry更新或修改相同的键时,“ids:Family”的集合将增加一个新的自动生成的成员。如果我经常更新key,这个集合将变得非常大。如何禁用自动生成集?这个集合在当前情况下似乎没有用。谢谢

redis - servicestack redis,使用SetEntry时,会在redis db中自动生成key为 "ids:+objectName"的set,如何禁用?

使用SetEntry时,会在redisdb中自动生成key为“ids:+objectName”的set。例如:typedClient.SetEntry("famyly:username:jhon",newFamily{FatherName="Jhon",...});将在redis数据库中自动创建一个键名为“ids:Family”的集合和一个成员如“2343443”,每次我使用SetEntry更新或修改相同的键时,“ids:Family”的集合将增加一个新的自动生成的成员。如果我经常更新key,这个集合将变得非常大。如何禁用自动生成集?这个集合在当前情况下似乎没有用。谢谢