判断投递失败原因方法

在工作中遇到一个问题,在A服务器上投递一条数据到B服务器【用Curl访问服务器B上的一个URL】,但是对比两边的数据【A服务器上的Nginx日志和B服务器上的Nginx日志】总是对比不上

B服务器的日志条数比A上每小时要少4%左右,服务器上也没有任何报错日志,curl 也没有报错。这个就让我很头疼。后来一问运维才知道并发很高。难道是由于并发的原因吗?

那为什么连一条错误日志也没有呢?

为了证明这个假设,我设计如下实验:

1 让运维把A服务器上的日志切成一个文件【一小时一个】

2 让PHP去读取文件内容,之后循环投递到B服务器

3 查询B服务器上的日志条数

测试结果表明,循环发送之后B服务器日志条数和运维切文件的日志条数一样,这样就说明在高并发情况下,会丢失投递的数据。

posted @ 2014-03-05 21:21  scofi  阅读(463)  评论(0)    收藏  举报