前面介绍了服务器硬件中比较主要的部分,包括CPU,内存,IO子系统,还有网络对数据库性能的影响,内容不可能覆盖
这里面几个完整的知识,但是对于数据库选择相应的硬件,应该呢已经足够了,下面简单来做一个总结,首先我们来看CPU,
首先呢一定要在64位架构上,运行64位的系统,我们一定要在64位架构上,而对于MYSQL是盒子重要还是频率重要这样的问题呢,
我们可以这样解决,首先对于并发比较高的场景,CPU的数量比频率重要,而对于CPU密集性场景,和复杂SQL的运算,频率就比核数
要重要,频率越高就越好,如果并发性越高,又很复杂那该怎么做呢,这个时候我们就需要在成本和性能之间做一个平衡,CPU核数多
频率又高的服务器并不是没有,只是通常会比较贵
下面我们来看看内存,对于内存来说,主要有两个方法需要大家注意,一是要选择主板所能使用的最高频率的内存,
内存的频率越高,性能也就越好,吞吐量相对于而言也就会越大,二呢是内存的大小,性能又很重要的影响,足够的内存
可以把大量的随机IO,变成顺序IO,并对读写数据进行缓存,把多次写变成一次写,所以内存总是越多越好的
下面就涉及到咱们的IO子系统了,足够的内存,就可以减少随机IO来减少服务器的这种性能,但并不能避免随机IO的
发生,数据库服务器一旦用到随机IO的读写呢,就会对性能产生很大的影响,产生性能的下降,这并不是我们想要看到的,
一个高性能的IO子系统呢,也是十分重要的,对于IO子系统来说呢,使用固态存储的PCI-E卡,由于接口的性能的优势呢,
随机IO性能高于同样使用固态存储的SSD硬盘,SSD硬盘呢,可以直接使用在传统接口上,所以使用起来会更加的简单,
但是固态存储的成本呢,相对于传统的磁盘来说呢,还是比较高的,所以出于成本的考虑呢,我们可以选择由多个传统
磁盘所组成的RAID阵列来进行存储,如果要使用RAID,则建议大家,使用RAID10这个级别,而对于网络存储呢,我们可以
把它当做,提供备份文件的一种方案来使用,现在建议大家在使用网络存储高可用的方案前呢,一定要谨慎,因为网络的
复杂程度呢,一旦出现设备上的问题,很难快速的进行解决,从而会增加我们的停机时间,这并不是一种很好的高可用方案