|
|
网站的MySQL数据库大约1G(预计增长最大不超过1.5G),SELECT占95%以上,UPDATE和INSERT基本上没有。服务器的内存很大,有4G,然而要命的是只有一个7200转的SATA硬盘,并且不支持NCQ功能,一遇到多个并发查询时就慢的像蜗牛!
我有个不增加任何投资的改善性能的想法,大家看看如何实现?
专门划出1.5G内存来建立一个data目录的镜象,读取时只从内存中读取(不访问硬盘),写入时同时更新内存和硬盘,这样硬盘就变成一个“只写”存储器。
由于写操作很少,这样可以有效的避免硬盘操作从而提高效率,而剩余的2.5G内存也不算小。
大家说说看这个如何实现呢?
问题的关键在于如何保证读取的时候只访问内存,而写入的时候同时更新内存和硬盘。
不用ShareMemery和RamDisk的原因在于不能保证实时刷新硬盘,这样万一掉电的话,就要哭死了~ |
|