gpt4 book ai didi

.net - Redis 是否提供过期和过期回调?

转载 作者:IT王子 更新时间:2023-10-29 06:01:42 26 4
gpt4 key购买 nike

我正在启动一个绿地项目。在其中,我们希望有一个过期的QUEUE。所以我添加了一个 key ,该项目将在 .. 说 .. 20 分钟后过期。

队列预计会非常大。具有不同到期时间的数千个 key 中的 10 个。

我马上想到也许可以使用 ServiceStack.Redis当然,Redis :)

到目前为止,这有望托管在 AppHarbor + RavenDb + RedisToGo 上。 Redis key 将是 RavenDb Id 的。 (字符串 - 例如 users/1 或其他)

问题

  1. 我能否利用 SS.Redis 将项目添加到具有到期时间的 Redis 队列中? (我假设,是的。例如,typedClient.ExpiresAt(..))
  2. 我可以利用 RedisToGo 作为云托管的 Redis 提供商并使用 SS.Redis 作为客户端吗? (再次假设是和是)
  3. 当项目过期时,我可以让它执行 REST GET 或 POST 到某个 URL 吗? - 所以我可以“处理”过期? (不知道)。

最佳答案

  1. 在 Redis 中,key 有过期时间,而不是列表/集合/散列等中的单个项目。如果你有一个队列(我假设这是一个 list 在 redis 术语中,在不同的末端插入/弹出),那么你的到期适用于同一队列中的所有项.对于允许每个项目过期的列表(等),确实没有一个好的比喻。坦率地说,最简单的事情可能是在有效负载中包含逻辑过期时间,如果过期则在弹出时丢弃它们

  2. 由于客户端可以通过所选端口访问服务器,因此您应该没问题 - 无论特定的客户端和服务器/提供商如何;但如果您有这些服务,验证这一点可能很简单。

  3. Redis 目前不包含任何过期触发功能,但是这已被提议并(似乎)被 2.8 版本接受(see discussion here); redis 自身不会对 url 做任何发布,但假设您可以在事件 channel 上监听并在您的代码中执行此操作

但又回到了 key 与项目的过期问题。

关于.net - Redis 是否提供过期和过期回调?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13913527/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com