4

我正在深入研究 ServiceStack.Redis 客户端的消息传递功能,并试图理解事物。我最初的用途是将通知消息排队,然后在发送电子邮件的 Windows 服务中处理这些消息。

  1. 我可以运行多个 RedisMqServer 实例(在不同的机器上)来处理消息吗?(从我所看到的,它看起来会很好)

  2. 如果 redis 服务器死了,当它重新启动时,RedisMqServer 会从它停止的地方拾取并继续处理队列中的消息吗?(我意识到如果redis进程在保存到磁盘之前就死掉了,可能会丢失一些消息)

  3. 您还有其他入门技巧吗?

4

1 回答 1

3

我发现默认情况下 Redis 大约每 5 分钟保存一次数据。我对我的 redis.conf 文件进行了这些更改,以确保在最坏的情况下我最多会丢失 1 秒的数据:

告诉 redis 使用事务日志并每 1 秒将其刷新到磁盘。appendonly 是 appendfsync 每隔一段时间

我测试了运行多个 RedisMqServer 进程,它工作正常。

于 2013-03-30T23:07:55.763 回答