Rumah > Artikel > pangkalan data > MongoDB服务器相关选型和基础优化参考
好久没上文章了...先上篇一先!硬盘选择1.硬盘有条件尽量选择SAS盘,不差钱的可以选择SSD、funsion-io之类的,再者。也可以根据当初应用环境选择性的考虑下SATA
好久没上文章了...先上篇一先!
硬盘选择
1. 硬盘有条件尽量选择SAS盘,不差钱的可以选择SSD、funsion-io之类的,再者。也可以根据当初应用环境选择性的考虑下SATA盘
2. RAID方面可以选择RAID10和RAID5,推荐选用RAID10,香港空间,它即有速度也相对安全,RAID5的话适合读比较多的业务。但是还是推荐用RAID10,用空间换取时间。RAID5在一块盘出现问题的情况下性能极速下降!
3. RAID卡的选择,尽量选用大牌子的RAID卡,这样减少出现各种各样的RAID卡故障。还有就是RAID缓存要选择相对比较大的!
内存选择
现在内存是白菜价的时代,现在一般笔记本上都到16G了,没有哪个公司会在内存上纠结吧,理论上任何服务器是内存越大越好,尤其是数据库服务器,至少16G以上。
CPU选择
选用64位的CPU这个不用说了,服务器空间,再者就是缓存要大,CPU要多核心多线程,但是有些数据库对多核CPU要求不是很严格,比如:MongoDB,MongoDB对内存要求很高!MySQL的InnoDB引擎则对CPU利用率比较高,尽量选用强悍点的CPU!
系统选择
1. 系统肯定是64位系统,可以是linux也可以是unix,linux有很多选择,网站空间,常用的就是CentOS Ubuntu竺,Unix就可以选择开源的FreeBSD
2. 内核选择,推荐2.6以上的内核,也不用太高
3. 文件系统的选择,有以下几种选择:EXT3/EXT4/XFS,EXT4和XFS更适合数据库,其实XFS更适合作为MySQL数据库的文件系统,可以在EXT3的基础上性能增加1.5倍。
其它方面:
网卡至少选用千M,万M更好,没万M也可以做bonding.
总之,针对不同的应用选择不的机器类型,尤其作为数据,数据库层尽量选用相对好的服务器。
下面以MongoDB服务器的硬件选择作个简单的说明:
1. 相关硬件级别
² 网络最低为千M网卡,有万M更好!
² 大内存(可以根据索引大小来设置内存,原则上是内存越大越好。)
² 双核高速CPU,mongodb实例没必要搞多核,因为mongodb对CPU多核支持不是很好,但是作为mongos路由服务器对CPU资源消耗比较多!
存放数据以隔离io的频繁操作。
2. 系统级别
² 采用64位系统支持更多的内存和让支持更大的存储数据
² 禁止文件系统更新读取次数统计(修改/etc/fstab文件)
mount -o remount,noatime /data
² 如果存储的数据中有大的文件,建议使用ext4/xfs这样的文件系统
这里可以考虑把数据目录和日志文件及相关的中间件目录(如果有的话)分开来,隔离IO
设置最大打开文件描述符
cat /etc/security/limits.conf
soft nofile 102400
hard nofile 102400