草庐IT

Redis-stat

全部标签

c# - 如何在 C# 中锁定服务堆栈 Redis 列表

在c#中,使用服务栈redis,基于以下网址,https://github.com/ServiceStack/ServiceStack.Redis/wiki/RedisLocks要锁定字符串条目,使用以下方法。RedisClientobjRedisClient=newRedisClient...//redisworkingfineobjRedisClient.SetEntry("stringkey","abcd");using(objRedisClient.AcquireLock(strRedisKey)){objRedisClient.SetEntry("stringkey","ef

redis - 按值对redis大数据进行排序

例如,我将如下数据设置到redis。SET"projects:views:PROJECT_NAME1"17SET"projects:views:PROJECT_NAME2"13SET"projects:views:PROJECT_NAME3"21PROJECT_NAME根据我从关系数据库中获取的项目记录名称而有所不同。如何按值对所有“project:views:*”进行排序。在这个例子中我们的输出应该是PROJECT_NAME321PROJECT_NAME117PROJECT_NAME213 最佳答案 像这样将它们添加到有序集合中:

php - 如何用 Golang 解码 PHP 序列化的 Redis 响应

我的Redis数据库有问题,它是用PHP序列化协议(protocol)编码的,但我不知道如何使用Golang解码这些数据,是否有类似JSONUnmarshall/Marshall的东西? 最佳答案 要在您的Go程序中读取此类数据,您必须在Go中重新实现unserializePHP函数。不过,我怀疑这是一项容易的任务。更好的解决方案是使用可移植格式在Redis中存储数据,例如JSON或GoogleProtobuf。 关于php-如何用Golang解码PHP序列化的Redis响应,我们在St

redis - 应该如何管理 Redis 有序和限制大小的集合?

我使用Redissortedsets保持排行榜,所以我使用ZREVRANGEBYSCORE来获得前10名用户。我在排序集中的键看起来像user-id:xxxx值是用户获得的积分,整数。当我检索最高的10个用户时(ZREVRANGEBYSCOREgeneral-ranking+inf-infLIMIT010)我还需要显示这些用户的数据,该信息存储在MongoDB中的Users集合。所以,我不能去MongoDB询问每次排行榜变化的前10名用户数据。那太过分了,所以我认为我可以存储最高的30或50个用户数据(给出偏移量),当新值可能进来时,它会在需要时替换任何值以保持固定大小。我认为这样我可

Redis - 如果主服务器关闭,则将哨兵配置为选择从服务器

您好,我已经创建了一个由3个aws实例组成的sentinel集群,我已经将sentinel配置为具有HAredis集群并且可以工作,但是如果我模拟主实例崩溃(主实例关闭),则sentinel安装在从属实例上,没有找到master的哨兵,选举失败。我的哨兵配置是:sentinelmonitormasterip-master63792sentineldown-after-millisecondsmaster5000sentinelfailover-timeoutmaster10000sentinelparallel-syncsmaster1所有实例的相同文件 最

python - 在 Redis 中存储数据然后获取该数据

关闭。这个问题需要更多focused.它目前不接受答案。想改进这个问题吗?更新问题,使其只关注一个问题editingthispost.关闭7年前。Improvethisquestion我有一个包含四列的Excel文件。我想获取这些数据并将其存储在MySQL中。稍后我想从这里获取数据并存储在Redis中,然后对其运行验证。我已经完成了从Excel到Python的数据导入。

java - 如何在 Redis 中缓存表

如何在Redis中缓存整个表,要么为一个键缓存整个表,要么为每个行缓存一个不同的键。如果我们为单个键缓存整个表,即使每次都将返回整个表我需要一条记录作为我的输出。我对Redis缓存很陌生,不清楚如何缓存整个表。 最佳答案 你应该使用RedisHash,因此您可以通过其键对行进行索引并在O(1)中检索元素。例如使用redis-cli(可以在http://try.redis.io中尝试)将行元素插入名为“table”的键中的散列:>HSETtable100"serializedrowwithid100"(integer)0>HSETta

redis - 获取排序集中成员的左侧和右侧

我需要能够获取排序集中给定成员左侧和右侧的成员。例如:["red","green","blue","yellow","black"]如果我要求“蓝色”左侧和右侧的成员,我需要返回“绿色”和“黄色”。我可以这样做的一种方法是使用zrank获取蓝色(2)的成员(我们称它为x)的索引,然后使用zrange和x-1的start和x+1的stop。问题:它不是原子的。如果在两个步骤(zrank和zrange)之间删除了索引有原子的方式来做到这一点吗? 最佳答案 使用LUA脚本。像这样的东西:localrank=redis.call('zran

redis - redis中通知系统的架构

我有一个用户通知系统。可以通过id向用户发送个人通知或向所有用户发送广播消息(例如,关于新功能)。现在它被实现为数据库中的单个表,其结构如下和操作:为用户插入消息为用户Y获取X消息以显示并从数据库中删除它们(不再显示第二次)为每个用户插入相同的消息(广播消息)删除所有超过N天的广播消息(为了不保留长时间未登录用户的广播消息,但不删除个人消息)现在我正在考虑将整个消息传递系统从MySQL迁移到Redis,但我在选择有效的Redis数据结构时遇到了问题。我有一个想法为每个用户创建一个列表/一组消息。个人消息传递没问题,但如果我有广播消息,我需要遍历所有列表并在其中放置一条消息。同样的问题是

mysql - 每 15 分钟刷新一次 Azure Redis 缓存

我需要每15分钟将数据从MySQL数据库同步到Redis缓存,以便缓存为最新数据。我正在使用ubuntu来托管(Node.js)webservcies。因此,每次调用restapi时,它都需要从缓存中获取数据并提供服务。所以现在我需要写一个后台作业来将MySQL数据同步到缓存内存。如果我需要编写后台作业,我可以在node.js中编写并同步它并使用crontab命令在Ubuntu中作为后台作业运行。 最佳答案 是的。您可以编写一个nodejs脚本并通过crontab命令运行它以将数据从MySQL同步到Redis。根据我的经验,您需要下