1、swappiness

禁止系统使用swap空间,配置/etc/sysctl.conf中的vm.swappiness=0

2、Scheduler调度

Scheduler调度,指的是磁盘的IO调度算法,下面聊一聊linux的几种IO调度算法

查看当前系统磁盘的sda的IO调度算法。

cat /sys/block/sda/queue/scheduler

其中:

  • noop(No Operation,电梯式调度算法):通过一个简单的FIFO(先进先出)队列将请求按先来先处理的顺序处理,但对于相邻的IO请求,noop算法会进行合并再处理。在机械硬盘读取需求需要磁头在磁道上不断地来回摆动来完成读取,而noop算法则是写优先的调度算法,所以读的性能表现不佳。但SSD磁盘不同于传统的机械硬盘,靠磁头在高速旋转的磁盘上运动来读取数据,ssd通过LBA(Logical Block Address,逻辑地址块)来访问数据,性能远远高于机械硬盘
  • cfq(Completely Fair Queuing,完全公平队列):在linux kernel 2.6.18内核之后的2.6系列内核中,cfq是默认的IO调度算法,它为每一个进程创建一个队列来处理这个进程所有的IO请求,然后再分配CPU时间来处理这些队列,这种做法可以确保每个进程都能很好地获得IO带宽。CPU处理时间片和IO请求队列的数量都是可以通过IO优先级来控制的。
  • deadline:最后期限调度算法。在RedHat 7系统开始,Deadline调度算法成为默认的磁盘调度算法,它为了保证每个IO请求都能在deadline(最后期限)之前得到处理以避免出现IO饿死的情况。deadline调度算法为读和写分别创建了一个deadline队列,默认情况下读操作的deadline时间是500ms,写操作的deadline时间是5s,并且读队列被赋予较高的优先级,因为进程通常会阻止读操作。在每个IO请求完成之后,下一次IO操作之前,deadline算法会判断两个deadline队列中是否有即将到期的请求,这些请求会被优先处理,确保该IO请求不被饿死
  • anticipatory:预测IO调度算法。在Linux Kernel2.6.0至2.6.18版本中,anticipatory是默认的磁盘调度算法,但在linux kerne 2.6.33之后不再用这种调度算法。他的原理是在每次完成IO请求,开始新的IO操作之前设置了6ms等待,如果在6ms之内收到读IO的请求,anticipatory调度算法就可以立即满足这个要求

针对DB服务器,应如何调整磁盘调度算法呢?

1)DB服务器上配置了SSD硬盘,那么这种场景下,NOOP算法是最优的,因为它读写数据不涉及磁盘转动,磁头定位。配置方法如下:

echo "Noop" >/sys/block/sda/queue/scheduler

2)DB服务器上配置的就是普通的SAS盘,这种场景下,Deadline是最优的,这也是Mysql标准调优中常用的调优参数。配置方法如下。

echo "deadline" >/sys/block/sda/queue/scheduler

