python 微服务Gunicorn 和 Uvicorn ,WSGI 和 ASGI

Gunicorn (Django / Flask)
支持WSGI(Web Server Gateway Interface)协议,规范HTTP Request 如何跟Application Server交互,同步接口,一個请求就返回一個回复,无法支持和WebSocket。支援WSGI協定的server就像是Gunicorn 和 uwsgi
ex: gunicorn -w 1 -b 0.0.0.0:80 run:app
-w : worker 數量,建議一個Cpu 用2~4個workers
-b : host:port

Uvicorn (FastAPI)
支援ASGI(Asynchronous Server Gateway Interface)協議,異步街口,能夠處理多種通用的協議類型,包括HTTP,HTTP2和WebSocket。
ex: uvicorn main:app --host 0.0.0.0 --port 8080 --workers 4
main 就是指Python module "main",main.py
app是FastAPI的Application 就相當於from main import app
workers: Uvicorn worker process

posted @ 2023-02-07 14:48  悠然采  阅读(610)  评论(0编辑  收藏  举报