本文内容是极客时间课程——代码精进之路中代码经济篇的学习笔记。
1.用户的真实感受
用户对于软件性能的要求,和我们超市结账时的要求差不多:等待时间要短,出错的概率要小
2.应用程序性能指数(Apdex)
根据任务的响应时间,应用程序性能指数定义了三个用户满意度的区间:
-
满意:如果任务的响应时间小于T,用户感觉不到明显的障碍,就会比较满意;
-
容忍:如果任务的响应时间大于T,但是小于F,用户能感觉到性能障碍,但是能够忍受,愿意等待任务的完成;
-
挫败:如果任务的响应时间大于F或者失败,用户就不会接受这样的等待。挫败感会导致用户放弃该任务;
在互联网领域,最佳等待时间(T)和最大可容忍等待时间(F)的选择有着非常经典的经验值,那就是最佳等待时间是2秒以内,最大可容忍等待时间是最佳等待时间的4倍,也就是8秒以内。
Apdex = (1*满意样本数 + 0.5*容忍样本数 + 0*挫败样本数)/样本总数
假如有一个应用,100个样本里,有70个任务的等待时间在2秒以内,20个任务的等待时间大于2秒小于8秒,10个任务的等待时间大于8秒。那么,这个指数就是80%
Apdex = (1*70 + 0.5*20 + 0*10)/100 = 0.8
80分的成绩能不能让我们满意呢?通常来说,80分的成绩还算过得去,90分以上才能算是好成绩。
3.代码的资源消耗
如何让用户对服务感到满意呢?这就需要我们通过代码管理好内存、磁盘、网络以及内核等计算机资源。
管理好计算机资源主要包括两个方面,一个方面是把有限的资源使用得更有效率,另一个方面是能够使用好更多的资源。