§5 大型Email服务器的性能评测
§5.1 评测工具介绍
由于在国内国际上,还未见成型的Email服务器性能评测软件,而SPEC公司的SpecMail2000还在开发之中(http://www.spec.org 2000年1月23日)。因此我们开发了基于SMTP和POP3协议的Email服务器性能评测软件。它也采用客户/服务器模式,客户端尽可能地向服务器发送POP3和SMTP请求。它定义 一次“MAIL操作”为一次成功的POP3操作加上一次成功的SMTP操作,最后得到的是系统在一个小时之内能支持多少次“MAIL操作”,反映了系统的峰值结果。
为了得到稳定的,最能反映服务器性能的结果,对发送和接收信件的长度作了大量测试,在使用1K、2K、4K、8K、16K等不同长度的信件分别在1、2、3、4个节点作成的Mail服务器上得到的测试结果如图5.1所示。从图中可以看出,信件长度的变化对整个系统的性能影响不大。这是主要是因为MAIL操作中大量的时间花费在用户与Mail服务器之间喋喋不休的交互上了,而信件处理占用的时间相对较小。通过各值的比较和反复实验发现,当信件长度为2K的时候,系统测得的数据最为稳定。因此把收发信件的长度定为2K。
为了避免长时间等待,缩短评测时间,我们给POP3和SMTP操作分别设置了超时时间。由于SMTP操作的时间比POP3要长,因此把SMTP的超时时间定为POP3的两倍。在使用1个节点做成的Mail服务器,让客户端创建96个线程模拟96个并发用户同时对Mail服务器操作时,得到的在一小时之内的超时操作的次数如图5.2所示,可以看到超时的时间从15s/30s增加到30s/60s时,超时次数下降250左右,而继续增加超时时间却下降不多,而且过多加长超时时间则必须使评测时间相应加长才能获得稳定可信的结构。基于上面两点的考虑,我们把POP3操作的超时时间定为30秒,SMTP为60秒
§5.2 评测结果
对单个的Mail服务器,在不采用MailProxy中转时,其峰值速度为每小时能进行29091次“MAIL操作”,而通过MailProxy中介后为27634,可以看出MailProxy使系统性能下降了5%。
为了使MailProxy不成为系统的瓶颈,必须得到MailProxy所能支持的Mail服务器地数量。通过实验,得到的数据如下: