我看到人们正在运行像Nginx + Gunicorn + Flask这样的设置。
有人可以解释在Flask面前拥有Gunicorn有什么好处?为什么不单独运行Flask?是不是消耗了更多的资源让Gunicorn + Flask运行?当Gunicorn无法响应时,是否能够重启Flask实例?
将nginx置于gunicorn之上的目的是什么?枪炮不够吗?再次,花费了更多的资源?
答案 0 :(得分:37)
我认为你可能会感到困惑,Flask不是 web服务器,它是一个框架,需要某种Web服务器,如Gunicorn,Nginx或Apache,接受它的HTTP请求然后将继续运作。人们将Nginx和Gunicorn组合在一起的原因在于,除了作为Web服务器之外,Nginx还可以代理与Gunicorn的连接,这带来了一定的性能优势,这是一个很好的答案,详细说明了这些好处: https://serverfault.com/questions/220046/why-is-setting-nginx-as-a-reverse-proxy-a-good-idea
修改强> 添加了包含有关将Nginx作为代理运行的性能优势的信息的链接。