问题标签 [servicestack.redis]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
1 回答
488 浏览

c# - RedisClientManager,在 mscorlib.dll 中发生了“System.StackOverflowException”类型的未处理异常

我正在使用 RedisClientManager 并且我正在尝试设置对象时在 mscorlib.dll 错误中发生“System.StackOverflowException”类型的未处理异常

和用户:

序列化ApplicationUser时发生错误,我尝试添加[JsonIgnore]ICollection,因为嵌套循环,(优惠券包含用户)我找不到什么问题?

0 投票
0 回答
87 浏览

c# - 我需要处理 RedisMqServer 吗?

我有两个 RedisMqServer 作为 Windows 服务运行。它们都存在于不同的服务器上,但使用相同的 Redis 实例。

如果 Windows 服务停止,我已将其设置为处置 RedisMqServer。这具有从 redis 消息队列中取消订阅两个服务器的不良影响。

我可以调用 StopWorkerThreads() 并在 redis 客户端管理器上处理吗?是否只是 redis/servicestack 不适合以这种方式使用的情况。

0 投票
1 回答
335 浏览

c# - ServiceStack.Redis GetNextSequence 调用将什么放入 redis 数据库?

我已经搜索了文档,但没有找到放入 redis 数据库(如果有的话)来跟踪 IRedisTypedClient 的“GetNextSequence”的内容。这是因为我开始看到我自己的钥匙以外的其他钥匙。我不确定我是否做错了什么来获取这些额外的密钥,或者它是否是 ServiceStack 跟踪某些值的方式。如果是,我想知道它什么时候这样做,这样我就知道所有出现的“面包屑”是什么。

这是我的简化示例:

当它执行 GetNextSequence 时,它​​会在我自己进行任何存储之前将 seq:BucketInfo 放入 redis 数据库。这是预期的吗?

0 投票
1 回答
182 浏览

c# - 从 IRedisClient 获取仅缓存缓存命中的键/值映射

我正在使用 ServiceStack 提供的 Redis 客户端 v3。我正在实现“装饰器模式”,并有一个将缓存逻辑包装在我的存储库周围的类,这样如果有缓存未命中,我可以查看存储库中的数据。问题是在某些情况下我想添加null到缓存中,以便有一个条目,但没有任何价值。这意味着我不会去数据库获取那个值。

我需要知道的是,是否有任何方法可以仅为接口的缓存命中获取键/值映射IRedisClient

有多种方法可以使用此接口从缓存中检索值。首先,我试过这个GetAll<T>方法。T这会从缓存中返回项目,如果它不存在,则返回默认值。这对我没有帮助,因为它看起来好像我已经null为给定的键添加了一个条目。

然后我尝试GetValues了但只返回它找到的值,而不是关联的键。

最后,我尝试GetValuesMap<T>了,但这似乎与GetAll<T>.

有谁知道一种方法来获取仅缓存命中的映射?

谢谢!

0 投票
1 回答
915 浏览

c# - 如何设置容器以与 ServiceSTack.Redis 一起使用

我第一次尝试实现 Redis 缓存

我已经在我的 C# 应用程序中下载了 ServiceStack.Redis 库

我在这里遵循说明: https ://github.com/ServiceStack/ServiceStack.Redis

我假设第一步是创建一个池,所以我尝试了这个

如何在 container.Register 中设置我的容器

我围绕 IoC 容器阅读了这篇文章,但我只能绕着这个话题转。

为什么我需要创建一个容器以及如何实现它以便我可以创建我的池?

0 投票
1 回答
732 浏览

redis - 如何使用 ServiceStack 客户端管理器正确注册 Redis Master 和 Slaves?

当我在 Google Compute Engine 上配置默认 Redis 集群时,有一个主服务器和 2 个只读从服务器,并且 Redis Sentinel 正在每台机器上运行。鉴于以前的集群,我现在想在我的 ServiceStack 服务中使用它,但是 Sentinel 设置让我很难过,通常我会做一些类似的事情:

所以这个设置有几件事是不完整的,我如何指定主服务器和 2 个只读从服务器,并配置 Sentinel?

0 投票
1 回答
27701 浏览

redis - 如何格式化 ServiceStack Redis 连接字符串

如何格式化以下 Redis 连接字符串:

连接字符串:myIP,keepAlive=180,ConnectRetry=30,ConnectTimeout=5000

我开始编写单元测试,但不断收到输入字符串格式不正确的错误消息

0 投票
1 回答
208 浏览

redis - 如何使用 ServiceStack Redis 添加对象

我第一次在我的 c# 应用程序中实现 ServiceStack Redis(版本 4),但在存储实体时遇到了问题。

我首先在下面的界面中实现了“add”方法:

这似乎没有存储检索时返回 null 的对象:

所以我实现了“存储”方法(存储相同的实体——(值和视频是相同的对象))并存储与上面相同的实体:

redisClient.Store(视频);

并通过以下方式检索它:

_redisClient.GetById<TValue>(91876);

现在我能够检索实体。

我的问题是为什么所描述的 store 方法会起作用而不是 add 方法?

我可以使用 add 方法存储对象吗?

0 投票
0 回答
86 浏览

c# - 在 ServiceStack.Redis 中使用空列表

在 ServiceStack.Redis 中,仅当列表包含至少一个条目时,redis 中才会出现带有键的列表。
如果从该特定列表中删除所有条目,则执行命令:

表示从redis中移除了对应的list key。是否可以在 redis 中有一个没有任何价值的列表?创建列表后,添加值/即使从该列表中删除所有值后,执行 KEYS * 代码时相应的键也应该可用

如何创建这样的列表/集合

0 投票
2 回答
2228 浏览

c# - 从 Sentinel C# 获取 Redis Master 地址

我正在尝试使用哨兵来获取我的主服务器的连接地址,问题是哨兵仅在故障转移时发送地址,但是如果我的主服务器关闭并且从服务器被提升为主服务器并且我的应用程序刚刚启动它不会知道并且不会得到原来master宕机的消息,有什么办法可以和sentinel交流,问他认为master在用C# servicestack redis客户端的是谁?