Executando verificação de segurança...
8

Embora WSGI ainda seja muito utilizado, o ASGI é o que vem sendo mais utilizado em novos projetos.
"ASGI é um sucessor espiritual do WSGI, o padrão Python de longa data para compatibilidade entre servidores web, estruturas e aplicativos.
O WSGI conseguiu permitir muito mais liberdade e inovação no espaço web Python, e o objetivo do ASGI é continuar isso na terra do Python assíncrono."
https://asgi.readthedocs.io/en/latest/
O Gunicorn reina como servidor WSGI. Já para ASGI vejo mais usando Uvicorn (que tem ótimo desempenho), tendo outras opções como Hypercorn, Daphne, Granian... Sendo que o Granian pode ser utilizado como servidor WSGI ou ASGI e tem desempenho espetacular pois a base dele é feita em Rust, com isso temos aplicações em Python processando muito bem milhares de requisições por segundo.
Pode usar Granian para rodar Flask, Django, FastAPI, LiteStar, etc.

Carregando publicação patrocinada...
1

Obrigado pelo comentário, agregou bastante conteúdo ao post. Eu já tinha ouvido falar do Uvicorn, mas não sabia do que se tratava. Vou estudar o ASGI agora também.

1

Vou deixar aqui a dica de como substituir o Gunicorn / Uvicorn / Hypercorn / Daphne pelo Granian. Basta substituir:

De:

gunicorn projeto.wsgi:application --bind :8000

O mesmo vale para uvicorn, hypercorn, daphne...

Para:

WSGI

granian --interface wsgi projeto.wsgi:application --port 8000

ASGI

granian --interface asgi projeto.asgi:application --port 8000

É assim que uso para rodar projetos de web apps Python. O Granian tem outros parâmetros para customizar podendo escolher o número de processos, threads, etc. Tem os detalhes na página do projeto.