【问题标题】:What if Redis queue doesn't fit in memory?如果 Redis 队列不适合内存怎么办?
【发布时间】:2013-06-05 13:54:45
【问题描述】:

我想将 Redis 用于作业队列。我想了解的是,如果我的队列不适合内存会发生什么以及它如何影响性能?

为此,我没有太多资源;该服务器上仅运行 8GB 内存的服务器以及 MySQL、Apache 和几个中等负载的网站。我应该限制 Redis 的内存使用吗?

我的作业队列将包括 MySQL 服务器中大约 1 亿个关联行 ID。 ID 是自动递增的整数。

我首先将 ID 从 MySQL 移动到 Redis,然后我会将此队列用于多个作业,并删除所有已处理的 ID。

现在,对于这种情况,您是否建议使用 Redis 作为队列管理器或其他东西,以及如何使用?

感谢您的想法:)

【问题讨论】:

    标签: redis queue


    【解决方案1】:

    我想了解的是,如果我的队列不适合内存会发生什么 以及它如何影响性能?

    根据FAQ,如果服务器内存不足,它将开始交换,redis 性能将下降。如果您在配置中设置了 maxmemory 选项,那么写入操作将回复错误。您也可以查看自定义sharding

    我应该限制 Redis 的内存使用吗?

    首先,您应该尝试estimate 内存使用情况,以确定您的 RAM 是否足够。根据您的数据结构,它可以适应内存,也许您不必处理分片或性能下降。另一种降低内存使用量的方法是optimize

    【讨论】:

      猜你喜欢
      • 2019-10-10
      • 2018-11-11
      • 2013-01-13
      • 2016-07-31
      • 1970-01-01
      • 2017-02-21
      • 1970-01-01
      • 2021-03-09
      • 2010-10-06
      相关资源
      最近更新 更多