小编ant*_*rez的帖子

当Redis加载大数据集时,某些Linux系统变得非常慢

我收到了一个 Redis 用户的报告,我不知道该回复什么,因为我不是 Linux 及其调度程序领域的专家,但是我们(作为 Redis 项目)需要特别解决此类问题未来与 Redis Cluster 一样,我们将在一个盒子中同时运行许多 Redis 实例。所以我在这里寻求帮助。

问题:

  • 内核:“Linux redis1 2.6.32-305-ec2 #9-Ubuntu SMP Thu Apr 15 08:05:38 UTC 2010 x86_64 GNU/Linux”
  • 大量空闲 RAM,没有其他进程进行大量 I/O。
  • 重要的是,运行在 EC2 大实例上,而不是真正的服务器上。我从未在非虚拟化环境中看到过类似的东西。EC2 实例是:“High-Memory Extra Large Instance 17.1 GB 内存,6.5 ECU(2 个虚拟内核,每个虚拟内核 3.25 EC2 计算单元),420 GB 本地实例存储,64 位平台”

基本上,一旦您重新启动大型 Redis 实例,系统就会变得很慢,您无法再在 shell 上键入内容。当 Redis 加载一个实例时,它会使用 100% 的 CPU(它以尽可能快的速度加载数据)并顺序读取 dump.rdb 文件。I/O 并不是特别高,因为负载受 CPU 限制,而不是 I/O 限制。

为什么一个有两个 CPU 和大量 RAM 的盒子,磁盘上没有交换的东西,到底为什么应该停止处理这个工作负载?

我的印象是这与它是一个 EC2 实例有很大关系,因此与使用的虚拟化技术有关,因为我一直在我的盒子中加载 Redis 24 GB 数据集而没有任何问题(即使使用其他 …

linux performance amazon-ec2 redis

14
推荐指数
1
解决办法
2944
查看次数

标签 统计

amazon-ec2 ×1

linux ×1

performance ×1

redis ×1