Nel documentation vedo il seguente:Flask e il ridimensionamento e la concorrenza
C'è solo un fattore limitante per quanto riguarda di scala in Flask che sono proxy del contesto locale. Essi dipendono dal contesto che in Flask è definito come thread, processo o greenlet. Se il tuo server utilizza una sorta di concorrenza che non è basata sui thread o sui greenlet , Flask non sarà più in grado di supportare questi proxy globali . Tuttavia, la maggior parte dei server utilizza i thread, i greenlet o processi separati per ottenere la concorrenza, che sono tutti metodi supportati dalla libreria Werkzeug sottostante.
La mia domanda: quali altri meccanismi concorrenti ci sono oltre questi 3 metodi?
Questo è fondamentalmente coperto da greenlet. – Jahaja
@Jahaja: No. I server Web basati su Greenlet sono una cosa, i server web asincroni (event driven) come Tornado sono un'altra cosa. Entrambi raggiungono un obiettivo simile di maggiore concorrenza, ma arrivano usando metodi diversi. In particolare, Flask può funzionare su un server Web basato su Greenlet, ma non si adatta facilmente a un server asincrono. – Miguel
Il mio punto è che entrambe le soluzioni usano ciò che descrivi nei livelli inferiori. Gevent che usa libevent/libev e node.js usando libuv. (ricorda di leggere da qualche parte che gevent 2.0, se rilasciato, può essere basato su libuv.) – Jahaja