狠狠撸
Submit Search
如何针对业务做顿叠优化
?
Download as PPTX, PDF
?
2 likes
?
25,389 views
Jinrong Ye
如何根据业务特点进行MySQL DB优化
Read less
Read more
1 of 22
Download now
Downloaded 55 times
More Related Content
如何针对业务做顿叠优化
1.
如何针对业务做顿叠优化 吴炳锡 http://wubx.net
2.
About ME ?@吴炳锡 ?MySQL DBA
技能分享QQ群:373900864 ?中国CMUG核心组织者, MySQL布道者 ?10年+ 专职MySQL DBA,丰富的Support支撑能力 ?熟悉MySQL高可用方案 ?丰富的大型系统后端存储规划设计 ?熟悉多机房架构设计及运维 ?丰富的自动化平台开发及实践 http://imysql.com http://mysqlsupport.cn 2
3.
背景 http://imysql.com http://mysqlsupport.cn 3 小张
,你说做了DB优化, 但线上的系统还慢,好象 效果不大呀!!! +++…
4.
大纲 ? 什么时间进行优化 ? DBA介入时间及角色 ?
如何找到业务系统的优化点 ? 线上系统压测开展 ? 讨论交流 http://imysql.com http://mysqlsupport.cn 4
5.
什么时间进行优化 http://imysql.com http://mysqlsupport.cn 5 开发总监:过早优化是万恶之源 DBA:我来的时间他们已经把程序开发完了,比较烂 我刚加入,说了他们也不听,只能任他们烂下去了!!! 猪一样的队友出现了,哈哈 开发:我们DBA太烂~~~ DBA:我们开发太挫~~~
6.
什么时间进行优化 ? 项目开始 ? 学习别人怎么做,了解开始在做什么 ?
举例: ? 有一个需求 用户浏览时显示已读和未读标识 http://imysql.com http://mysqlsupport.cn 6 建一个表标识出来? 哈,猪也想到了 ?
7.
什么时间进行优化 ? BloomFilter解决的问题 ? Hash
Key空间问题 ? 通过时间换空间,引入了多次计算 ? 引入的问题 ? 有可能会出现错误 http://imysql.com http://mysqlsupport.cn 7
8.
什么时间进行优化 ? 项目进行中 ? 从我们DBA的角度看看还能帮助别人做什么 ?
举例 ? 线下布署怎么到线上规范化布署 ? 通过开全量日志观查SQL中可优化点 ? 早做准备,纠正开发环境中不爽的问题 ? 加强测试 http://imysql.com http://mysqlsupport.cn 8
9.
什么时间进行优化 ? 项目上线 ? DBA就是开发顾来的保姆,要把别人孩子养活了 ?
举例 ? 上线后是不是在预估的范围内 ? 1个月左右的反馈开发过程 ? 交维后:线上从库压力大了,你怎么办? ? 还需要开发协助吗? http://imysql.com http://mysqlsupport.cn 9
10.
什么时间进行优化 ? 总结 ? 不要报怨,弄清楚,团队当前的首要任务 ?
做别人不善长的事,做好的互补人员 ? 优化什么时间都可以做,关建要明白当前最重要的目标 http://imysql.com http://mysqlsupport.cn 10
11.
大纲 ? 什么时间进行优化 ? DBA介入时间及角色 ?
如何找到业务系统的优化点 ? 线上系统压测开展 ? 讨论交流 http://imysql.com http://mysqlsupport.cn 11
12.
DBA介入时间及角色 http://imysql.com http://mysqlsupport.cn 12 时间
角色 主要职责 初期 架构师或是学习 规划项目开发中主要技术点 及实现方式 开发期 Bug或是性能提示人员 帮着开发指出低级的Bug及 协助开发人员做一些性能优 化 线上阶段 应用保姆或监护权 应用运行是不是那样,有什 么优化点,如何做…
13.
DBA介入时间及角色 ? DBA说真的是越早介入,越好。 ? 但介入早的DBA一定要有业务分析能力,能分析出来业务的关建 性能瓶颈点 ?
如大家觉的微博业务性能瓶颈点在哪? 平时没事多想想? http://imysql.com http://mysqlsupport.cn 13
14.
大纲 ? 什么时间进行优化 ? DBA介入时间及角色 ?
如何找到业务系统的优化点 ? 线上系统压测开展 ? 讨论交流 http://imysql.com http://mysqlsupport.cn 14
15.
如何找到业务系统的优化点 ? 找到核心目标 ? 支付系统: ?
微信线下支付 VS 红包 ? DB挂了,怎么办? ? 飞信 ? 圣诞,元旦,春节 大压力 ? 网站 ? DB挂了,首页还可以显示吗? ? 抢购类业务 ? DB怎么设计才能抗的住 http://imysql.com http://mysqlsupport.cn 15
16.
如何找到业务系统的优化点 ? 支付系统 ? 前提: ?
线下支付不能停( ? 数据必须一致 ? 分级对待(基于失败设计) ? 红包在不可用的状态下(发不出去),但不能让线下支付不能用 ? 多写(业务层实现),多写一致性问题,怎么对帐较快 ? 基于状态级的支付流程设计 ? 假设DB不可写,在可读情况下进行支付 ? 以上是怎么做到呢? ? 日常逻辑+思考 http://imysql.com http://mysqlsupport.cn 16
17.
如何找到业务系统的优化点 ? 飞信项目 ? 用户可以达到,进行聊天 ?
问题: 过节容易挂 ? 通过高峰期抓取SQL,通过SQL采样分析DB内业务主要形态 ? 针对业务优化,缓存,写合并 ? 拆分,从骨干业务拆分出去 ? SQL抓取 ? Percona版本 ? Set global long_query_time=0; select sleep(5); set global long_query_time=1; http://imysql.com http://mysqlsupport.cn 17
18.
如何找到业务系统的优化点 ? 网站类业务 ? 以前在一个做彩票类的公司,大概月流水5千万左右的交易 ?
DB一挂,主站也不会显示了 ? 然后公司的客服电话就…. ? 怎么优化呢? http://imysql.com http://mysqlsupport.cn 18
19.
如何找到业务系统的优化点 ? 抢购类业务 ? 我觉的这种业务一直是对DB的一种DDOS ?
解决方案 ? 在业务前面引入接入层 ? 按需要放量 ? 排队进到后面 ? 保持DB高效吞吐 http://imysql.com http://mysqlsupport.cn 19
20.
如何找到业务系统的优化点 ? 总结 ? 找到业务核心 ?
弄明白关键业务保证 ? 重点保障 ? 追求可用,合理的引入状态机 http://imysql.com http://mysqlsupport.cn 20
21.
大纲 ? 什么时间进行优化 ? DBA介入时间及角色 ?
如何找到业务系统的优化点 ? 线上系统压测开展 ? 讨论交流 http://imysql.com http://mysqlsupport.cn 21
22.
开展线上系统压测 ? 只有经过压测的系统才是有底的系统 ? 号称的系统都是不靠谱的系统 ?
压测机可以考虑购买云主机 ? 在业务低峰期压测 http://imysql.com http://mysqlsupport.cn 22
Editor's Notes
#7:
介绍一下产濒辞辞尘算法
#14:
想啥呢? 大家有没有经历过面试过程中,别人问你一个问题,自已觉的学过,但不知道怎么答。脑子空白了。
Download