问题标签 [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 回答
1209 浏览

c# - 使用多线程设置redis时出现未知命令错误

我正在使用ServiceStack.Redis C# 客户端与 Redis 对话。

请求很少,一切正常,但是当我让LoadRunner请求它或使用多线程发出请求时,我收到一些错误,说我使用了错误的命令。

我检查了错误,似乎它切断了命令,或者它搞砸了。

这是我的代码,非常简单。有没有人遇到过这个问题?当我使用多线程调用 Push 方法时会发生错误。

0 投票
1 回答
9395 浏览

redis - 来自 JSON 的 Redis 中的 Lua

我有一个存储在 Redis 中的 JSON 字符串列表,如下所示:

密钥类似于“Event:23455”。

使用 Lua 脚本和 ServiceStack.Redis 如何提取仅包含值小于 20 的值的匿名对象?

所以我想要返回的内容如下所示:

谢谢。

2013 年 3 月 31 日更新:

在尝试了建议后,我现在遇到了一个新问题。Lua 脚本语法错误。

我收到有关“在 cjson 附近预期 '='”的 Lua 语法错误。这是我提供给 Redis 的 Lua 脚本字符串(在 C# 中):

是否有任何 Lua 或 Redis Lua 专家可以看到可能是什么问题?ie Lua 语法看起来正确吗?

2013 年 4 月 2 日更新

通过像这样在每行的末尾添加 \n 换行符来解决解析错误。

不幸的是,这可以正常工作,但由于某种原因仅返回“{}”或 ServiceStack RedisClient 中的空列表。所以我还没有到那里,但我更近了一步。

0 投票
1 回答
838 浏览

redis - 如何使用 ServiceStack.Redis 删除 redis 哈希中的乘法字段?

无法删除多重键。

我在 IRedisNativeClient 接口中找到

没有多功能键的选项

0 投票
2 回答
1448 浏览

redis - ServiceStack.Redis:无法连接:sPort:50071

我正在使用 ServiceStack Redis 客户端,我希望能够澄清可能导致以下错误的原因......“无法连接:sPort:50071”?我正在使用“PooledRedisClientManager”对象进行连接。感谢您的任何帮助。

0 投票
1 回答
4945 浏览

redis - GetClient 调用上的 Redis Timeout Expired 消息

我讨厌“信息不足”的问题。所以我会尽量提供详细的信息。在这种情况下,它是代码。

服务器:64位https://github.com/MSOpenTech/redis/tree/2.6/bin/release

分为三类:

DbOperationContext.cshttps ://gist.github.com/glikoz/7119628

PerRequestLifeTimeManager.cshttps ://gist.github.com/glikoz/7119699

RedisRepository.cs https://gist.github.com/glikoz/7119769

我们正在使用 Redis 和 Unity ..

在这种情况下,我们会收到这条奇怪的消息:

“Redis Timeout 已过期。从池中获取连接之前的超时期限已过。这可能是因为所有池连接都在使用中。”;

我们检查了这些:

  • 是问题配置问题

  • 我们是否使用了错误的 RedisServer.exe

  • 有没有架构问题

任何想法?有没有类似的故事?

谢谢。

额外信息 1

服务器统计信息上没有被拒绝的连接问题(我已经通过 redis-cli.exe info 命令检查了它)

0 投票
3 回答
263 浏览

.net - F# 处理从数据库返回的空记录

从数据库中检索唯一项目时,我需要满足客户端提供的 ID 没有数据的情况。例如,ID不正确或缓存数据已过期。

我在此示例中使用的特定 DB 客户端库是 ServiceStack.Redis,但我认为该原理适用于任何 CLR 库。

我已经使用如下所示的记录类型定义了我的数据结构。现在,当我使用客户端库检索数据库中不存在的键的数据时,将null返回一个值。这一点,我期待并且很高兴。问题是 F# 编译器不允许我在这种情况下进行模式匹配——即使它可能在运行时发生!

Redis 客户端库包含一个“ContainsKey”方法,它返回一个布尔值,我可以先使用它,但这里不需要两次调用数据库。另一种方法是使用 C# 项目中定义的类作为数据结构,但这涉及太多开销。该属性也不允许在 上进行匹配null

我想知道我应该使用什么约定来处理这种情况,因为这似乎是一个非常常见的问题?

0 投票
1 回答
501 浏览

c#-4.0 - Lua脚本优化

我正在尝试通过 c# 使用 using 连接 redis ServiceStack.Redis

我已经编写了下面的代码来根据指定的密钥验证数字。

argv[1]是关键

argv[2]是数字

逻辑步骤:

  • 获取当前值
  • 检查当前值是否不应小于或等于 0
  • 检查当前值 - 传递的值是否不应小于 O
  • 如果当前值 - 通过不小于 0 则将(当前值 - 通过)设置为当前值
  • 获取当前值

是否可以优化和调整以下 lua 脚本以提高性能。请帮忙。

0 投票
0 回答
236 浏览

redis - ServiceStack.Redis 3.9.71 是否与 Redis 2.8.X 兼容?

3.9.71 是 ServiceStack.Redis 的最新 BSD 版本。但是 Redis 继续使用 BSD 许可证。

redis (2.6.X -> 2.8.X) 有合并所需的更改 https://raw.github.com/antirez/redis/2.8/00-RELEASENOTES

那么问题来了:我们可以在不升级 ServiceStack.Redis 的情况下将 Redis 升级到 2.8.X 吗?(生产环境)

谢谢

0 投票
2 回答
829 浏览

servicestack - ServiceStack 消息队列处理和 Profiler

我目前正在试用 ServiceStack 的持久性迷你分析器功能,目前在为我的 Redis 消息队列处理程序注册配置文件信息时遇到问题。

更多背景知识:我有一些常规的 REST api 处理程序,它们接收请求,推迟帐户信息的一些更新并将 OK 回复给调用者。这些消息使用ServiceStack Redis MQ 模式发布到 Redis 服务器。因此,Redis 消息处理注册为:

我的消息也得到了妥善处理。

自定义 ServiceRunner中,我启用了对所有请求的分析,BeforeEachRequest并添加了一个自定义 Profiler 步骤,如下所示:

我的所有 HTTP REST 请求都发送到 SQL 表,但没有注册任何 MQ 处理程序调用。而且我 100% 确信处理程序确实正在执行,因为该执行的结果存储在 MongoDB 集合中。

有什么我想念的吗?

- 编辑 -

我忘了提到这个项目确实是通过 ASP.NET 应用程序托管的。AppHost 在 Global.asax 中初始化App_Start- 我只是发现“请求前”处理自定义服务运行程序而不是 ASP.NETBegin_Request处理程序更方便。

0 投票
1 回答
255 浏览

redis - Redis - 通过多个键查询

我使用 redis 通过登录时生成的 guid 存储用户会话。我将其用作会话对象中的键。

如果我要锁定用户的帐户,我目前必须检查所有会话并检查它们是否是用户的然后删除它们。

有没有办法也可以通过用户 ID 进行查询?我应该使用仅具有标准键值的排序集吗?