werkzeug文档声明它只能用于开发而不是生产。如果你想配备一个生产环境,建议使用nginx,apache + uwsgi等。
答案 0 :(得分:2)
TL; DR:编写一个健壮,快速且可扩展的HTTP服务器远非微不足道,并且需要的不仅仅是支持多线程多进程"。
the documentation states您不应该在生产中使用开发服务器:
开发服务器不适用于生产系统。它专为开发目的而设计,在高负载下性能很差。
这并不妨碍您在werkzeug上构建应用程序(希望如此),您只是想使用生产就绪的HTTP服务器进行部署。
至于原因,上面已明确说明:此开发服务器尚未设计为在负载下正确执行,而是一个实用的开发工具。正确处理负载是一个非常复杂的问题,这就是为什么有像nginx,apache等专用HTTP服务器的原因 - 几乎所有的服务器都用C编码 - 注重稳定性和性能。因此,如果您尝试在生产中使用werkzeug的开发服务器会发生什么情况,它会在负载下变得非常缓慢,直到您的网站完全无法使用。您可能还有内存使用问题(可能会扼杀您的服务器)以及安全问题 - 另外两个难以正确处理的问题,最好留给专用,调试和优化的HTTP服务器。