私は、PythonでマルチスレッドWebサーバーを作成しようとしていますが、一度に1つの要求にしか応答せず、理由を特定できません。私を助けてくれますか?PythonのマルチスレッドWebサーバー
#!/usr/bin/env python2
# -*- coding: utf-8 -*-
from SocketServer import ThreadingMixIn
from BaseHTTPServer import HTTPServer
from SimpleHTTPServer import SimpleHTTPRequestHandler
from time import sleep
class ThreadingServer(ThreadingMixIn, HTTPServer):
pass
class RequestHandler(SimpleHTTPRequestHandler):
def do_GET(self):
self.send_response(200)
self.send_header('Content-type', 'text/plain')
sleep(5)
response = 'Slept for 5 seconds..'
self.send_header('Content-length', len(response))
self.end_headers()
self.wfile.write(response)
ThreadingServer(('', 8000), RequestHandler).serve_forever()
ノンブロッキングソケットを使用すると、何千ものクライアントをサーバーすることができます。単一のリクエストごとにスレッドを作成する必要はありません。 –
@ shiplu.mokadd.imあなたはポストをお願いします..あなたの助けが高く評価されるでしょう –
@パイロットここでは2つのものが必要です。 'select()'とノンブロッキングです。 Pythonには[socket](http://docs.python.org/2/library/socket.html)ライブラリがあります。 IBMは、select()を使用したソケット・プログラミングについていくつかの[良い記事](https://publib.boulder.ibm.com/infocenter/iseries/v5r3/index.jsp?topic=%2Frzab6xnonblock.htm)を取得しました。 –