文档章节

mysql设计规范之性能优化

落叶刀
 落叶刀
发布于 2016/06/06 10:02
字数 488
阅读 17
收藏 0

 性能优化 – 综合
理解业务,切合业务特点的优化效果最好
业务规划,容量预估,建立基线模型
压测数据采集,预留峰值
尽一切努力减少IO(磁盘、网络)
转变随机IO为顺序IO
努力提高内存利用率
上线前做好评估审核

性能优化 – 架构设计
保持优雅:越小越好,单库100G内
垂直拆分:按功能
水平拆分:按key哈希
单实例下数据表数量不高于1024
单表数据量尽量不高于1000万
主库写,从库只读、统计、汇总
前端做好一切cache

性能优化 – 硬件
NUMA架构,CPU直接和内存打交道
CPU不再是瓶颈,MySQL多核支持不佳
设备越来越廉价,大内存解决很多问题
SSD应用越来越广泛,未来是主力
RAID卡可有效提升IOPS及数据安全
RAID卡必须配备BBU,FORCE WB
RIAD卡的条带设置有讲究
FushionIO还是贵族

性能优化 – 系统
升级到64位
内核
IO调度:deadline,noop
VM管理:vm.swappiness=0
文件系统:xfs、ext4
全B+树,高效
分配组,提高并发度
延迟分配,减少IO
mount:nobarrier、data=ordered,writeback
加大请求队列:nr_requests
关闭NUMA

性能优化 – MySQL
化繁为简
读写分离
加大内存分配
创建合适的索引
减少锁,提高并发
合并随机IO为顺序IO
柔风细雨优于狂风暴雨
多次批量提交优于频繁提交
使用XtraDB 或 MySQL 5.5+

性能优化 – 调优工具
systemtap
sar
gdb
gcore
oprofile
pmp (Poor Man's Profiler)
dstat

性能优化 – 误区
分配内存越多越好,可能导致OS Swap
session级内存分配过大,导致OOM
索引越多越好,可能导致更多IO
Qcache设置过大,实际效果差
人云亦云,不自己动手实践
 

© 著作权归作者所有

共有 人打赏支持
落叶刀
粉丝 38
博文 120
码字总数 103957
作品 2
浦东
运维
58到家数据库30条军规解读,你认可几条?

这里面都是一些很简单的规则,看似没有特别大的意义,但真实的不就是这么简单繁杂的工作吗? 军规适用场景:并发量大、数据量大的互联网业务 军规:介绍内容 解读:讲解原因,解读比军规更重...

鉴客
2017/02/16
1K
12
MySQL 高性能表设计规范

原文出处:高广超 良好的逻辑设计和物理设计是高性能的基石, 应该根据系统将要执行的查询语句来设计schema, 这往往需要权衡各种因素。 一、选择优化的数据类型 MySQL支持的数据类型非常多,...

高广超
2017/07/27
0
0
互联网技术栈 『Contents Catalog』

image.png 编程语言 Java书单——由入门到上天 UML-类间关系 Java解读-ThreadLocal详解与应用 并发编程-Concurrent用户指南 Java并发编程-原子性变量 Java 并发工具包-常用线程池 基于事件驱...

高广超
2017/11/03
0
0
DBA的40条军规

作者介绍 贺春旸,普惠金融MySQL专家,《MySQL管理之道》第一版、第二版作者。曾任职于中国移动飞信、机锋安卓市场,拥有丰富的数据库管理经验。目前致力于MySQL、Linux等开源技术的研究。 ...

贺春旸
2017/03/08
0
0
设计神器 - 摹客设计系统上线了 | 晒出你的设计规范,赢iPad Pro!

在国内,设计规范也许还是个不太常用的概念,但是如果你正好有参与互联网公司的产品设计,你应该早就已经体会到设计规范的重要性了。UI设计师总是要花费大量的时间和精力向开发描述一大堆设计...

mo311
07/23
0
0

没有更多内容

加载失败,请刷新页面

加载更多

day99-20180926-英语流利阅读-待学习

换汤不换药的美容大忽悠:从抗衰老到肌肤焕发新生 Lala 2018-09-26 1.今日导读 说到护肤品,一个个大牌广告就浮现在我们眼前:皮肤吹弹可破的女明星手捧功能各异的瓶瓶罐罐,暗示着消费者买买...

飞鱼说编程
33分钟前
3
0
FFmpeg Maintainer赵军:FFmpeg关键组件与硬件加速

大家好!我是赵军,现就职于英特尔的DCG从事基于FFmpeg的硬件优化工作,两年多前加入FFmpeg社区,2018年4月成为FFmpeg的其中的一个FFmpeg Maintainer,主要负责FFmpeg的硬件优化工作。 概览:...

yizhichao
今天
1
0
ehlib 修改 使行号字体颜色 与标题字体颜色 一致

对ehlib 显示效果不够满意,而做的调整 修改这个过程:procedure TCustomDBGridEh.DrawIndicatorCell(ACol, ARow: Longint; AreaCol, AreaRow: Longint; ARect: TRect; AState: TGri......

vga
今天
1
0
Bash重定向详解

Bash重定向详解 Bash的重定向指的是将命令的输入和输出导向不同地方,而不是默认的标准输入、标准输出和标准错误。Bash的重定向实际上是对标准输入、标准输出和标准错误的重置,进而将所需输...

小陶小陶
今天
3
0
EventBus原理深度解析

一、问题描述 在工作中,经常会遇见使用异步的方式来发送事件,或者触发另外一个动作:经常用到的框架是MQ(分布式方式通知)。如果是同一个jvm里面通知的话,就可以使用EventBus。由于Event...

yangjianzhou
今天
54
0

没有更多内容

加载失败,请刷新页面

加载更多

返回顶部
顶部