Flask + Nginx代理:谁负责提供静态文件有区别吗?

0 投票
1 回答
967 浏览
提问于 2025-04-18 04:56

我有一个Flask应用程序,前面有一个配置好的nginx服务器,它负责把一些请求转发给Flask。

我想问的是,nginx直接提供静态文件和Flask提供静态文件在性能上有没有区别?如果有,是什么原因造成的差别?

当nginx把请求转发给Flask时,nginx在缓存或者其他方面真的有帮助吗,还是说它只是单纯地转发请求?

谢谢,祝好!

1 个回答

3

是的,这个算数。

nginx 是用 C 语言写的,能够处理网页服务器需要处理的所有静态文件。

除了速度快之外,它还能减轻你 Python 代码的负担。

关于缓存,如果你愿意的话,nginx 还可以作为你应用的缓存,具体可以参考 NGINX 文档。不过如果请求需要由 Flask 处理,nginx 除了帮你提供静态文件外,其他方面并不会加快处理速度。

在开发应用时,配置 nginx 来处理静态文件可能不是必要的,但在正式使用时,我会推荐这样做。

撰写回答