为什么Ubuntu在大规模网络,磁盘I / O上运行缓慢?

Modified on: Fri, 18 Oct 2019 16:20:02 +0800

不知道从哪里开始,但我经常在我的Ubuntu Hardy上看到这个奇怪的问题。

系统是带有RAID10磁盘和3Gb RAM的Core i7-920,尽管这可能除此之外。它上面有多个Samba共享。每当有人将大量(多个演出)上传到共享时,系统响应性就会显着下降(显着)。

文件系统:ReiserFS(v3)

vmstat和top都没有显示I / O的显着等待时间,非常少的阻塞进程(例如4个核心系统的2个),偶尔写入~13000个块到磁盘。平均。负载持续低于0.5(同样系统是四核,启用HT,因此它有8个逻辑核心。)

然而,即使我移动鼠标光标也严重滞后......

这是在传入大量网络I / O期间的典型vmstat输出:

vmstat -n 1
procs -----------memory---------- ---swap-- -----io---- -system-- ----cpu----
 r  b   swpd   free   buff  cache   si   so    bi    bo   in   cs us sy id wa
 1  0 419268  93724  48052 2071148    0    0     9     3   11    4  1  1 95  2
 1  0 419268  91560  48052 2073292    0    0     0     0 2396 5716  5  1 94  0
 0  0 419268  89636  48056 2075164    0    0     0     0 2173 5537  2  1 97  0
 2  0 419268  87836  48056 2077136    0    0     0     0 2057 5216  1  1 98  0
 1  0 419268  85716  48060 2078812    0    0     0 10104 2108 5261  2  1 97  0
 0  0 419268  91940  48060 2071748    0    0     0     0 2221 6153  2  1 97  0
 2  0 419268  90368  48064 2073640    0    0     0     0 2104 5384  1  1 98  0
 0  0 419268  89000  48064 2075092    0    0     0     0 1781 4700  1  1 98  0
 1  0 419268  87140  48064 2076640    0    0     0     0 2045 5104  1  1 98  0
 1  1 419268  85584  48068 2078240    0    0     0 10112 1945 4343  2  1 91  7
 0  0 419268  92668  48068 2071764    0    0     0    16 2064 5197  2  1 96  1
作者:voretaq7,Alex N

最佳答案

您可以尝试使用IO调度程序。默认的IO调度程序是CFQ,它适用于桌面,但我的经验是,对于文件服务器,截止日期往往更好。您可以随时更改IO计划程序,以便您可以轻松地对其进行试验,以查看在您的情况下哪种方法最有效。

要列出可用的io调度程序,请使用此命令。

cat /sys/block/sdb/queue/scheduler  

这应该返回noop anticipatory deadline [cfq]

要将日程安排程序更改为截止日期,请在相应的设备上使用以下命令。

sudo echo "deadline" > /sys/block/sdb/queue/scheduler

相关问答

添加新评论