mirror of
https://github.com/valitydev/thrift.git
synced 2024-11-07 18:58:51 +00:00
e59b73d3c2
* New style for Python is default now. * Symbols were replaced in newer versions of ZeroMQ (>=3.0). * Use Thrift's abstraction for `shared_ptr` instead of Boost. * Symbols were replaced in Python as well.
37 lines
808 B
Python
Executable File
37 lines
808 B
Python
Executable File
#!/usr/bin/env python
|
|
import sys
|
|
import time
|
|
import zmq
|
|
import TZmqClient
|
|
import thrift.protocol.TBinaryProtocol
|
|
import storage.ttypes
|
|
import storage.Storage
|
|
|
|
|
|
def main(args):
|
|
endpoint = "tcp://127.0.0.1:9090"
|
|
socktype = zmq.REQ
|
|
incr = 0
|
|
if len(args) > 1:
|
|
incr = int(args[1])
|
|
if incr:
|
|
socktype = zmq.PUSH
|
|
endpoint = "tcp://127.0.0.1:9091"
|
|
|
|
ctx = zmq.Context()
|
|
transport = TZmqClient.TZmqClient(ctx, endpoint, socktype)
|
|
protocol = thrift.protocol.TBinaryProtocol.TBinaryProtocolAccelerated(transport)
|
|
client = storage.Storage.Client(protocol)
|
|
transport.open()
|
|
|
|
if incr:
|
|
client.incr(incr)
|
|
time.sleep(0.05)
|
|
else:
|
|
value = client.get()
|
|
print(value)
|
|
|
|
|
|
if __name__ == "__main__":
|
|
main(sys.argv)
|