Мне нужно создать многопоточный веб-сервер в Python 3, где каждый запрос получает новый поток. Я последовал базовому примеру из блога. Но сервер всегда блокируется, так как спящий вызов в 1 потоке блокирует другие потоки. Может ли кто-нибудь помочь мне в этом?
Вот мой код
import time
from http.server import HTTPServer, BaseHTTPRequestHandler
from socketserver import ThreadingMixIn
import threading
class Handler(BaseHTTPRequestHandler):
def do_GET(self):
self.send_response(200)
self.end_headers()
print('start-->')
time.sleep(5)
print('end-->')
self.wfile.write("Test".encode())
class ThreadingSimpleServer(ThreadingMixIn, HTTPServer):
pass
def run():
server = ThreadingSimpleServer(('0.0.0.0', 1234), Handler)
server.serve_forever()
if __name__ == '__main__':
run()
Моя проблема в том, что если я отправляю 2 запроса на сервер, второй начинает выполняться только после завершения первого. Мне нужно, чтобы сон был в отдельном потоке, не затрагивая другие потоки. Буду благодарен за любую помощь.