我有python3代码,它用ThreadingMixIn实现HttpServer。 问题是我有一个复杂的tensorflow计算,它是在服务器启动时运行的。你知道吗
当longComputation = Long_Computation()
在(线程)RequestHandler
内部时,它可以工作,但每次重建请求都太耗时
当它出来时,如下面的代码,我得到
longComputation = Long_Computation()
class RequestHandler(BaseHTTPRequestHandler):
# if i add longComputation = Long_Computation() here, it works but reruns code for each request
self.send_response(200)
self.end_headers()
self.send_header('Content-type','application/json')
length = int(self.headers['content-length'])
data = self.rfile.read(length).decode('utf-8')
longComputation.run({'data':data})
self.wfile.write(bytes(json.dumps({}), "utf8"))
return
return
class ThreadedHTTPServer(socketserver.ThreadingMixIn, HTTPServer):
"""Handle requests in a separate thread."""
def run():
print('starting server...')
server_address = ('0.0.0.0', PORT)
httpd = ThreadedHTTPServer(server_address, RequestHandler)
httpd.socket = ssl.wrap_socket (httpd.socket, keyfile='/etc/letsencrypt/live/classifier-icici.nanorep-services.com/privkey.pem', certfile='/etc/letsencrypt/live/classifier-icici.nanorep-services.com/cert.pem', server_side=True)
httpd.serve_forever()
目前没有回答
相关问题 更多 >
编程相关推荐