【发布时间】:2011-08-03 05:49:42
【问题描述】:
在我的一个 Rails 应用程序中,当我粘贴文本、键入和(尤其是)删除文本时,控制台开始运行非常缓慢。我可以在顶部看到 irb 正在使用大量 cpu。但我不知道如何进一步诊断这个问题。它只是在几周前开始发生。我想知道它是否可能与 readline/wirble 相关?这两个我都用。
我刚刚在另一个应用程序中尝试过,粘贴了一段文本,但它似乎同样糟糕 - 文本以每秒一个字符的速度出现!也许我的命令行历史已经填满了?我怎样才能删除它? (对于 rails 控制台,不是我的 bash 命令行历史)
感谢任何建议 - 最大
编辑 - 抱歉,应该提供一些系统详细信息。给你:
System - Ubuntu 10.04
Ruby version - ruby 1.8.6 (2007-09-24 patchlevel 111) [i486-linux]
我刚试过普通的 irb,我也遇到了同样的问题。它甚至可能更慢,它几乎在我粘贴的文本块中途停下来测试它。
我重启了很多次(我的笔记本电池坏了,所以每次拔掉电源我都必须重启)。
我不在虚拟机中。
我最近开始使用 RVM(ruby 版本管理器),这似乎与此不谋而合,尽管这可能只是巧合。但是,有问题的控制台是使用系统 ruby 发生的,而不是 rvm。
这是ps aux | grep irb 的输出:
max 12583 0.0 0.0 1756 484 pts/7 S+ Apr11 0:00 sh -c irb -r irb/completion -r "/home/max/work/rails_apps/millionaire_container/millionaire/config/environment" -r console_app -r console_with_helpers --simple-prompt
max 12584 15.9 2.7 61872 56956 pts/7 S+ Apr11 158:26 irb
max 13981 64.4 0.9 20080 18708 pts/9 R+ 09:40 29:51 irb
max 14625 21.8 0.6 15020 12628 pts/12 Rl+ 10:25 0:20 irb
max 14757 0.0 0.0 3048 804 pts/13 R+ 10:27 0:00 grep --color=auto irb
【问题讨论】:
-
在我的 Mac 上,文本显示速度非常慢,但如果我按任意键,它会立即出现。试试看
-
在普通的 irb 中也会发生这种情况吗?
-
@Max——你没有说你使用的是什么操作系统或版本,但我会从命令行中的一个普通的 ps aux 开始,看看工作集中有什么。或者只是重新启动,看看问题是否消失。观察 Mac 活动监视器(如果你在 Mac 上)可能会给你一些线索——观察 cpu 和/或观察磁盘活动。
-
我的问题是这个。你是在虚拟机里面工作吗?我是,并且发现我的主机操作系统中的进程(即 FireFox 的附加组件或扩展)会占用 CPU 周期。这会导致我的虚拟机运行缓慢。
-
@Rein、@Steve、@Tass,参见对 OP 的编辑
标签: ruby-on-rails ruby console