【发布时间】:2018-12-12 09:20:43
【问题描述】:
当使用 Zappa 部署一个简单的 Django 应用程序时,我发现我的 TTFB(第一个字节时间)时间在 280-800 毫秒之间,但通常在 700 毫秒左右。这对于网站来说太长了。
其他人似乎得到了更好的响应时间,例如“125ms 到 500ms ...(可能平均大约 175ms)”(https://www.reddit.com/r/django/comments/44r55j/announcing_djangozappa_serverless_django_on_aws/)。
重现我的问题:
pip3 install django-admin
mkdir test
cd test
virtualenv .env
source .env/bin/activate
pip3 install django zappa
django-admin startproject zaptest
zappa init (and choose all defaults)
zappa deploy dev
然后转到提供的 URL。
任何关于如何加快速度的建议将不胜感激。
【问题讨论】:
-
了解 Lambda 冷启动与热启动。您在上面描述的步骤序列将导致冷启动,第一个字节的时间很长且几乎是不可避免的。对同一实例的后续命中将明显更快。任何衡量和控制 Lambda 性能的尝试都必须考虑到这一区别。
-
@KevinChristopherHenry 抱歉,我应该明确提到 700 毫秒的平均响应时间来自重复加载页面。不等待服务冷却。 Zappa 默认有一个 4 分钟的 cron 来保持服务温暖。
-
您是否尝试将保温时间设置为 1 分钟?
-
@bdbd 我不确定是否尝试将保温时间更改为 1 分钟。但是,我在一分钟内多次重新加载页面。我不认为这个项目是冷启动的,因为那要慢得多。
-
将其设置为 1 分钟应该会有所帮助。阅读:medium.com/thundra/…
标签: django serverless zappa aws-serverless