性能优化点
2019-12-18 10:02:10 1 举报
AI智能生成
登录查看完整内容
性能测试优化点
作者其他创作
大纲/内容
性能调优策略
四个部分来讲解性能分析调优
1.性能分析方法
1.自底向上
2.自顶向下
2.基于单机的性能分析调优
1.单机调优
1,程序优化
1.系统框架选择
SSH(Struts springhibernate)
优点
缺点
2,程序优化
(1)表单压缩
(2)局部刷新
(3)仅取所需
(4)逻辑清晰
(5)谨慎继承
(6)程序算法优化
(7)批处理
(8)延迟加载
(9)防止内存泄漏
(10)减少大对象引用
(11)防止争用死锁
(12)索引
(13)存储过程
(14)内存分配
(15)并行
(16)异步
(17)使用设计好的设计模式来优化程序
(18)选择合适的IO模式,比如NIO,AIO等
2.配置优化
(1.)JVM配置优化
(2)数据库连接池
(3)TCP连接数,TCP缓存数
(4)线程池
(5)缓存机制
3.数据库连接池优化
(1)连接池的配置参数
图为spring+hibernate+C3P0的配置
(2)连接池配置多少连接合适
原则
公式
(3)监控连接池
通过对中间件的监控来监控数据库连接池
可以用命令进行查询也可以用监控工具监控
4.线程优化
(1)线程池优化
为什么要有线程池
系统性能差的一般表现
(2)CPU处理能力
服务器最佳线程数量=((线程等待时间+线程CPU时间)/线程CPU时间)*CPU数量
子主题
IO开销多的应用
TPS与线程的关系
图解
(1)在最佳线程数量之前
(2)配置最佳线程数量
(1)TPS线
(2)RT(响应时间)线
(3)内存容量
图例
JVM内存空间与线程之间的关系(计算方式看左图)
(4)系统线程数限制
Linux查看系统限制
windows查看系统限制
线程调整总结
5.DB优化
(1)优化物理结构
(2)共享SQL、绑定变量、降低高水位
(3)查询器优化
(4)单条SQL优化
(5)并行SQL
(6)减少资源争用
(7)优化内存、减少物理IO访问
1.SGA(缓存高频访问数据)
2.PGA(排序、散列)
3.AMM(自动内存管理)人工干预
(8)优化IO,进行条带化,读写分离,减少热点等。
注意
3.基于业务流程优化的性能调优
2.业务流程优化
4.基于结构(分布式、业务拆分)的性能分析与调优
3.结构优化
单机结构
集群结构
分布式结构
分布式概念
(1)为什么要服务化
(2)DB分布式的好处
(3)为什么要使用缓存,缓存那些数据
(4)怎样具有良好的扩展性
1.DNS&CDN静态加速
DNS
CDN
2.负载均衡器
LVS
Tengine
3.WEB服务分布式集群
Web服务层
请求会话状态(用session来代替)
4.App服务分布式集群
App:用用服务层,实现主要的业务逻辑
5.分布式缓存
Cache
Cache1与Cache n构成分布式缓存集群,以Redis为例
6.分布式数据库
Dubbo
Memcache
redis
Mariadb
高可用性&高可靠性&可扩展
高并发系统的设计要求
性能调优的目的:性能分析与调优旨在帮助把系统打造成一个高可用、高可靠的系统;找出性能瓶颈与风险在哪里?性能调优就是用更少的资源提供更好的服务,成本利益最大化。
性能调优常规手段
1.空间换时间
2.时间换空间
3.分而治之
4.异步处理
5.并行
6.离用户更近一点,比如CDN技术
7.一切可扩展
0 条评论
回复 删除
下一页