记录一次http接口请求的延迟问题排查

本文记录了一次接口请求延迟问题的排查过程,包括接口服务系统延时、客户端多线程代码延迟和网络运营商导致的延迟。通过日志分析发现,问题可能出在客户端线程池初始化和网络状况,最终优化客户端代码解决了延迟问题,丢包问题需进一步与客户合作测试确认。
摘要由CSDN通过智能技术生成

问题描述:

客户调用时20线程并发请求接口共1000次,部分请求发生超时(5s以上),以及15%的丢包率(很恐怖)

 

问题可能原因思考:

1、接口服务的系统延时。

2、调用方多线程代码执行延迟。

3、双方网络运营商不同导致网络延迟以及丢包。

 

排查过程:

接口服务的系统延时:

1、程序执行时间排查

刚好系统代码有记录一次接口请求代码从执行开始到返回接口的总耗时,对1000次请求的请求记录导出,发现只有850条记录,而且执行时间都在100ms以内。

说明接口服务代码没有问题,而且证实了15%的丢包率。

 

2、排查nginx负载路由的延迟

配置nginx的日志格式:

log_format main

'$remote_addr - $remote_user [$time_local] "$request" '

'$status $body_bytes_sent "$http_referer" '

'"$http_user_agent" "$http_x_forwarded_for"

"$upstream_response_time request_time $request_time"';

 

新增了upstream_response_time 和 request_time

upstream_response_time:从

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值