偶然发现有一用户同一时间领取了两份新客券 怀疑客户端未做防重复提交处理, 但问了客户端同事, 确实做了防重复提交处理, 然后查看Nginx
日志 发现也只有一条领券日志记录
106.121.xxx.xxx [07/Dec/2016:00:12:06 +0800] "POST /activity/receive?t=1481040726076 HTTP/1.1" 200 0.071 116 … 0.072 Upstream:"10.0.10.117:20200"
只有一条领券请求 为什么会有并发领券的情况呢?
然后查看后端tomcat的请求日志 该时间点上却有两条日志
2016-12-07 00:12:06,426 - ApiLog -29049760 [http-nio-10.0.10.117-20200-exec-22] INFO - Api:/activity/receive Req:{"t":"1481040726076"} Resp:{"processTime":0,"serverTime":1481040726425,"success":true}
2016-12-07 00:12:06,427 - ApiLog -29049761 [http-nio-10.0.10.117-20200-exec-76] INFO - Api:/activity/receive Req:{"t":"1481040726076"} Resp:{"processTime":0,"serverTime":1481040726427,"success":true}
怀疑
要么Nginx漏记了一条日志
要么Nginx重复向后端发了请求
因为对Nginx的工作原理不熟悉 不知该如何查找问题原因