Sim*_*ger 5 performance python python3 cpu-load
Django 的开发服务器在 Python 2.7.5(在 Windows 7 上)下运行,在我的测试系统上具有大约 1-3% 的恒定(空闲)负载 - 没有页面加载或其他计算完成。切换到 Python 3.4.2 会导致恒定负载上升到平均约 10%。这对于什么都不做来说是非常巨大的......有什么解释吗?可以避免吗?我用各种 Django 应用程序对此进行了测试。
回答我自己的问题:Django 的开发服务器会定期检查所有 Python 源文件的更改。设置选项 --noreload 可以防止这种自动重启机制,这也将空闲负载减少到零。显然,Python 3 上的自动重新加载效率较低。使用 pyinotiy 是 Linux 也可以防止这种开销的解决方案:https ://docs.djangoproject.com/en/1.7/ref/django-admin/#runserver-port-or-address-port