不同角色看待性能

技术部门一般有以下几种常见的角色:开发、测试、架构师(系统管理员、DBA)、运维人员

1、黑盒测试的角度

  黑盒测试操作应用界面---数据请求经过网络发送----服务器前段接收处理----在DB Server获取相关数据----前段处理后返回数据-----应用界面收到数据响应下一步。

  黑盒测试只关心应用程序的单步响应时间,性能好坏就看应用时间多少,也就是数据流经过服务器/服务器集群经过网络传输后往返的时间总和。

2、开发角度

  1)架构合理性

  2)数据库设计合理性

  3)代码

  4)系统里内存的使用方式

  5)系统里线程使用方式

  6)系统资源是否有恶性,不合理竞争‘

  7)作为一个开发人员,只关注功能的代码实现,很少有精力去关注数据库的设计,框架的设计是否合理,系统里内存的使用方式是否合理、系统里线程使用方式是否合理、系统资源会不会存在不合理竞争。通常人会认为这是架构师考虑的问题,一般小公司也不会去关注这些事情

3、系统管理员角度

  1)硬件资源利用率

  2)JVM

  3)DB

  4)换哪些硬件能提高系统性能

  5)系统能否支持7*24小时的服务

  6)扩展性、兼容性、最大容量,可能的瓶颈

  7)作为运维人员通常关注这套系统所有服务器是否正常运行,一般关注这些服务器(数据库、中间件等服务器)的硬件资源利用率情况,如内存是否有可用空间,CPU是否超过70%,网络是否通畅、I/O是否存在瓶颈。这些服务器和配置是否能支撑几个月甚至几年稳定无问题地运行这套系统,除此之外还考虑,随着公司业务的增大,吞吐量的需求加大,是否增加服务器就可以登比例地提高系统的综合吞吐量。

4、性能测试的角度

  1)服务器硬件性能

  2)根据需求和历史数据制定性能目标

  3)建立性能通过模型

  4)对开发框架和硬件框架进行性能分析

  5)针对开发发布版本的基准测试

  6)生产环境的配置和优化

  7)制定性能测试的测试用例

  8)执行软件性能验收及稳定性测试

  9)制定性能测试的场景设计

  10)协调各部门配合

  11)特定的性能分析

补充说明:

  1、吞吐量指的是什么?

   【每秒的数据处理量】吞吐量是在给定时间段内系统完成的交易数量。即系统的吞吐量越大,说明系统在单位时间内完成的用户或系统请求越多(以比特字节、分组等测量), 系统的资源得到充分利用。

原文地址:https://www.cnblogs.com/syw20170419/p/9868077.html