高性能MySQL–操作系统和硬件优化
- 4125
- MySQL
- 0
- super_dodo
- 2017/03/03
许多不同的硬件都可以影响MySQL的性能,但我们认为最常见的两个瓶颈是CPU和I/O资源。当数据可以放在内存中或者可以从磁盘中以足够快的速度读取时,CPU可能出现瓶颈。另一方I/O瓶颈一般发生在工作所需的数据远远超过有效内存容量的时候。如果有大量的查询和低延迟的要求,瓶颈可能转移到网络上,而不再是磁盘IO。
调优服务器可能有如下两个目标:低延时(快速响应),高吞吐。
顺序IO比随机IO速度快,无论是在内存还是在磁盘上,顺序比随机读快5000倍或几个数量级的差距。
备库硬件主要考虑成本,通常要跟主库差不多。在实践中,似乎大多数人都会选择以下策略,主备使用相同的硬件,或为主库购买新的硬件,然后备库使用主库淘汰的老硬件。
存储引擎通常吧数据和索引都保存再一个大文件中,这意味着用RAID(Redundant Array of Inexpensive Disks 磁盘冗余阵列)存储大量数据通常是最可行的方法。
运行不正常的网络通常也是主要的性能瓶颈之一。丢包是一个普遍存在的问题,即使1%的丢包率也足以造成显著的性能下降。域名解析系统DNS称为“阿基里斯之踵”,因此在生产服务器上启用skip_name_resolve是个好主意。
MySQL每一个连接使用一个线程,另外还有内部线程、特殊用途的线程,以及所有存储引擎创建的线程。无论哪种方式,MySQL都需要大量的线程才能有效地工作。MySQL趋势需要内核级线程的支持,而不止用户级线程,这样才能更有效的使用多个CPU。
MySQL需要的四种基本资源是:CPU、内存、磁盘以及网络资源。
爱情的力量有多大?可上九天揽月,可下五洋捉鳖。
相关阅读
- 通过Google API客户端访问Google Play帐户报告PHP库
- PHP执行文件的压缩和解压缩方法
- 消息中间件MQ与RabbitMQ面试题
- 如何搭建一个拖垮公司的技术架构?
- Yii2中ElasticSearch的使用示例
热门文章
- 通过Google API客户端访问Google Play帐户报告PHP库
- PHP执行文件的压缩和解压缩方法
- 消息中间件MQ与RabbitMQ面试题
- 如何搭建一个拖垮公司的技术架构?
- Yii2中ElasticSearch的使用示例
最新文章
- 通过Google API客户端访问Google Play帐户报告PHP库
- PHP执行文件的压缩和解压缩方法
- 消息中间件MQ与RabbitMQ面试题
- 如何搭建一个拖垮公司的技术架构?
- Yii2中ElasticSearch的使用示例