首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >Hdparm慢服务器

Hdparm慢服务器
EN

Server Fault用户
提问于 2010-02-07 13:59:43
回答 2查看 1.5K关注 0票数 1

我的网站服务器非常慢,我联系了我的托管公司。该公司要求我执行以下命令行:

-tT /dev/sda

其结果是:

代码语言:javascript
复制
/dev/sda:
 Timing cached reads:   1112 MB in  2.00 seconds = 555.55 MB/sec
 Timing buffered disk reads:    4 MB in  4.80 seconds = 854.16 kB/sec

我不明白这意味着什么,我读了那个人,但你能解释清楚这个结果意味着什么吗?

非常感谢。

EN

回答 2

Server Fault用户

回答已采纳

发布于 2010-02-07 14:29:02

首先,这太慢了.就像上网速度慢一样。我们的web服务器,大约7年前只花了1800美元,给出了hdparm -tT的统计数据:

代码语言:javascript
复制
 Timing buffer-cache reads:   1836 MB in  2.00 seconds = 918.00 MB/sec
 Timing buffered disk reads:   98 MB in  1.95 seconds =  50.26 MB/sec

第一个速度显示如果数据已经被缓冲,磁盘读取的速度有多快。磁盘从未被访问过,因此对于web服务器来说,它可能是毫无意义的(因为大部分时间磁盘读取可能不会被缓冲)。

第二个stat显示了真正的硬盘读取性能。在您的示例中,这意味着web服务器正在读取1MB/秒以下的数据。如果在同一服务器上有数据库,则应该将其移动到单独的服务器上,因为扫描即使是小表也需要几秒钟的时间。

票数 1
EN

Server Fault用户

发布于 2010-02-07 14:32:11

-T正在测试OS磁盘缓存的读取速度。这反映了已经缓存的数据的读取操作的性能,并告诉您对于频繁请求的数据可以期望的数据速率类型,以及预期将被完全缓存的数据速率。它确实告诉你更多关于主内存带宽的事情,而不是与磁盘本身有关的任何事情。

-t正在测试底层磁盘的实际读取速率。这绕过了OS磁盘缓存,并给出了从磁盘本身持续读取数据所期望的数据速率类型。

只有当服务器不忙做其他事情时,这些测试才能真正反映实际的系统。在它运行时使用它,生产负载将使您了解您在其运行的时间点上有多少空间,这是一个有用的指标。

在您的例子中,对于未缓冲的读取,854.16 kB/秒是一个非常低的数字。我认为,即使是相对缓慢的现代驱动器,也会带来50 sec/秒以上的数字。在您的例子中,我猜想您的服务器目前已经超载了磁盘活动,hdparm告诉您,它已经被关闭了。

造成这种情况的确切原因是另一个问题--它可能只是忙于繁重的磁盘IO活动,可能存在驱动程序\设置问题,可能存在物理问题,要么是单个驱动器存在读取问题,要么是RAID包正在重新构建。

票数 0
EN
页面原文内容由Server Fault提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://serverfault.com/questions/110397

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档