运维优化之数据读写策略优化

  运维人员的工作职责概括来说主要有三点:1、保证网站7*24不中断的提供服务  2、保证公司服务器上的数据不丢失  3、尽可能提升用户的使用体验。关于运维职责的第三点就涉及到运维人员对服务器的优化工作,而优化工作主要是以服务器内存与硬盘的使用比例的优化为核心,所谓内存与硬盘使用比例优化即尽可能让用户从内存中访问所需数据而不直接从硬盘中读取数据,这就涉及到缓存的使用,首先以两个案例说明不同场景下该如何调整读写策略。

  一、高并发、大数据量同时写入(抢红包、微博等场景)

  该场景下,如果一有数据就写入硬盘会造成性能的严重降低进而影响用户体验,所以正确的做法是利用程序先将数据写入内存,当内存中积累一定量的数据后再一起写入硬盘,在对外提供服务时将数据从硬盘中读取到内存中让用户从内存中访问数据

 

  二、并发数与写入的数据库都不大,读远多于写(信息类网站、电商网站等场景)

  该场景下由于写入的次数和数据量都不大,所以可能直接将数据写入硬盘不需要先写入内存再写入硬盘,当然对外提供服务时还是需要先将数据读到内存当中

 

上面两种场景在对外提供服务时都是将数据先读到内存中再想用户提供服务的,这种策略既有优点也有缺点,

优点:服务器性能高读取数据速度快,用户的使用体验好

缺点:断电时有丢失数据的风险

解决缺点的方法有以下三种:

1、在主板上安装蓄电磁

2、使用机房配备UPS

3、选用双路电的IDC机房托管服务器,同时服务器配备双电

 

之前有说到运维优化数据读写策略时需要用到缓存,而buffer和cache都是缓存的意思,有什么区别呢?很简单,buffer是写入缓存,cache是读取缓存。

 

常见硬盘类型与使用场景

SSD  性能是目前最高的但是价格也最贵,一般会在一些高并发但数据量比较小的场景下使用,不太会完全使用SSD而是与其他类型硬盘混合使用

SAS  性能较高相对便宜,一般在对外提供服务的服务器上使用

SATA  性能不高但是便宜,一般在一些不对外提供服务的服务器上使用,例如备份服务器

 

下面以淘宝为例,说明企业一般的硬盘使用策略

将主要数据存放在SATA盘上,然后将热点数据读取到SSD盘上并通过程序进行排序,将热度最低的数据回写到SATA盘中替换之以热度更高的数据。

posted @ 2018-01-13 20:42  魅力宁波  阅读(457)  评论(0)    收藏  举报