2
나는이 간단한 파이썬 programm에 있습니다Unterstanding eventlet.wsgi.server
from eventlet import wsgi
import eventlet
from eventlet.green import time
def hello_world(env, start_response):
print "got request"
time.sleep(10)
start_response('200 OK', [('Content-Type', 'text/plain')])
return ['Hello, World!\n']
wsgi.server(eventlet.listen(('', 8090)), hello_world)
그래서
내가 그것을 실행하고 브라우저를 여러 번에 열려 http://localhost:8090/
, 첫 번째 요청이 이미 처리 된 후 got request
만 인쇄를 (10 초 후). eventlet.wsgi.server
이 요청을 동 기적으로 처리하고있는 것 같습니다. 그러나 나는 "녹색"sleep
을 사용하고 있습니다. 어떻게 이런 일이 일어날 수 있습니까?
감사합니다.
eventlet.patcher.monkey_patch(all=False, socket=True, time=True,
select=True, thread=True, os=True)
더 많은 정보는이 link에서 볼 수 있습니다 :
나는 모든 요청이 별도의 (녹색) 쓰레드'pool.spawn_n (serv.process_request, client_socket)'에서 처리되고''풀 maxium 크기가 1024 ... – nomoral
이니''wsgi.py'를 보았습니다. 버퍼링되지 않은 출력이 있습니까? – ionelmc
이걸 어떻게 확인할 수 있니? – nomoral