我需要gunicorn用于内部异步微服务吗?

问题描述 投票:0回答:2

就我在互联网上阅读而言 - 部署Flask / Django应用程序的最佳做法是将一个Web服务器(如nginx)放在后面,并将它们与一个前叉服务器(如gunicorn或uWSGI)捆绑在一起。

这有很多原因,例如ssl-termination,防止HTTP攻击(nginx),分支线程以实现并发,在内存泄漏后重新启动应用程序或其他异常(gunicron)。

我想在sanic上使用pm2部署内部API微服务,因为它不是面向客户的,而是仅从内部服务调用SSH终止和防止HTTP攻击是无关紧要的,并发性由sanic的asyncio性质和异常重启由pm2处理。

我还需要gunicorn和nginx吗?我不能按原样运行应用程序进程,让它直接与其调用者交谈吗?

http nginx gunicorn sanic preforking
2个回答
2
投票

你绝对不需要在你的筹码前面拿枪。 Sanic可以在没有Web服务器的情况下运行得很好,因为它有自己的内部服务器。

我仍然会主张使用nginx来终止TLS并处理静态文件(尽管sanic可以同时执行这两种操作),因为它很有效。

这是我在同一个问题上给出的另一个答案的链接:https://community.sanicframework.org/t/gunicorn-uwsgi-vs-build-in-http-server/47/2?u=ahopkins


0
投票

你不需要它。看看http://supervisord.org/启动,重启,自动启动等服务。

那说我一起使用gunicorn和supervisord。

© www.soinside.com 2019 - 2024. All rights reserved.