如何在Python Tornado中将websocket传递给子进程?

时间:2016-05-02 20:28:20

标签: python websocket tornado

我有一个带有一些Websockethandler的Tornado服务器。我想创建一个工作池,以便将一个worker作为子进程启动,并将websocket连接传递给worker。工人完成后应该向客户发送答案。

def worker(message):
    inp_dict = json.loads(message)
    t = inp_dict["time"]
    time.sleep(t)
    return "Hello, World! "*int(t)

class WebSocket(tornado.websocket.WebSocketHandler):
    def check_origin(self, origin):
        return True

    def open(self):
        print("WebSocket opened")

    def on_message(self, message):    
        self.write_message(worker(message))

    def on_close(self):
        print("WebSocket closed")

怎么做?

1 个答案:

答案 0 :(得分:2)

不支持在进程之间传递连接。相反,将连接保留在主过程中并使用例如一个<ul>来向子进程来回发送简单对象(普通旧数据)。