Domanda

Ho scritto qualcosa del genere (con più codice, la parte importante è il sleep(5)):

def get(self):
    import time
    time.sleep(5)
    return jsonify({'result':'OK'})
.

Inizio il mio server come questo:

gunicorn serve:app -b 127.0.0.2:8000 -w 4
.

Mentre l'app è "dormendo" è che blocca un intero lavoratore?In che modo questa influenza la capacità di gunicorn di rispondere?

È stato utile?

Soluzione

gunicorn predefinito l'utilizzo di lavoratori sincroni, che servirà solo una richiesta alla volta, quindi sì consumerà quel lavoratore per la durata del lungo sondaggio.gunicorn supporta lavoratori asincroni , che permetterà a un lavoratore di servire altre richieste lungo il lato il latoLungo sondaggio - Vedi scegliendo un tipo di lavoratore :

gunicorn -k gevent -b 127.0.0.1:8000 serve:app
.

Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a StackOverflow
scroll top