开发者社区> 问答> 正文

PHP 每小时百万级的curl请求服务器,丢失数据,什么原因?

直接详细说明下场景:

服务器A会通过 curl 将数据转发到服务器B 上,服务器A 每小时转发量在百万级。
curl 请求的是服务器B上的 一个 0字节的文件 , 只要把请求记录在服务器B的nginx日志里就可以了。
现在通过两边的数据比对, 发现数据一天会丢几千条,一小时会丢一两百条。
服务器A 用curl_errno(),甚至加了curl_getinfo()判断返回的是否是200 都没有记录到curl报错
这部分丢失的curl请求, 想请教大家有什么好的分析思路跟经验可以借鉴的。

补充: 服务器间用的内网dns解析,排除了 dns解析超时的故障

展开
收起
落地花开啦 2016-06-16 18:30:57 2886 0
1 条回答
写回答
取消 提交回答
  • 喜欢技术,喜欢努力的人

    合并请求是个好的思路,并发处理过多的话,不仅是B服务器,A服务器也不见得能按照期望去处理。

    或者也可以使用队列来处理,每秒并发可以控制一个量级下去请求B服务器。

    2019-07-17 19:41:47
    赞同 展开评论 打赏
问答排行榜
最热
最新

相关电子书

更多
阿里云栖开发者沙龙PHP技术专场-直面PHP微服务架构挑战-高驰涛 立即下载
PHP安全开发:从白帽角度做安全 立即下载
PHP 2017.北京 全球开发者大会——高可用的PHP 立即下载