Python请求通过Nginx花费太多时间

问题描述

我正在尝试使用python的请求库发出python请求,因为我正在使用Django Rest Framework。这是我在views.py中的代码

    x = requests.post(url,data = payload[0],headers=headers,stream=True)
    res = {"encoded":payload[0],"Response": x}
    return res

当我使用简单的python manage.py运行服务器或gunicorn时,只需8到10秒。给我答复。

我正在使用docker创建映像并使用docker-compose运行它。为此,我的代码是:

version: '3'

services:
  web:
    build:
      context: .
      dockerfile: Dockerfile
    command: gunicorn rest.wsgi:application --bind 0.0.0.0:8000 --timeout 300
    volumes:
      - .:/code/
    ports:
      - "8080:8000"
    env_file: .env

我正在使用Nginx将其公开给互联网。在我的Nginx中,我的代码是:

upstream hello_django {
    server 10.128.0.10:8080;
}

server {
    server_name xyz.mydomain.com;
    location / {
        proxy_pass http://hello_django;
        proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
        proxy_set_header Host $host;
        proxy_redirect off;
        proxy_read_timeout 1800;
        proxy_connect_timeout 1800;
        proxy_send_timeout 1800;
        send_timeout 1800;
    }

    .......

我正在使用Cloudflare,所以这与Nginx设置或其他有关。当我禁用Cloudflare代理时,需要4秒钟才能回复

解决方法

暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!

如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。

小编邮箱:dio#foxmail.com (将#修改为@)