DB服务器中的参数优化的更多相关文章

  1. Skype 服务器客户端策略参数优化

    1.skype通讯录原理 对于skype客户端的通讯录同步,首先说说原理,通讯簿信息是从AD同步的skype前端服务器(每天1:30),在从前端服务器同步的客户端(大概1小时内同步一次). skype ...

  2. db服务器参数优化

    1.swap分区 swap作用是在系统内存不够的情况下,当做临时的内存使用. swap是在硬盘上,性能肯定没有再内存好,当系统内存使用超过40%的时候, swap会可能被使用,而系统一旦使用swap会 ...

  3. Linux中MySQL配置文件my.cnf参数优化

    MySQL参数优化这东西不好好研究还是比较难懂的,其实不光是MySQL,大部分程序的参数优化,是很复杂的.MySQL的参数优化也不例外,对于不同的需求,还有硬件的配置,优化不可能又最优选择,只能慢慢的 ...

  4. Linux(Centos )的网络内核参数优化来提高服务器并发处理能力【转】

    简介 提高服务器性能有很多方法,比如划分图片服务器,主从数据库服务器,和网站服务器在服务器.但是硬件资源额定有限的情况下,最大的压榨服务器的性能,提高服务器的并发处理能力,是很多运维技术人员思考的问题 ...

  5. 梯度优化算法总结以及solver及train.prototxt中相关参数解释

    参考链接:http://sebastianruder.com/optimizing-gradient-descent/ 如果熟悉英文的话,强烈推荐阅读原文,毕竟翻译过程中因为个人理解有限,可能会有谬误 ...

  6. OpenCV中的SVM参数优化

    OpenCV中的SVM参数优化 svm参数优化opencv SVMSVR参数优化CvSVMopencv CvSVM        SVM(支持向量机)是机器学习算法里用得最多的一种算法.SVM最常用的 ...

  7. 手机在线更新系统MySQL数据库服务器参数优化mycnf,16G内存8核CPU,

    业务场景: 后台支持手机在线更新系统,db服务器内存16G,8核,dell的pc服务器. qps: 200个左右 tps: 1个左右 一分钟50几个 sort_buffer_size = 32M 大了 ...

  8. MySQL数据库服务器参数优化mycnf,16G内存8核CPU,

    业务场景: 后台支持手机在线更新系统,db服务器内存16G,8核,dell的pc服务器. qps: 200个左右 tps: 1个左右 一分钟50几个 sort_buffer_size = 32M 大了 ...

  9. [转载]linux下编译php中configure参数具体含义

    编译N次了   原来这么回事 原文地址:linux下编译php中configure参数具体含义作者:捷心特 php编译参数的含义 ./configure –prefix=/usr/local/php ...

随机推荐

  1. [转]xml文件中的转义字符

    原文地址:http://www.cnblogs.com/zhxhdean/archive/2012/02/08/2342498.html 如果在XML文档中使用类似"<" 的 ...

  2. [转]Hibernate设置时间戳的默认值和更新时间的自动更新

    原文地址:http://blog.csdn.net/sushengmiyan/article/details/50360451 Generated and default property value ...

  3. jsp内置对象作业2-留言簿

    1.留言簿页面:liuYan.jsp <%@ page language="java" contentType="text/html; charset=UTF-8& ...

  4. 如何录制手机屏幕并转成gif

    因为上一篇博客需要展示一些软件操作过程,如果直接截图的话一来可能需要多张图,二来表达也不方便,所以特意去查了下如何录制手机屏幕操作,然后转成gif,嵌入进博客中,这样表达起来就方便多了.话不多说,总结 ...

  5. jquery-遍历each

    使用案例一 $.ajax({ url : webPath + "/clickCount", type : "POST", dataType : "js ...

  6. 使用jmeter进行性能测试-Jmeter教程及技巧汇总 (转)

    http://www.jmeter.cf/loadtesting-jmeter.html 为什么使用jmeter, 它免费开源, 不断发展, 功能逐渐强大. 可以做功能,负载, 性能测试.一套脚本可以 ...

  7. 【USACO 1.3】Barn Repair

    贪心,去掉最大的min(m,c)-1个间隔 /******************************************* TASK: barn1 LANG: C++ Created Tim ...

  8. 细说new与malloc的10点区别

    前言 几个星期前去面试C++研发的实习岗位,面试官问了个问题: new与malloc有什么区别? 这是个老生常谈的问题.当时我回答new从自由存储区上分配内存,malloc从堆上分配内存:new/de ...

  9. 精通Web Analytics 2.0 (4) 第二章:选择你的网络分析灵魂伴侣的最佳策略

    精通Web Analytics 2.0 : 用户中心科学与在线统计艺术 第二章:选择你的网络分析灵魂伴侣的最佳策略 在Web Analytics 2.0的新世界秩序中,您必须跳出"单一真理来 ...

  10. Anroid Studio入门

    转载:http://www.apkbus.com/forum.php?mod=viewthread&tid=255186&extra=page%3D1%26filter%3Dautho ...