내 설정은 다음이다 - 나는 많은 꽤 「Hello World」의 예이다 토네이도 기반의 HTTP 서버가이 설정에서 이제전화 파이썬
server = tornado.httpserver.HTTPServer(app)
server.bind(8888)
server.start(2)
tornado.ioloop.IOLoop.instance().start()
을, 나는 또한 다른 프로세스가 (프로세스를 제어 프로세스라고 부름) 루트 프로세스에 의해 생성됩니다. 따라서이 제어 프로세스는 두 개의 Tornado 처리기 프로세스의 형제입니다. 당연히 루트 프로세스에 의해 생성 된 파이프를 통해 핸들러 프로세스와 제어 프로세스간에 통신 할 수 있습니다. 그러나 나는 제어 프로세스의 방법을 호출하고 출력을 얻는 것에 더 관심이있다.
그런 일을하는 가장 좋은 방법은 무엇입니까? 처리기에서 요청을 컨트롤에 보내고 결과를 반환하기 위해 파이프를 사용하는 경우 프로세스 안전을 구현하기 위해 잠금을 사용해야합니까?
예, 그것은 정확하게 RPC입니다. 그리고 네, 어떻게 든 혼란 스러웠습니다. 두 핸들러의 두 입력과 출력이 어떻게 든 섞일 수 있습니다 (내게 수치 스럽습니다). 나는 토네이도에 대해 아주 신감이 많기 때문에 "다른 프로토콜을'control'에 추가하는 것을 의미 할 수 있겠습니까? – dmg
@DJV : 네가 네가 의미하는 바가 무엇이든 네 번 네가 네 이름에 그 이름을 사용했음을 의미했다. "핸들러 프로세스"가 "제어 프로세스"에 대한 요청을하기를 원한다. 따라서 "제어 프로세스"가 이미 웹 응용 프로그램 서버 나 JSON-RPC-over-Sockets 서버 등을 구현하기 위해 Tornado를 이미 사용하고 있다면 구현 대신 다른 프로세스의 다른 프로토콜을 추가하면됩니다. 처음부터 독립적 인 무언가. – abarnert