草庐IT

redis-test

全部标签

database - Redis `DUMP` 命令,但人类可读?

我已经搜索了一段时间,但似乎找不到任何方法以人类可读的方式打印Redis中任何内容的值(也许可以,但不适用于列表)。这是一个例子。我有一个包含一项的列表:"\x01\x01\xc3D`F(\x11{\"eventName\":null,\x80\x10\x03Valu\xe0\x00\x11\x06siteKey\xc0\x01vi\x10\x03orId\xc0\x10\x06referer\xe0\x02\x0e\x03resh\xe0\x01\x1f\x06session@\x10\x1f\"sv0l5fdqk1rv26k1qeb367kr53\",\"co\x01nt\x8d\

ruby - 在 Redis 中将数组设置为哈希值

我将redis与ruby​​一起使用,我希望redis生成一个散列,其中的值是一个数组。但是,该数组是一个键的值,该键是另一个键的值(简称-另一个哈希中的哈希)。arr=["this","is","an","array"]r=Redis.newr.hset("super_key","key",arr)这给了我错误:ERRwrongnumberofargumentsfor'hset'command。我希望散列看起来像这样:{"super_key"=>{"key"=>["this","is","an","array"]}}那么执行此操作的正确方法是什么? 最佳答

ruby - 在 Redis 中将数组设置为哈希值

我将redis与ruby​​一起使用,我希望redis生成一个散列,其中的值是一个数组。但是,该数组是一个键的值,该键是另一个键的值(简称-另一个哈希中的哈希)。arr=["this","is","an","array"]r=Redis.newr.hset("super_key","key",arr)这给了我错误:ERRwrongnumberofargumentsfor'hset'command。我希望散列看起来像这样:{"super_key"=>{"key"=>["this","is","an","array"]}}那么执行此操作的正确方法是什么? 最佳答

Redis:如何从奴隶更新主人?

我们有两台redis服务器我们需要两者相同。如果任何客户端更新任何服务器,则服务器必须更新其他服务器。我刚刚试用了redisreplicationfuture它很棒,但它以一种方式工作Master=>slave我需要让它以两种方式工作Master=>slaveMaster如果可能的话? 最佳答案 您所描述的称为多主机设置,这在Redis中是不可能的。 关于Redis:如何从奴隶更新主人?,我们在StackOverflow上找到一个类似的问题: https://

Redis:如何从奴隶更新主人?

我们有两台redis服务器我们需要两者相同。如果任何客户端更新任何服务器,则服务器必须更新其他服务器。我刚刚试用了redisreplicationfuture它很棒,但它以一种方式工作Master=>slave我需要让它以两种方式工作Master=>slaveMaster如果可能的话? 最佳答案 您所描述的称为多主机设置,这在Redis中是不可能的。 关于Redis:如何从奴隶更新主人?,我们在StackOverflow上找到一个类似的问题: https://

redis - 如何使用 Redis 实现临时排行榜?

使用Redis,使用排序集实现记分板很简单,但我不确定如何使用滚动时间窗口(即30/60/90天窗口)实现记分板。由于排序集条目没有任何时间成分,实现基于时间的排行榜的最佳方式是什么? 最佳答案 您可以仔细考虑以下两种通用方法(即需要填写详细信息;):1)使用Redis的ZSET(有序集)的小数特性来存储时间和用户的(?)分数(例如,整数部分可以是时间戳,小数部分是分数)。时间戳部分的范围可以给您时间效果,但为了排序,您必须重置纪元值的“LSB”。2)使用不同的排行榜,每个滚动窗口一个,并定期或在接触数据库时维护它们。第一种方法更简

redis - 如何使用 Redis 实现临时排行榜?

使用Redis,使用排序集实现记分板很简单,但我不确定如何使用滚动时间窗口(即30/60/90天窗口)实现记分板。由于排序集条目没有任何时间成分,实现基于时间的排行榜的最佳方式是什么? 最佳答案 您可以仔细考虑以下两种通用方法(即需要填写详细信息;):1)使用Redis的ZSET(有序集)的小数特性来存储时间和用户的(?)分数(例如,整数部分可以是时间戳,小数部分是分数)。时间戳部分的范围可以给您时间效果,但为了排序,您必须重置纪元值的“LSB”。2)使用不同的排行榜,每个滚动窗口一个,并定期或在接触数据库时维护它们。第一种方法更简

c# - 从 Redis 映射数据的有效方法

我正在使用Redis和ServiceStack.Redis作为客户端。我最初使用“AutoMapper”将缓存的对象映射到域对象中,但这非常慢。使用其他人的示例,我设置了一个自定义映射器,但这也非常慢。下面的代码有什么明显的错误吗?从Redis映射1000个项目需要4-5秒。这是引入延迟的“GetByIds”客户端方法,但我想要一种有效的方法来存储集合,因为Redis中的ID列表看不到另一种将它们转换为域对象列表的方法。谢谢!interfaceIMapToNew{TTargetMap(TSourcesource);}interfaceIMapToExisting{voidMap(TSo

c# - 从 Redis 映射数据的有效方法

我正在使用Redis和ServiceStack.Redis作为客户端。我最初使用“AutoMapper”将缓存的对象映射到域对象中,但这非常慢。使用其他人的示例,我设置了一个自定义映射器,但这也非常慢。下面的代码有什么明显的错误吗?从Redis映射1000个项目需要4-5秒。这是引入延迟的“GetByIds”客户端方法,但我想要一种有效的方法来存储集合,因为Redis中的ID列表看不到另一种将它们转换为域对象列表的方法。谢谢!interfaceIMapToNew{TTargetMap(TSourcesource);}interfaceIMapToExisting{voidMap(TSo

redis - 当 Redis 被驱逐到可用内存或过期时,它可以转储 key 吗

我想这样使用Redis从文件db加载条目(由用户读取/编辑),设置在一段时间内过期在Redis上编辑和阅读它们当它被Redis自动删除时(当它被删除时)存储回文件db被驱逐到可用内存或已过期) 最佳答案 这不是Redis在OOTB中做的事情,但只要稍加努力就可以实现。有关更多信息,请参见:https://stackoverflow.com/a/25827681/3160475 关于redis-当Redis被驱逐到可用内存或过期时,它可以转储key吗,我们在StackOverflow上找到