入门软件系统性能调优

  • 在商业软件开发中,为了提升系统性能,开发人员可以从系统的各个角度和层次对系统进行优化。而性能的调优,往往要结合各公司业务系统的具体情况进行调整,本文简述通用方案:
  • 设计调优
    从某种程序中来说,设计优化直接决定了系统的整体品质。若系统设计层面考虑不周,留下太多问题隐患,往往在之后的开发环节中会埋下祸根,而这些“质”的问题,往往很难通过通过代码层进行弥补。因此,开发人员必须再软件设计之初,认真考虑软件系统的性能问题,进行设计优化时,设计人员必须熟悉常用的软件设计方法、设计模式、基本性能组件和常用优化思想,并将其有机地集成再软件系统中。
  • 代码调优
    代码优化则设计开发的编程技巧,巧用语法糖,熟悉API,对算法、数据结构的灵活使用都是开发人员不可或缺的技能。从微观上讲,一个好的实现与一个坏的实现对系统性能的影响非常大,比如:List的实现,LinkedList与ArrayList在随机访问上的性能差别巨大、synchronized关键字的滥用、涉及io操作时资源未能及时释放、文件读写的实现方式、数据库中间件的超时bug等等。
  • JVM调优
    由于我司主要采用JAVA语言搭建业务系统,这里仅涉及JVM调优。而JVM调优往往需要开发人员对JVM的运行原理和基本内存结构有一定了解。比如堆内存结构、GC的种类以及运行条件等。
  • 数据库调优
    这里可以根据公司的实际情况,具体考虑。针对Oracle的REDO LOG会是一个有意思的调优点,这个我之后会单独写文章介绍。
  • 操作系统调优
    为了达到更好的TCP socket性能,往往需要调优一些系统参数。而各公司主机类型不同,针对UNIX、LINUX、WINDOWS服务器的参数各不相同,在这里不做赘述。

关注彪悍大蓝猫,定期分享Java+微服务技术知识
在这里插入图片描述

发布了29 篇原创文章 · 获赞 0 · 访问量 4329

猜你喜欢

转载自blog.csdn.net/u011536031/article/details/101623326