`
wxyfighting
  • 浏览: 191169 次
  • 性别: Icon_minigender_1
  • 来自: 上海
文章分类
社区版块
存档分类
最新评论

对同学性能优化总结的一点回复

 
阅读更多

写这篇文章的目的是希望能够分享给一些处于技术上升阶段的同学,更快找到技术分享关键所在。(当然自己能力有限,有些内容也就自己根据自己实际情况来思考)
记得这两届淘宝技术大学分享的时候,都有同学问我,能说清楚技术这件事情是自己天生的能力还是后天培养的,如果是后天培养的,那么靠什么方式提升自己。我把技术人员成长分了个类:1.会解决问题的。2.会分析问题的。3.会总结问题的。4.会深化思考的。5.会分享的。
最基本的就是解决问题,不论是否有有效手段,只要解决问题就算完事。慢慢的,会解决问题的人会考虑更多,会去分析根源,不会头痛医头,脚痛医脚,那就开始分析问题,渐渐的解决问题之前会先分析,在动手,做完以后写下前因后果。当遇到问题多了,分析也多了,就会总结规律,防范与未然。再后来就会从点到面,不再简单等待面的产生,学会深化思考,从现象看到本质。最后就是融会贯通,印在脑子里,而不是写在纸上,能够分享给更多的人。
技术人员的PPT也分成两种,一种是满眼都是字,另一种是简单的几行字,一些图,原因是什么,很简单,如果不是融会贯通印在脑子里,那么生怕自己忘了,能在PPT上写多少是多少,不会临场忘记。而真正让听众感觉最真实最自然的方式,应该是分享者出自自己的下意识说的话,随时随地可以插入范例。
后面是我回复的一点内容,PPT很有技术含量(http://www.slideshare.net/cenwenchu/ss-5036757)我另外会转推一下。

总的问题:
有现象,有分析,缺少最后一铲子的挖掘,同时描述问题和解决的同时,最好先阐述本质,以免使得阅读者走向特定场景的分析,对于了解本质可能产生误导。

1.最佳线程数从cpu的角度去描述容易引起误导,cpu只是这一个应用的瓶颈,计算最佳资源利用率应该从更通用的方式去说明,同时提到最佳线程本身来说就是依据环境变化而变化,其实也就是说明了本质其实隐藏在其后。
2.测试是一方面,但是需要梳理出关键路径消耗时间来看各个阶段消耗时间,及评判系统消耗和业务消耗的比例,分析出关键路径的性能瓶颈和消耗所在,不然可能要走不少弯路,同时提到过瓶颈转移的问题会导致优化与预期的不符,总的来说要从全局去考虑优化,而不是局部系统。(判断系统消耗和业务消耗比例应该不是很精确,但是大致可以找到瓶颈在某一方)
3.IO和CPU优化提升QPS这件事情觉得举例没有说到重点,你可以把cpu也看做有一个线程池,IO有一个线程池,web容器有一个线程池,由于现在是阻塞式处理,那么处理能力就取决于最小的线程池资源和整体处理时间,当前最小线程池出现在cpu,因此cpu的处理时间缩短使得资源生命周期变短,资源利用率提高,并发处理能力提升。
4.没有极端应用的说法:),可以参看1,2,3

下面是我感觉优化在我看来最根本的点(当然这个直接给被分享者看不适合,但是结合一些正反例子就能够把问题根源说清楚)

影响TPS(QPS)的关键指标:
响应时间(RT),资源

优化手段:
简单来说,降低RT,增加资源就是提升TPS的根本。
1.入口。解决问题一般总是从降低RT开始。
2.冲突。在增加资源的时候引起RT的上升(例如增加压力导致依赖系统处理性能下降)
3.权衡。但当降低RT会增加系统复杂度和稳定性的时候,就会考虑通过增加资源来缓解问题(前提是不会增加RT)。
4.全局观。优化后瓶颈转移带来的问题。

影响RT的关键指标:
1.关键路径事务处理时间。(并行化和串行化可部分解决关键路径时间长短问题)
2.瓶颈查找(资源池的瓶颈在哪里,处理时间消耗环节在哪里)
a.cpu,memory,io,jvm等系统级别影响RT的因素定位。
b.业务关键路径中可提升的step。
c.优化后瓶颈可能转移的考虑,整体上可能导致RT时间反而增加。
d.降低资源池资源生命周期,提升回收率。(事件驱动就是很好的模式,将生命周期切割为更小片段,有状态线程生命周期越短,处理能力越强。副作用:系统复杂)

最后还是自己在做异步化的最大感受,一定要有全局观,系统内部全局观,系统之间的全局观,优化是对用户体验的优化而不是系统的优化。

分享到:
评论

相关推荐

    SQLServer性能优化与管理的艺术

    资源名称:SQL Server性能优化与管理的艺术内容简介:本书共15章,分为三部分,第一部分(第1-2章)为概述部分,阐述SQLServer方面的“性能”及相关概念。并给出常规的性能及性能相关的问题侦测的“方法论”,读者...

    SQLServer性能优化篇

    在良好的数据库设计基础上,能有效地使用索引是SQL Server取得高性能的基础,SQL Server采用基于代价的优化模型,它对每一个提交的有关表的查询,决定是否使用索引或用哪一个索引。资源截图: 资源太大,传百度网盘...

    Oracle数据库性能优化PDF

    资源名称:Oracle数据库性能优化 PDF内容简介:本书面向实际应用,从多个角度出发,对Oracle优化中的很多关键问题进行了深入全面的探讨,涵盖了Oracle优化的各个技术层面,从内存优化、IO规划及优化,到SQL优化调整...

    Oracle性能优化求生指南

    资源名称:Oracle性能优化求生指南内容简介:Oracle数据库的应用十分广泛,数据库性能的好坏直接影响应用程序能否快速响应用户指令。而Oracle数据库又比较复杂,数据库性能调优成为众多DBA最为头疼的问题。 本书...

    MySQL架构执行与SQL性能优化 MySQL高并发详解 MySQL数据库优化训练营四期课程

    课程内容进行了精华的浓缩,有四大内容主旨,MySQL架构与执行流程,MySQL索引原理详解,MySQL事务原理与事务并发,MySQL性能优化总结与MySQL配置优化。课程安排的学习的教程与对应的学习课件,详细的学习笔以及课程...

    OracleDBA高可用、备份恢复与性能优化

    资源名称:Oracle DBA高可用、备份恢复与性能优化资源目录:第 1章 RAC真应用集群 11.1 单实例数据库并发控制原理 ..... 11.1.1 并发访问的数据不一致问题 .... 11.1.2 事务以及隔离级别 .. 21.1.3 支持并发的 lock...

    SQLServer2008查询性能优化

    资源名称:SQL Server 2008查询性能优化内容简介:本书通过大量实例,详细介绍了SQL Server数据库系统优化的各种方法和技巧。内容涵盖了数据库应用系统中各种性能瓶颈的表现形式及其发生的根源和解决方法,从硬件...

    大话JAVA性能优化PDF

    资源名称:大话JAVA性能优化 PDF内容简介:《大话Java性能优化》主要提供Java性能调优方面的参考建议及经验交流。作者力求做到知识的综合传播,而不是仅仅只针对Java虚拟机调优进行讲解,另外力求每一章节都有实际的...

    OracleDatabase11g性能优化攻略

    资源名称:Oracle Database 11g性能优化攻略   内容简介: 《Oracle Database 11g性能优化攻略》由三位经验丰富的顶级OracleDBA再次联手,为读者呈现这本Oracle数据库性能优化攻略。《Oracle Database ...

    Android应用性能优化

    资源名称:Android应用性能优化内容简介:《Android应用性能优化》主要介绍如何调优Android应用,以使应用更健壮并提高其执行速度。内容包括用Java、NDK优化应用,充分利用内存以使性能最大化,尽最大可能节省电量,...

    SQLServer2012王者归来——基础、安全、开发及性能优化

    资源名称:SQL Server 2012王者归来——基础、安全、开发及性能优化内容简介:本书由浅入深,全面细致地讲述了SQL Server 2012的功能特性和开发应用。从SQL Server数据库基础到数据库安全,再到SQL Server开发及...

    Oracle学习笔记-日常应用、深入管理、性能优化

    资源名称:Oracle学习笔记-日常应用、深入管理、性能优化内容简介:Oracle学习笔记-日常应用、深入管理、性能优化Oracle 11g是最具代表性的高端关系型数据库管理系统,它在世界各地的大型商务数据库应用系统中被广泛...

    web前端性能优化

    一本讲述web前端性能优化以及实践经验分享的书籍,非常不错,值得学习

    实用负载均衡技术:网站性能优化攻略

    资源名称:实用负载均衡技术:网站性能优化攻略... 《实用负载均衡技术:网站性能优化攻略》适合对系统架构、性能维护感兴趣的初级、中级读者以及有经验的 资源太大,传百度网盘了,链接在附件中,有需要的同学自取。

    让DB2跑得更快DB2内部解析与性能优化

    资源名称:让DB2跑得更快 DB2内部解析与性能优化资源截图: 资源太大,传百度网盘了,链接在附件中,有需要的同学自取。

    web前端性能优化进阶路

    本文并非一篇讨论性能优化技术方法的文章,而更多的是对中文站搜索List页面持续两年多的前端性能优化实践的思路总结。希望对正在从事这个领域研究的前端同学能有所帮助。  简单的说,我们的性能优化实践分为三个...

    前端性能优化原理与实践

    总的来说,我们将从**网络层面**和**渲染层面**两个大的维度来逐个点亮前端性能优化的技能树。 这两个维度的知识面貌各有千秋:在网络层面,我们需要学习一些必需的理论基础作为前置知识。这部分的学习或许不需要...

    电脑性能优化常用工具大全

    资源名称:电脑性能优化常用工具大全资源目录:【】Gavotte Ramdisk(内存虚拟磁盘)【】一键清理系统垃圾文件【】为32位系统开启4GB以上大内存【】内存释放专家——MemEmpty【】让普通CPU拥有双核心的能力Process ...

    -医同学个人总结_医同学个人实习总结_医同学个人简历_医同学实习总结 --个人总结.docx

    -医同学个人总结_医同学个人实习总结_医同学个人简历_医同学实习总结 --个人总结.docx

Global site tag (gtag.js) - Google Analytics