性能分析调优

术语:
高可用性:通常来描述一个系统经过专门的设计,从而减少停工时间,而保持其服务的高度可用性。
高可靠性:产品在规定的条件下、在规定的时间内完成规定的功能的能力。
可扩展:易于扩大规模,尤其是具有良好的水平扩展能力,处理能力与机器数量呈线性关系。

一、性能分析方法:
1)自底向上:通过监控硬件及操作系统性能指标(CPU、内存、磁盘、网络等硬件资源的性能指标)来分析性能问题(配置、程序等问题)。
2)自顶向下:通过生成负载来观察被测试系统的系统性能,比如响应时间、吞吐量;
监控的关键点:生成负载、监控性能指标。
对于没有经验的,可以用自底向上;对于有经验的,可以自顶向下。

二、单机性能分析与调优
常见的系统架构分为:用户、Web&App、DB,所以问题一般出在web服务、App服务或者DB。Web服务、App服务一般运行在中间件上,中间件和DB一般运行在操作系统上,操作系统管理计算机硬件设备(CPU、内存、磁盘、网卡等设备),这些就是我们分析的对象。

1,性能分析流程
J2EE应用架构,分为Web层(请求接入、负载均衡、页面渲染等)、应用层(业务逻辑实现)、持久化层(数据记录)。


图片.png

Client:客户浏览器,比如IE、Chrome等访问Web页面。
Load Machine:是生成负载的机器,即我们的压测机器来模拟用户负载。
Web Server:提供Web服务的服务器,即我们访问的Web页面由此服务器提供服务;一般部署在Nginx、Apache上。
Middleware:中间件,比如Tomcat、Jboss、Weblogic等。
OS:操作系统,Windows或者linux。
System Resource:系统资源,比如CPU、内存、磁盘、网络等。
App Server:应用服务器,实现业务逻辑,比如生成订单,生成统计报表等。
DB:数据库服务器,比如Oracle、Mysql、SqlServer等。
1)
RT:响应时间,一笔业务的完成时间。
TPS:每秒完成的事务数。
CPU:CPU性能指标,比如CPU利用率、CPU负载。
Mem:内存性能指标,比如可用物理内存、虚拟内存使用率。
Disks:Disk性能指标,比如Disk Time、IO等待。
Network:网络指标,如带宽使用率,任务队列长度。
2)
TCP Connections:指TCP连接数,可以用netstat命令统计得到。
Thread Pool:中间件建立的线程池,监控线程状态。
JVM:JVM性能指标,比如GC情况,Heap使用情况。
Load Average:CPU负载队列长度。
3)
DB Connections:中间件与数据库之间建立的连接数及连接状态。
4)
DB Time:消耗在数据库操作上的CPU时间。
TOP SQL:按内存占用由多到少排序SQL,按CPU占用由多到少排序SQL。
PGA、SGA:PGA\SGA内存使用情况。

三、系统性能关注点
1,System Resources(系统资源):
1)CPU利用率过高;
2)内存吃紧;
3)磁盘繁忙;
4)网络流量过大;
2,操作系统:1)系统负载;2)系统连接数的控制;3)缓存。
3,DB:慢查询、大事务、死锁、DB Time高、磁盘IO等待时间、热点数据,置入内存。
4,中间件:Tomcat、Jboss、WebLogic、WebSphere、Jetty。
JVM:中间件运行在JVM上,需要监控JVM堆内存使用情况。包括GC频率、线程状态等。
Thread pool:中间件在接收用户请求时为了节省建立连接、销毁连接的资源消耗,设计建立线程池,需要监控其使用情况,一般当超过一定的使用率可以考虑加大连接池数量。netstat
DB Connections pool(数据库连接池):netstat命令。
5,App Server(应用程序):SSH(Spring Struts Hibernate)架构MVC(Model View Controller),展现层V负责展现内容,控制层C负责请求接收,前台逻辑跳转;M层实现业务逻辑,返回数据;数据层负责与数据库打交道。业务逻辑与数据访问归到应用程序,展现层归到Web服务层。
6,Web Server(Web 服务)

