(二)性能需求分析
一个真实的需求:
测试某系统切换成https协议之后性能的下降情况
1、http协议和https协议的区别
https协议需要到ca申请证书,一般免费证书很少,需要交费。
http是超文本传输协议,信息是明文传输,https 则是具有安全性的ssl加密传输协议。
http和https使用的是完全不同的连接方式用的端口也不一样,前者是80,后者是443。
http的连接很简单,是无状态的。
HTTPS协议是由SSL+HTTP协议构建的可进行加密传输、身份认证的网络协议 要比http协议安全。
https更安全,增加了加密、解码过程,发送方对消息进行加密,接收方进行解密。加解密的过程增加了资源的消耗,一般性能会有所下降。
一、需求分析
- 对比:http 和 https
- 求出http协议下的性能
- 求出https协议下的性能
- 求出两者的差异
- 确定性能指标(TPS):tps越大性能越好
- 测试报告里体现:TPS的变化 https://blog.csdn.net/huangjin0507/article/details/52468500
二、测试策略
- 基准测试
- HTTP作为基准,HTTPS与基准进行比较
三、设计测试场景
- http和https的场景是应该相同的
- 假设该应用是一个网站
- 选取网站上访问top10的页面,在后台服务器“CPU利用率小于80%”的情况下,加一定的负载(并发量),获取10个页面平均的TPS(每个页面的tps相加除以10)
四、搭建测试环境
比如最简单的
- linux
- Nginx(两套配置,一套http,一套https)
- php
- mysql
五、编写测试脚本
- jmeter编写
- 10个get请求,并发用户(线程数)选择20(随便选的,只要保证后台cup利用率不高于80%即可)
- 在搭建的测试环境进行调试
六、执行脚本
在独立的,自行搭建的测试环境执行
执行2次:http协议执行一次,https协议执行一次
七、收集数据给出报告
协议 | TPS |
HTTP | 30 |
HTTPS | 20 |
- 性能下降30%
- 发送报告,给出部署建议
- 归档并邮件通知