计算机系统性能的重要估计法则:little's law
2007-05-12 22:07
337 查看
1. 引语:
性能估算是一个优秀的程序员应该具备的基本素质。
在排队理论中,little‘s law是一个重要而通用的估算公式,它对于我们估算我们所开发的系统的性能,特别是当我们开发服务器端的并发软件系统时,有很重要的指导意义。
2. little‘s law 估计公式。
在一个稳定的系统中,平均的客户数(访问该系统的客户)等于客户到达该系统的平均速率乘以客户在该系统中花费的平均时间,即:
这是一个粗略的估算公式。但对于估算开发的系统的性能非常有用,特别是当我们开发服务器端的应用时,用这个公式来估算系统所承担的压力,是非常有用的。所谓稳定的系统,指的是:
’客户到达该系统的平均速率 == 客户离开该系统的平均速率 ‘ 成立。
3. 例子。
假定:我们所开发的并发服务器,并发的访问速率是: 1000客户/分钟,每个客户在该服务器上将花费平均0.5分钟,根据little's law规则,在任何时刻,服务器将承担 1000×0.5=500 个客户量的业务处理。假定过了一段时间,由于客户群的增大,并发的访问速率提升为 2000客户/分钟。在这样的情况下,我们该如何改进我们系统的性能?
根据little's law规则,有两种方案:
第一:提高服务器并发处理的业务量,即提高到2000×0.5=1000。 或者,
第二:减少服务器平均处理客户请求的时间,即减少到: 2000×0.25=500。
4. little‘s law 的生活应用。
假设你排队参观某个风景点,该 风景点固定的容纳人数是:60人。每个人在该 风景点停留的平均时间是:3小时。假设在你的前面还排有20个人,问:你估计你大概等多少时间才能进入该 风景点
(答案:一个小时)
5. 参考资料:
Programming Peals.
性能估算是一个优秀的程序员应该具备的基本素质。
在排队理论中,little‘s law是一个重要而通用的估算公式,它对于我们估算我们所开发的系统的性能,特别是当我们开发服务器端的并发软件系统时,有很重要的指导意义。
2. little‘s law 估计公式。
在一个稳定的系统中,平均的客户数(访问该系统的客户)等于客户到达该系统的平均速率乘以客户在该系统中花费的平均时间,即:
这是一个粗略的估算公式。但对于估算开发的系统的性能非常有用,特别是当我们开发服务器端的应用时,用这个公式来估算系统所承担的压力,是非常有用的。所谓稳定的系统,指的是:
’客户到达该系统的平均速率 == 客户离开该系统的平均速率 ‘ 成立。
3. 例子。
假定:我们所开发的并发服务器,并发的访问速率是: 1000客户/分钟,每个客户在该服务器上将花费平均0.5分钟,根据little's law规则,在任何时刻,服务器将承担 1000×0.5=500 个客户量的业务处理。假定过了一段时间,由于客户群的增大,并发的访问速率提升为 2000客户/分钟。在这样的情况下,我们该如何改进我们系统的性能?
根据little's law规则,有两种方案:
第一:提高服务器并发处理的业务量,即提高到2000×0.5=1000。 或者,
第二:减少服务器平均处理客户请求的时间,即减少到: 2000×0.25=500。
4. little‘s law 的生活应用。
假设你排队参观某个风景点,该 风景点固定的容纳人数是:60人。每个人在该 风景点停留的平均时间是:3小时。假设在你的前面还排有20个人,问:你估计你大概等多少时间才能进入该 风景点
(答案:一个小时)
5. 参考资料:
Programming Peals.
相关文章推荐
- 计算机系统性能的重要估计法则:little's law
- Little's Law
- 软件开发与项目管理易理——布鲁克斯法则 ( Brook's Law )
- 无法启动程序'...debug/abc.exe',系统找不到指定文件"的问题
- CentOS6.5系统"libc.so.6: version 'GLIBC_2.15' not found"解决方法
- [ACM] HDU 5024 Wang Xifeng's Little Plot (构造,枚举)
- 计算机系统的设计规则,性能评测
- 深入理解计算机系统(2.3)---整数的表示方式精解》无符号与补码编码(重要)
- Little's Law(利特尔法则)的简要证明和重要应用(2012年某公司实习生招聘笔试试题)
- vs 错误1------"无法启动程序'...debug/abc.exe',系统找不到指定文件"的问题!
- 计算机系统性能评价的认识和理解
- Amdahl's Law
- HDU 5024 Wang Xifeng's Little Plot (bfs)
- 【学生信息管理系统】——实时错误'3021' BOF EOF
- 操作系统直接决定了计算机系统的整体性能
- [Django模板系统]Non-ASCII character 'xe5' in file报错问题
- java编程中'为了性能'一些尽量做到的地方
- JavaWeb编程:获取的计算机的版本号以及浏览器的版本之类的(${header['User-Agent']})
- 重装系统后 mysql "can't create table errno 121"的解决
- ubuntu 系统解决mysql连接问题(ERROR 1045 (28000): Access denied for user 'root'@'localhost' (using password: NO))