我有一个使用Django的网站,在输入时从postgresql数据库的单个表中加载大约100行。
本地开发服务器:页面加载 300毫秒
Heroku上的生产服务器:页面加载 1.34secs (约慢4.13倍)
(集成gunicorn
并在非空闲dyno上从aws S3
加载我的静态文件)
第w?
请注意,我的生产服务器上还没有流量,我正在使用1 dyno。
当我在Heroku上使用与我的生产服务器的开发服务器完全相同的设置时,它甚至更慢。 装载时间是否正常?
我的电脑规格:
Memory: 3.7 GiB
Processor: Intel® Core™ i5 CPU M 520 @ 2.40GHz × 4
OS type: 64-bit
答案 0 :(得分:0)
根据this source,如果我的计算机大约有3.9 Gb ram
且一个dyno确实有512Mb ram
,那就意味着我的计算机的内存大约是 7.8倍。根据{{3}} ram对于提高数据库查询的性能非常重要。由于我做了很多询问,时间差异对我来说很有意义。
在我的heroku应用程序目录中运行顶部令人惊讶地返回35 Gb ram
。但是根据this source在Heroku中运行top
是通过不同的dyno(一次性dyno)执行你的应用程序正在运行。
我现在唯一不理解的是为什么one-off dyno
有这么多公羊。
只要没有人给出更好的答案,我就会检查这个答案。