首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >MySQL性能瓶颈- I/O还是CPU?

MySQL性能瓶颈- I/O还是CPU?
EN

Server Fault用户
提问于 2013-11-25 10:34:20
回答 1查看 9.5K关注 0票数 2

我正在开发一个web应用程序,在我的开发环境和实际环境中,在MySQL查找速度之间遇到了很大的性能差异。

数据库: 2.5GB,三个表(一个表有2700万条记录)。全文索引和搜索。在需要的地方,所有的东西都有索引。数据库包含英国所有地址的记录。

开发服务器:两岁的三星i5超级本。运行XAMPP的Windows 8。单人SSD。大多数查找不超过200毫秒,故意强调系统导致最大查找时间为5秒。

活动服务器:“混合”VPS (每个服务器最多8个节点)。硬件规格是“双英特尔Xeon处理器,至少8 CPU核心,24 of,Raid 10驱动器与15K SAS驱动器”。大多数查找大约需要3-5秒,压力测试会导致30秒的查找.

我对我的开发服务器上的数据库性能很满意,但是我真的需要生产服务器来匹配或更好地匹配它。

在我花在这个应用程序的专用盒子上之前,根据您的经验,瓶颈可能是磁盘I/O或CPU时间吗?

我只是把这个问题的答案写下来:

我在带有RAID的SSD的VPS上试用了这个应用程序。两者的区别是日以继夜,现在的查找速度甚至比我的开发机器还要快。这是一个默认的MySQL安装,没有对缓存、最大内存使用量和其他参数进行编辑。

EN

回答 1

Server Fault用户

回答已采纳

发布于 2013-11-25 10:55:59

暂时忽略MySQL --所有数据库都是一样的。物理并不关心开源。

一般情况下,你是IO有限公司,除非你不是。最后一种方法是拥有足够的RAM来缓存内存中的所有IO操作--这是大型OLAP工作负载的典型情况。但是,任何事务性的限制都比CPU早得多,除非CPU很可怜(也就是说,您总是可以构建一个强制CPU过载的服务器--对于数据库服务器来说,原子可能是一个糟糕的选择)。

现在生产服务器。SOmeone主要犯了“愚蠢”的错误买东西。

Raid 10驱动器与15K SAS驱动器“。

这是大约450 IOPS每驱动器。

单SSD

这是大约40.000到60.000 IOPS -可以上升到90.000取决于磁盘和负载。

看到问题了吗?SSD是围绕SAS光盘飞行-这是一个游戏改变。SAS很慢。我在我的主数据库中使用了很多10k的SAS光盘--但是使用了SSD作为透明缓存层。

因此,除非您有足够的RAM使SAS光盘变得无关紧要(缓存内存中的所有内容),然后预加载(这在您仅有2.5g的小型数据库上是可行的).它是IO约束的。

在您的特殊情况下,我将检查配置。MySQL标准配置将IIRC不使用大量内存,无论它是否存在。使用一个微型数据库(2.5g),您应该将其全部缓存在内存中。甚至在笔记本电脑上。看起来是配置问题。

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

https://serverfault.com/questions/557205

复制
相关文章

相似问题

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