加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 运营中心 > Nginx > 正文

Django Gunicorn nginx表现非常糟糕.甚至无法获得8 qps

发布时间:2020-12-13 21:00:10 所属栏目:Nginx 来源:网络整理
导读:我正在使用nginx gunicorn来为django应用程序提供服务并将其部署在EC2(m1.small实例)上. 我有这个观点: def hi(request): return HttpResponse('hi',content_type='text/plain') 映射到url / hi /.所以它基本上只是在[myurl] / hi返回hi. 现在,当我从loader

我正在使用nginx gunicorn来为django应用程序提供服务并将其部署在EC2(m1.small实例)上.

我有这个观点:

def hi(request):
    return HttpResponse('hi',content_type='text/plain')

映射到url / hi /.所以它基本上只是在[myurl] / hi返回hi.

现在,当我从loader.io加载测试这个域([myurl] / hi)时,这甚至没有通过250个客户端超过30秒的测试. (每秒约8个请求)

This is(部分)我的nginx access.log文件.它基本上只是在几百秒后给出了499秒. (loader.io中的超时设置为10秒)

我必须做一些严重的错误.我怎么知道的?

我使用yet-another-django-profiler对其进行了分析,以下是输出:

我也在Elastic Beanstalk(它使用Apache服务器)上部署了这个django应用程序(m3.large实例),我也得到了糟糕的性能.
我现在的中间件是:

MIDDLEWARE_CLASSES = (
    'django.contrib.sessions.middleware.SessionMiddleware',# 'django.middleware.common.CommonMiddleware',# 'django.middleware.csrf.CsrfViewMiddleware',# 'silk.middleware.SilkyMiddleware',# 'yet_another_django_profiler.middleware.ProfilerMiddleware',# 'debug_toolbar.middleware.DebugToolbarMiddleware','django.contrib.auth.middleware.AuthenticationMiddleware',# 'django.contrib.auth.middleware.SessionAuthenticationMiddleware',# 'django.contrib.messages.middleware.MessageMiddleware',# 'django.middleware.clickjacking.XFrameOptionsMiddleware',# 'django.middleware.security.SecurityMiddleware',)

之前没有一个被评论过.当我评论出这9行时,我获得了性能提升.现在我可以从这个应用程序中获得60 qps.但我认为我在做更多的错误,并且可以进一步扩展.

最佳答案
这只是在黑暗中刺伤而没有更多的东西继续下去,而且我没有声誉来评论你原来的问题:我注意到你的gunicorn启动脚本有

--log-level=debug

如果你有调试级别的日志记录(在gunicorn中,特别是在Django项目中),它将解释为什么通过注释中间件来提高性能以及为什么你会不断地从不同的部署架构中降低性能.

调试级别日志记录输出大量信息.

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读