我们能否知道Redis服务器

时间:2018-06-05 07:11:07

标签: redis latency

当我跑步"延迟医生" 结果是: 戴夫,我观察到这个Redis实例中的延迟峰值。你不介意谈论它,你戴夫吗?

  1. 命令:30个潜伏期峰值(平均438ms,平均偏差513ms,周期14326.50秒)。最糟糕的事件4264ms。
  2. 快速命令:33次延迟峰值(平均128ms,平均偏差22ms,周期13180.00秒)。最糟糕的事件290ms。
  3. 我为您提供了一些建议:

    • 检查慢速日志,了解正在运行的命令执行速度太慢。有关详细信息,请查看http://redis.io/commands/slowlog
    • 系统执行不包含系统调用的Redis代码路径的速度很慢。这通常意味着系统不提供Redis CPU长时间运行的时间。你应该尝试: 1)降低系统负载。 2)如果您在同一系统中运行其他软件,则仅为Redis使用计算机/ VM。 3)检查你是否有一个吵闹的邻居"问题。 4)检查' redis-cli --intrinsic-latency 100'什么是系统中的固有延迟。 5)如果您使用的是Jemalloc,请通过使用MALLOC = libc重新编译Redis来检查问题是否与分配器相关。但是,这可能会造成碎片问题。
    • 删除,过期或驱逐(由于maxmemory策略)大对象是阻塞操作。如果您有非常大的对象经常被删除,过期或被驱逐,请尝试将这些对象分成多个较小的对象。
    • 我检测到您的流程使用了非零数量的匿名大页面。这会在不同条件下创建非常严重的延迟事件,尤其是当Redis持久保存在磁盘上时。要禁用THP支持,请使用命令' echo never> / sys / kernel / mm / transparent_hugepage / enabled',请确保将其添加到/etc/rc.local中,以便在重新启动后再次执行该命令。请注意,即使您已经禁用了THP,仍然需要重新启动Redis进程才能删除已创建的大页面。

    当我运行"延迟最新"时,结果是 1)1)"命令"    2)(整数)1528098407    3)(整数)107    4)(整数)4264 2)1)"快速命令"    2)(整数)1528103420    3)(整数)110    4)(整数)290

    我知道在1528098407,有一个命令,延迟是4秒,但我们怎么知道"哪个命令"

0 个答案:

没有答案