사용자 도구

사이트 도구


rpc

차이

문서의 선택한 두 판 사이의 차이를 보여줍니다.

차이 보기로 링크

다음 판
이전 판
rpc [2018/09/20 02:24] – 만듦 rex8312rpc [2024/03/23 02:38] (현재) – 바깥 편집 127.0.0.1
줄 1: 줄 1:
 ====== RPC ====== ====== RPC ======
  
 +===== XMLRPC =====
 +
 +  * 동시에 여러 커넥션 처리(threading)
 +
 +<code python>
 +from socketserver import ThreadingMixIn
 +
 +class ThreadedXMLRPCServer(ThreadingMixIn, SimpleXMLRPCServer):
 +    pass
 +
 +
 +class RequestHandler(SimpleXMLRPCRequestHandler):
 +    rpc_paths = ('/RPC2',)
 +
 +    
 +with ThreadedXMLRPCServer((ip_address, port),
 +                          requestHandler=RequestHandler,
 +                          allow_none=True, logRequests=False) as server:
 +    
 +    server.register_introspection_functions()
 +    
 +     def ping():
 +        return 'pong'
 +
 +    server.register_function(ping, 'ping')
 +    
 +    server.serve_forever()
 +</code>
 +
 +    * https://stackoverflow.com/questions/1589150/python-xmlrpc-with-concurrent-requests
 ===== msgpack-rpc ===== ===== msgpack-rpc =====
  
줄 32: 줄 62:
 server.start() server.start()
 </code> </code>
 +
 +
  
 ==== client ==== ==== client ====
줄 46: 줄 78:
 result = client.call('sum', np.arange(10), np.arange(10, 20)) result = client.call('sum', np.arange(10), np.arange(10, 20))
 </code> </code>
 +
 +===== zerorpc =====
 +
 +  * https://github.com/0rpc/zerorpc-python
rpc.1537410259.txt.gz · 마지막으로 수정됨: (바깥 편집)