DB服务器中的参数优化
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服务器中的参数优化的更多相关文章
- Skype 服务器客户端策略参数优化
1.skype通讯录原理 对于skype客户端的通讯录同步,首先说说原理,通讯簿信息是从AD同步的skype前端服务器(每天1:30),在从前端服务器同步的客户端(大概1小时内同步一次). skype ...
- db服务器参数优化
1.swap分区 swap作用是在系统内存不够的情况下,当做临时的内存使用. swap是在硬盘上,性能肯定没有再内存好,当系统内存使用超过40%的时候, swap会可能被使用,而系统一旦使用swap会 ...
- Linux中MySQL配置文件my.cnf参数优化
MySQL参数优化这东西不好好研究还是比较难懂的,其实不光是MySQL,大部分程序的参数优化,是很复杂的.MySQL的参数优化也不例外,对于不同的需求,还有硬件的配置,优化不可能又最优选择,只能慢慢的 ...
- Linux(Centos )的网络内核参数优化来提高服务器并发处理能力【转】
简介 提高服务器性能有很多方法,比如划分图片服务器,主从数据库服务器,和网站服务器在服务器.但是硬件资源额定有限的情况下,最大的压榨服务器的性能,提高服务器的并发处理能力,是很多运维技术人员思考的问题 ...
- 梯度优化算法总结以及solver及train.prototxt中相关参数解释
参考链接:http://sebastianruder.com/optimizing-gradient-descent/ 如果熟悉英文的话,强烈推荐阅读原文,毕竟翻译过程中因为个人理解有限,可能会有谬误 ...
- OpenCV中的SVM参数优化
OpenCV中的SVM参数优化 svm参数优化opencv SVMSVR参数优化CvSVMopencv CvSVM SVM(支持向量机)是机器学习算法里用得最多的一种算法.SVM最常用的 ...
- 手机在线更新系统MySQL数据库服务器参数优化mycnf,16G内存8核CPU,
业务场景: 后台支持手机在线更新系统,db服务器内存16G,8核,dell的pc服务器. qps: 200个左右 tps: 1个左右 一分钟50几个 sort_buffer_size = 32M 大了 ...
- MySQL数据库服务器参数优化mycnf,16G内存8核CPU,
业务场景: 后台支持手机在线更新系统,db服务器内存16G,8核,dell的pc服务器. qps: 200个左右 tps: 1个左右 一分钟50几个 sort_buffer_size = 32M 大了 ...
- [转载]linux下编译php中configure参数具体含义
编译N次了 原来这么回事 原文地址:linux下编译php中configure参数具体含义作者:捷心特 php编译参数的含义 ./configure –prefix=/usr/local/php ...
随机推荐
- 【转】c# 调用windows API(user32.dll)
using System; using System.Collections.Generic; using System.Linq; using System.Text; using System.R ...
- Entity Framework Code First (四)Fluent API - 配置属性/类型
上篇博文说过当我们定义的类不能遵循约定(Conventions)的时候,Code First 提供了两种方式来配置你的类:DataAnnotations 和 Fluent API, 本文将关注 Flu ...
- 区间DP lightoj 1031
在此游戏中任意时刻的状态都是原始序列的一段子序列故: 定义d(i, j) : 表示原来序列的第i ~ j个元素组成的子序列,在双方都采取最优策略的情况下,先手得分的最大值. 状态转移时,需要枚举从左边 ...
- java-通讯stocket插件mina实例
mina是对nio的具体实现.是目前比较高效和流行的nio(非阻塞式I/O)框架 mina主要包括: 其中服务端为:NioSocketAcceptor 客户端为:NioSocketConnector ...
- maven2打包不同jdk版本的包
通常在一些特别情况下,我们需要为单独某一个构件打包多个不同jdk版本的包,用来支持不同的jdk,基于maven我们就可以很方便的做到这点. 1.在项目的pom文件中加入如下配置 <project ...
- Json-遍历
1.js遍历 var data=[{name:"a",age:12},{name:"b",age:11},{name:"c",age:13} ...
- Android核心机制
Android开篇 图解Android - Zygote, System Server 启动分析 图解Android - Binder 和 Service 图解Android - System Ser ...
- 数据库开发基础-SQl Server 控制数据库的服务+数据库的创建与管理(增删改查)
控制数据库的服务: 方法一: 1.Windows+R 打开运行 打开cmd 2.输入net start MSSQLserver 启动数据库服务 输入net stop MSSQLserver 关闭数据 ...
- AutoIt3(AU3)开发的驱动备份工具
项目相关地址 源码:https://github.com/easonjim/Backup_Driver bug提交:https://github.com/easonjim/Backup_Driver/ ...
- [NOIP2015] 提高组 洛谷P2615 神奇的幻方
题目描述 幻方是一种很神奇的N*N矩阵:它由数字1,2,3,……,N*N构成,且每行.每列及两条对角线上的数字之和都相同. 当N为奇数时,我们可以通过以下方法构建一个幻方: 首先将1写在第一行的中间. ...