Diary/2019-7-10
〆め作業
とあるタスクの〆め.
依頼してた分の動作を確認して不足データの追加をお願いしたり,
追加スクリプトをちょっと書いたり.
MsgpackRPCで遊ぶ
サーバー側で値を保持しとく,とか,Numpyデータやりとりしてみる,とか.
- サーバ側
from gevent.server import StreamServer from mprpc import RPCServer import numpy class SumServer(RPCServer): def __init__(self): super(SumServer, self).__init__() self.sum_value = 0 def sum(self, x, y): return x + y def acc(self, x): self.sum_value = self.sum_value + x return self.sum_value def numpy_test(self, x): a = numpy.frombuffer(x, dtype='int') a = a + 3 return a.tobytes() server = StreamServer(('127.0.0.1', 6000), SumServer()) server.serve_forever()
- クライアント側
from mprpc import RPCClient import numpy client = RPCClient('127.0.0.1', 6000) print(client.call('sum', 1, 2)) print(client.call('acc', 10)) print(client.call('acc', 20)) print(client.call('acc', 40)) a = numpy.array([1,2,3]) b = numpy.frombuffer(client.call('numpy_test', a.tobytes()), dtype='int') print(b)