质量属性——性能
作者:互联网
性能是指系统的响应能力,即对外部刺激(事件)做出反应时所需要的时间或在某段时间内所处理的事件个数。一般我们会用等待时间、处理期限、系统吞吐量、响应抖动、未处理事件、丢失数据等指标了解系统性能。
等待时间:刺激达到和系统对其做出响应之间的时间。
处理期限:最长等待时间。
系统吞吐量:系统单位时间处理事务的次数。
响应抖动:等待时间的变化。
缺失率(未处理事件):由于系统太忙因而无法做出响应所导致的未处理事件的数量。
数据丢失:因为系统太忙所丢失的数据。
关于系统性能,A同学提出,对于一些小公司,资金不足的情况下,如何在硬件设备比较差的条件下提高系统性能?对此,我觉得可以有以下几点:
① 提高系统健壮性,考虑数据库服务器和应用服务器的冗余处理。
② 通过使用读写分离技术减轻访问数据的压力。
③ 使用缓存技术,可以使用Redis缓存服务器提高系统性能。尽量使用缓存,包括用户缓存,信息缓存等,多花点内存来做缓存可以大量减少与数据库的交互,提高性能。
④ 对于数据库的设计不要将所有数据放在一个表中,而是通过分库、分表、分区存储提高可扩展性和访问性能。
⑤ 优化数据库结构,多做索引,提高查询效率。
首先,我认为六大质量属性都是软件的必不可少的组成部分,这六个部分也并不是独立的每个部分,可用性、可修改性、性能、安全性、易用性、可测试性这些是一个整体,任何一部分出现问题必然面临这整个系统或者整个软件的崩溃。要说分开,只能说在某一方面某个属性发挥的作用较大,所发挥的影响比其他几个更大。
今天主要说说我对性能的体会。
开发人员无时不刻都在想如何将系统处理再进一步提升,比如前端web性能优化涉及:前端优化、服务器端优化、数据库查询优化等等各种优化,目的是对资源的充分利用,换句话说就是如何利用这些数据来给用户一个更好的体验,像一些时间和空间上的优化。在计算机中有这样一句话:“时间和空间不可兼得”,那么好的性能就是使用空间尽可能地少,处理速度以及响应时间尽可能的快。
其次,我们可以通过一些网上的性能测试软件,所测试的指标来更好的理解。
性能测试指标:
每秒处理请求的数量。
每次请求所消耗的平均时间
性能的优化也在于此提高请求数量(成功的数量),减少每次消耗的时间,这是性能属性应该做的。
性能是指系统的响应能力----即对外部刺激(事件)做出反应时所需要的时间或在某段时间内所处理的事件个数。
影响性能的因素:事件源的数量和到达模式。
到达模式:周期性、随机或偶然。
一般用等待时间、处理期限、系统吞吐量、响应抖动(等待时间的变化)、未处理事件(由于系统太忙无法响应)、丢失数据(由于系统太忙)等指标了解系统性能。
********************本文是作者的个人理解,希望可以帮到大家。
标签:缓存,性能,系统,响应,等待时间,质量,优化,属性 来源: https://www.cnblogs.com/lx06/p/15977936.html