开发一个领券接口过程
1. 需求說明:
接到一個需求發(fā)送優(yōu)惠券的,要求前30名、前100名、前1000名的金額不同,1000以后的沒得領(lǐng)
這個需求的重點(diǎn)是啥? 不能多發(fā)券啊!!
嗯,用Redis 去控制人數(shù),發(fā)送成功一個緩存一個手機(jī)號,發(fā)送之前還得檢測該手機(jī)號是否領(lǐng)取過
有了這幾個函數(shù)基本算是完成了。
2. 測試階段:
ab 工具
命令:ab -c 100 -n 100 http://127.0.0.1:8080/v1/activity
感覺沒啥變化啊,后端也沒日志記錄。難道這個只能測試壓力不會執(zhí)行PHP文件?
搞不懂,算了換個方法
↓↓↓↓↓↓↓↓
postman runner
postman里面有自帶的runner ,批量請求接口。挺方便的,直接來個1000次。手機(jī)號先在代碼里面寫個隨機(jī)的
喏,這就有可能出現(xiàn)重復(fù)的手機(jī)號順帶測試下重復(fù)領(lǐng)取的
測試幾次后沒有出現(xiàn)超領(lǐng)的現(xiàn)象,嗯還可以。網(wǎng)上說runner是串行的,上一個請求結(jié)束后才開始下一個請求,只能算連續(xù)測試不是并發(fā)測試。
倒回去看下ab到底是哪里有問題,導(dǎo)致PHP文件不執(zhí)行。
“難道這個只能測試壓力不會執(zhí)行PHP文件?” 這我肯定是不信的
再次測試ab
ab不執(zhí)行PHP文件,那用curl 試試。
curl http://127.0.0.1:8080/v1/activity
??? 返回404 頁面。問題找到了,原來是請求不到啊
curl 默認(rèn)是get方式請求,那查下post 怎么寫的
curl http://127.0.0.1:8080/v1/activity -X POST
正常返回,那就去查查ab的post參數(shù)
ab -c300 -n1000 -p test.log http://127.0.0.1:8080/v1/activity
-p 該參數(shù)是post需要發(fā)送的數(shù)據(jù),不能不填。那就新建個空白的文件
OK 正常請求,日志正常記錄。這里用記錄日志代替發(fā)券,數(shù)日志的條數(shù)就知道有沒有超發(fā)
3. 總結(jié)下:
總結(jié)啥,寫完我都覺得寫的太啰嗦了。
如果你是第一次寫接口、第一次用測壓工具的話,希望這點(diǎn)啰嗦的文章能幫到你
總結(jié)
以上是生活随笔為你收集整理的开发一个领券接口过程的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 企业为销售选择电子名片,那优质的电子名片
- 下一篇: GAMS 如何编写带变量约束的方程