“服务器上传图片接口性能压力测试"
[toc]
〇. 任务简介
类似于车站闸机人脸检测系统,可以在入口处检测实时拍摄人脸是否为真人脸(本地完成),若无问题再将身份证信息与现场人脸上传至服务器,通过身份证信息检索到服务器数据库中的人脸与现场人脸进行比对,同一人则允许通过。隐藏任务,对于要追踪的人也可以在服务器端实现比对。
本次根据老板的要求,想要知道如果产品上线,承载能力如何,同一时间可以处理多少任务。
关键词: Socket、并发、压力测试
一. 性能测试关注点
- 用户操作时间:此处直接以提前预备好的图片,读取为数据流,后续的并发访问服务端都是统一图片,所以忽略这一步骤的时间
- 服务器资源使用情况是否合理
- 一次任务多GPU运行时长与单GPU运行时长比较?多任务?
- 应用服务器和数据库资源使用是否合理(缓)
- 系统能否实现扩展(缓)
- 系统最多支持多少用户访问、系统最大业务处理量是多少
- 系统性能可能存在的瓶颈
- 更换那些设备可以提高性能(缓)
二. 需求分析
- 吞吐量
- QPS
- TPS:每秒处理的事务数
- IOPS:每秒磁盘进行的I/O操作次数
- 并发数:并发数是指系统同时能处理的请求数量,这个也是反应了系统的负载能力。
- 响应时间(RT):执行一个请求从开始到最后收到响应数据所花费的总体时间。
三. 局域网下模拟多客户端并发请求
四. 局域网下Server端同时一对多通信
五. 补充:非局域网下通信
在一开始进行简单的tcp文本通信学习时,就有把服务端放在学校服务器上进行测试的尝试,但是设置了 client 端 bind server端的公网ip后,并不能连通,继而通过查找资料知道了通信分为局域网内通信和非局域网内通信,在学校的服务器上只能绑定一个属于自己的ip地址,才能被找到,而公网ip不属于服务器,属于Router,因此非局域网通信需还要一个服务器作为中间设备,对域名进行映射和解析,也就是NAT协议。
NAT
网络地址转换,也叫做网络掩蔽或者IP掩蔽,主要是将内部的私有IP地址,转换成可以在公网使用的公网IP。本质就是让一群机器公用同一个IP,这样就暂时解决了IP短缺的问题,同时也增加了内网的安全性;与此同时带来的问题就是NAT设备会对数据包进行编辑修改,这样就降低了发送数据的效率,而且各种协议的应用各有不同,有的协议是无法通过NAT的,这就需要用到NAT穿透技术。
NAT实现方式
- 静态NAT:指一个公网IP对应一个私有IP,只进行了IP转换,而没有进行端口的转换
内网IP | 外网IP |
---|---|
192.168.1.55 | 219.152.168.222 |
192.168.1.59 | 219.152.168.223 |
192.168.1.155 | 219.152.168.224 |
- NAPT:端口多路复用技术,不但要转换IP地址,还要进行传输层的端口转换
内网IP | 外网IP |
---|---|
192.168.1.55:5566 | 219.152.168.222:9200 |
192.168.1.59:80 | 219.152.168.222:9201 |
192.168.1.155:4465 | 219.152.168.222:9202 |