我有一个Flask应用程序,前面是一个配置为向Flask代理一些请求的nginx服务器。
我的问题是 - 无论nginx是提供静态文件还是Flask(来自nginx的代理服务器后面),性能是否重要?如果是这样,是什么导致了差异?
当nginx代理到Flask时 - nginx实际上是否会为缓存或类似事情添加任何好处,或者它是否真的只转发请求?
谢谢你,以及最好的问候
答案 0 :(得分:3)
是的,重要。
nginx
是用C语言编写的,它处理Web服务器处理静态文件的所有内容。
除了速度之外,您还可以降低Python代码的负载。
关于缓存 - 如果您愿意,nginx
也可以作为缓存投放您的应用,请参阅NGINX doc。但是,如果请求由Flask处理,那么nginx
除了卸载您的应用之外,没有任何内容可以加速提供静态文件。
在开发应用程序时,可能不需要为静态文件配置nginx
的额外工作,但是对于生产用途,我会推荐它。