理发店模型与性能测试

来源:互联网 发布:网络创新设计大赛作品 编辑:程序博客网 时间:2024/04/29 12:23

理发店模型:

*理发店共有3名理发师;

*每位理发师剪一个发的时间都是1h;

*我们顾客们都是有时间观念的人而且非常挑剔,他们对于每次光顾理发店时所能容忍的等待时间+剪发时间是3h,而且等待时间越长,顾客的满意度越低。如果3h还不能剪完头发,我们的顾客会立马生气走人。

想象场景:

1. 当理发店内只有1位顾客时,只需要有1名理发师为他服务,其他2位理发师可以继续等待其他顾客,也肯能会帮忙打打杂。1h后,这位顾客剪完头发很满意的离开理发店。那么在这1h里,整个理发店只服务了1位顾客,这位顾客花费在这次剪发的时间是1h。

2. 当理发店内同时有2位顾客,只会同时有2名理发师在为顾客服务,另外1位发呆或者看看电视,听听音乐或者帮忙打杂。仍然是1h后,2位顾客剪完头发很满意的离开理发店。在这1h里,理发店服务了2位顾客,这2位顾客花费在剪发的时间均为1h。

3. 那么当理发店内同时有3位顾客,理发店可以在1h之内同时服务3位顾客,每位顾客花费在这次剪发的时间仍然是均为1h。

在上面几个场景中我们可以发现,在理发店同时服务的顾客数量从1位增加到3位的过程中,随着顾客数量的增加,理发店的整体工作效率在提高,但是每位顾客在理发店内所呆的时间并未延长。

不过随着顾客越来越多,新的场景出现了。假设有一次顾客A,B,C刚进理发店,外面又来了D,E,F。因为A,B,C先到,所以D,E,F只好等待,1h后,A,B,C剪完走人,每位花费1h。但是D,E,F要花费2h--1h等待时间+1h剪发时间。

通过上面这个场景我们可以发现,对应理发店来说,都是每个小时服务3位顾客——第1个小时是A,B,C,第二个小时是D,E,F;但是对于顾客D,E,F来说,“响应时间”延长了,因为他们等待了1个小时。

在新场景中,假设理发店一次来了9位顾客,根据上面的场景推断,这9位顾客中有3位“响应时间”是1小时,3位“响应时间”是2小时(等待1h+剪发1h),还有3位的“响应时间”是3h(等待2h+剪发1h)——已经达到用户所能忍受的极限。假如把这个场景中的顾客数量改为10,那么一定会有1个顾客因为“响应时间”过长而无法忍受,最终离开理发店走人。

总结:

1. 对于一个确定的被测系统来说,在某个具体的软硬件环境下,它的“最佳并发用户数”和“最大并发用户数”都是客观存在的。

2. 验证系统的可靠性和稳定性时,我们所使用的并发用户数量应该等于或小于“最佳并发用户数”。

3. 验证系统的性能时,我们应该确保系统的“最大并发用户数”要大于系统需要承受的峰值负载。

原创粉丝点击