四、程序优化
五、配置优化
六、数据库连接池优化
七、线程优化:线程池优化、CPU处理能力、内存容量、系统线程数限制
八、DB优化

©著作权归作者所有,转载或内容合作请联系作者
  • 序言:七十年代末,一起剥皮案震惊了整个滨河市,随后出现的几起案子,更是在滨河造成了极大的恐慌,老刑警刘岩,带你破解...
    沈念sama阅读 199,340评论 5 467
  • 序言:滨河连续发生了三起死亡事件,死亡现场离奇诡异,居然都是意外死亡,警方通过查阅死者的电脑和手机,发现死者居然都...
    沈念sama阅读 83,762评论 2 376
  • 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
    开封第一讲书人阅读 146,329评论 0 329
  • 文/不坏的土叔 我叫张陵,是天一观的道长。 经常有香客问我,道长,这世上最难降的妖魔是什么? 我笑而不...
    开封第一讲书人阅读 53,678评论 1 270
  • 正文 为了忘掉前任,我火速办了婚礼,结果婚礼上,老公的妹妹穿的比我还像新娘。我一直安慰自己,他们只是感情好,可当我...
    茶点故事阅读 62,583评论 5 359
  • 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
    开封第一讲书人阅读 47,995评论 1 275
  • 那天,我揣着相机与录音,去河边找鬼。 笑死,一个胖子当着我的面吹牛,可吹牛的内容都是我干的。 我是一名探鬼主播,决...
    沈念sama阅读 37,493评论 3 390
  • 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
    开封第一讲书人阅读 36,145评论 0 254
  • 序言:老挝万荣一对情侣失踪,失踪者是张志新(化名)和其女友刘颖,没想到半个月后,有当地人在树林里发现了一具尸体,经...
    沈念sama阅读 40,293评论 1 294
  • 正文 独居荒郊野岭守林人离奇死亡,尸身上长有42处带血的脓包…… 初始之章·张勋 以下内容为张勋视角 年9月15日...
    茶点故事阅读 35,250评论 2 317
  • 正文 我和宋清朗相恋三年,在试婚纱的时候发现自己被绿了。 大学时的朋友给我发了我未婚夫和他白月光在一起吃饭的照片。...
    茶点故事阅读 37,267评论 1 328
  • 序言:一个原本活蹦乱跳的男人离奇死亡,死状恐怖,灵堂内的尸体忽然破棺而出,到底是诈尸还是另有隐情,我是刑警宁泽,带...
    沈念sama阅读 32,973评论 3 316
  • 正文 年R本政府宣布,位于F岛的核电站,受9级特大地震影响,放射性物质发生泄漏。R本人自食恶果不足惜,却给世界环境...
    茶点故事阅读 38,556评论 3 303
  • 文/蒙蒙 一、第九天 我趴在偏房一处隐蔽的房顶上张望。 院中可真热闹,春花似锦、人声如沸。这庄子的主人今日做“春日...
    开封第一讲书人阅读 29,648评论 0 19
  • 文/苍兰香墨 我抬头看了看天上的太阳。三九已至,却和暖如春,着一层夹袄步出监牢的瞬间,已是汗流浃背。 一阵脚步声响...
    开封第一讲书人阅读 30,873评论 1 255
  • 我被黑心中介骗来泰国打工, 没想到刚下飞机就差点儿被人妖公主榨干…… 1. 我叫王不留,地道东北人。 一个月前我还...
    沈念sama阅读 42,257评论 2 345
  • 正文 我出身青楼,却偏偏与公主长得像,于是被迫代替她去往敌国和亲。 传闻我的和亲对象是个残疾皇子,可洞房花烛夜当晚...
    茶点故事阅读 41,809评论 2 339

推荐阅读更多精彩内容