Skip to main content

Transmit Server & Client use thrift

Project description

Transmit Server & Client

Install

pip install transmit

Usage

Server

from transmit.server import Server

class TestServer(Server):
    def __init__(self,port=18100):
        super().__init__(port)

    def test_function(self,msg):
        print('Testing:',msg)
        return {"say":"Happy everyday!!!"}

if __name__ == '__main__':
    ts = TestServer()
    ts.run()

Result

START SERVER 0.0.0.0:18100

Success Response

{
    "code":1,
    "msg":"success",
    "data":"handle result data. AnyType"
}

Error Response

{
    "code":0,
    "msg":"error message",
    "data":null
}

Client

from transmit.client import Client

with Client("127.0.0.1",18100) as c:
    result = c.test_function({"msg":"hello world"})
    print(type(result))
    print(result)

Result

> <class 'dict'>
> {'say': 'Happy everyday!!!'}

Advanced Usage

  1. debug mode

debug mode will print and log all request and response data.

# debug server
> python test_server.py --debug 1
# debug client
with Client("127.0.0.1",18100,debug=True) as c:
    ...
  1. server cli setting
> python test_server.py --host="127.0.0.1" --port=3000 --workers=3 --type=<process|thread> --debug=1

Refs

Thrift thrift几种server模式的比较


Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

transmit-0.4.4.tar.gz (8.8 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

transmit-0.4.4-py3-none-any.whl (10.6 kB view details)

Uploaded Python 3

File details

Details for the file transmit-0.4.4.tar.gz.

File metadata

  • Download URL: transmit-0.4.4.tar.gz
  • Upload date:
  • Size: 8.8 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: uv/0.10.9 {"installer":{"name":"uv","version":"0.10.9","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":null,"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":null}

File hashes

Hashes for transmit-0.4.4.tar.gz
Algorithm Hash digest
SHA256 f37d4478c9dc68fba73060f4e04f9aca8c5522e2183890ca086a3ab455db090d
MD5 f335d9bc4ba008fa0931c6ab27831808
BLAKE2b-256 30a469c1b515112b57212aa36e70bccdd9de428eaa3e40bf705c5f89bedb1b57

See more details on using hashes here.

File details

Details for the file transmit-0.4.4-py3-none-any.whl.

File metadata

  • Download URL: transmit-0.4.4-py3-none-any.whl
  • Upload date:
  • Size: 10.6 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: uv/0.10.9 {"installer":{"name":"uv","version":"0.10.9","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":null,"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":null}

File hashes

Hashes for transmit-0.4.4-py3-none-any.whl
Algorithm Hash digest
SHA256 c95bfafb0154eb68c300cf0aadcd42aebf656656a0f00e47cd9cb2cfdfd7e057
MD5 6b16346f591840f5598f2e05f7a31a02
BLAKE2b-256 62cf9984a68923c301705c1cc25d3a95ed18686d1545f704d6b4634024c1afd9

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page