Postfix性能测试(PHP版)
2014-01-06 16:56
225 查看
Postfix的性能压测(PHP版)
发送测试:分别使用PHP Mail()函数和PHPMailler smtp协议发送邮件, 推送速率是指 发送个数/PHP程序运行时间, 发送速率是指 发送个数/(PHP推送时间+postfix处理积压的时间)发送方式 | 发送量(个数*进程数) | 推送速率(封/s) | 发送速率(封/s) | 是否积压 |
---|---|---|---|---|
local | 10000*1 | 61.56509558 | 61.56509558 | 否 |
local | 5000*1 | 130.4393196 | 42.50115919 | 积压 |
smtp | 10000*1 | 21.79115444 | 21.79115444 | 否 |
smtp | 5000*2 | 41.86831494 | 41.86831494 | 否 |
smtp | 5000*3 | 55.7815742 | 55.7815742 | 否 |
smtp | 5000*4 | 64.46328991 | 64.46328991 | 否 |
积压测试: 在不推送新的邮件请求的情况下, postfix自身发送积压的邮件所需时间, local方式需要maildrop->incoming->active之后发送, smtp方式需要用smtpd进程接收到->incoming队列->active之后发送。
发送方式 | 积压个数 | 发送速率(封/s) |
---|---|---|
local | 10008 | 7.890513328 |
local | 5008 | 11.67511932 |
local | 2509 | 16.58659537 |
local | 1007 | 60.26456179 |
local | 509 | 59.08871629 |
local | 108 | 104.3172932 |
smtp | 10008 | 10.32851814 |
smtp | 5008 | 40.03314741 |
smtp | 2511 | 43.09662048 |
smtp | 1005 | 51.99071758 |
smtp | 507 | 52.73113486 |
smtp | 108 | 49.64010573 |
PHP使用smtp单进程推送(当前线上使用的模式),没有达到postfix的最大发送能力(即推送速度<发送速度), 这种模式下发送能力为21封/s。
使用本地PHP mail函数(需要配置php.ini)可以提高推送的速度,减轻PHP程序的压力,但是只能与本机的postfix交互。
队列积压越多,发送越慢, 积压>1000时, 速度明显变慢, <1000影响不大。
对于邮件发送来说速度是一个动态的概念, 比如软退多时, incoming队列的处理时间会相应变慢,判断推送速度是否过快的标准,应该以队列长度为准, 队列达到某个值比如1000(现在线上的值是500),则不再推送,否则会影响postxfix本身处理的速度。
相关文章推荐
- mysql性能测试php版本
- webbench对php和go语言的简单性能测试(含php7)
- asp php jsp 性能测试
- 关于php相关压力、性能测试备忘
- PHP性能分析,测试
- PHP中将字符串转化为整数(int) intval() printf() 性能测试
- PHP中将字符串转化为整数(int) intval() printf() 性能测试
- php 性能测试工具 xhprof使用
- [Php-Mysql]多条数据的循环插入和一次性插入的性能测试
- php性能测试工具--xhprof的安装
- PHP 5.3和5.2在递归、尾递归方面的性能测试_ideal
- LAMP之二:LAMP的性能测试以及安装xcache,为php加速 推荐
- php 测试双引号和单引号性能
- PHP性能测试Part 1 - Counting Loops(计数循环) - count()
- php测试函数性能
- Windows 下使用 KCachegrind/WinCachegrind 和 XDebug 测试php程序性能。
- xhprof php性能测试
- PHP中测试in_array、isset、array_key_exists性能
- PHP不同版本性能测试
- PHP中fwrite与file_put_contents性能测试代码