J'écris un petit serveur web en Python, en utilisant BaseHTTPServer et une sous-classe personnalisée de BaseHTTPServer.BaseHTTPRequestHandler. Est-il possible de faire cette écoute sur plus d'un port?Comment écrire un serveur HTTP python pour écouter sur plusieurs ports?
Ce que je fais maintenant:
class MyRequestHandler(BaseHTTPServer.BaseHTTPRequestHandler):
def doGET
[...]
class ThreadingHTTPServer(ThreadingMixIn, HTTPServer):
pass
server = ThreadingHTTPServer(('localhost', 80), MyRequestHandler)
server.serve_forever()
Est-ce que ça va avec GIL? – sashab
@scrat: Le GIL n'aura pas beaucoup d'importance pour ce code, car ce code sera principalement lié aux e/s, et la plupart des E/S en Python sont écrites en utilisant des bibliothèques C de bas niveau qui libèrent le GIL. Comme pour la plupart des questions de performances, mon conseil est de ne pas vous inquiéter à ce sujet, sauf si vous avez comparé votre code et déterminé que c'est réellement un problème. –
+1 pour coller à la bibliothèque standard :) –