Flask搭建服务(五):gunicorn使得服务性能降低问题及解决

本文探讨了使用Gunicorn部署服务时遇到的性能下降问题,并详细分析了“慢客户端行为”如何影响服务性能。通过调整Gunicorn配置,如worker数量、线程数及使用异步模式等,最终实现了性能提升。

1.背景

使用ab进行压测,发现使用gunicorn后,服务性能反而下降了,这是ab结果:

压测命令:$ ab -c 10 -n 1000 -p post.txt -T application/json http://0.0.0.0:5000/b/embedding

条件 处理每条请求所用时间(均值) 90%时间  
不用gunicorn

9.918ms

121

 
使用gunicorn:work=2

54ms

929

 

看到这,有点怀疑gunicorn的作用了,适得其反了。晚上查了一些gunicorn配置的优化,解决了这个性能 问题,并提速30%+。接下来看看什么原因导致服务性能下降,然后这个问题的解决方案是什么。

2.为什么会有“慢客户端行为”带来的服务性能降低问题?

[1]服务器和客户端的通信,我们简略的分为三个部分:request,request handling,和response,即客户端向服务器发起请求,服务器端响应并处理请求,和将请求结果返回客户端,这三个过程。

通常,request handling这部分即服务端的计算,拼

评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值