Django中间件类,用于快速处理在队列中等待过长的请求
项目描述
Django-Request-Queue-Timeout
此软件包提供Django中间件类,用于快速处理在队列中等待过长的请求。
这在像Heroku这样的环境中很有用,因为流量激增可能导致请求在Heroku路由器强制放弃请求之前长时间停留在队列中(Heroku路由器强制执行的30秒限制)。使用此中间件后,应用程序通过不处理客户端已收到服务器错误响应的请求来快速恢复。
要求
Python和Django的最新版本。有关确切版本,请参阅pyproject.toml
。
安装
从git安装
pip install git+<git address>#egg=django-request-queue-timeout
从PyPI安装
pip install django-request-queue-timeout
将中间件添加到设置文件中的MIDDLEWARE
列表的第一项
MIDDLEWARE = (
'rqto.middleware.RequestQueueTimeoutMiddleware'
...
)
配置
安装后,中间件会检查每个传入请求的X-REQUEST-START
头值,指示请求开始的时间(自Unix纪元以来的毫秒数)。如果请求在处理前等待时间过长,则生成503服务不可用
响应。
默认超时时间为30秒,但可以通过提供Django设置来配置不同的值
REQUEST_QUEUE_TIMEOUT_IN_SECONDS = 60 # configure a 60 second request queue timeout
另请参阅
项目详情
关闭
django-request-queue-timeout-1.0.3.tar.gz 的散列
算法 | 散列摘要 | |
---|---|---|
SHA256 | a9284d1c2f08ac4ca24c0329e843b653cd3b874122e80a8f5d40fd173a4e903e |
|
MD5 | 92b9aa04ecf20487da4d7bec1f6c2382 |
|
BLAKE2b-256 | 5ff1b3b508478202c35cd0644d40054d49b83af5d1b429fd406104bea0d96195 |
关闭
django_request_queue_timeout-1.0.3-py3-none-any.whl 的散列
算法 | 散列摘要 | |
---|---|---|
SHA256 | 5b304e91a14f2c5e8fae1a37f81ec41042b67610b5b235047a2ebb786983523f |
|
MD5 | 685ef463b310f66324d4c59d8e87d4d0 |
|
BLAKE2b-256 | bc1ce579a8677e1d19f995cf2cb841df0f1307e27b1fc6698daa4d8ee75a58e5 |