Skip to main content

A dumb as hell rpc implementation built on rabbitmq

Project description

Mause RPC

A dumb as hell rpc implementation built on rabbitmq

Need to write a server?

from mause_rpc.server import Server

rpc_queue = 'rpc.queue'
server = Server(rpc_queue, 'rabbitmq://...')


@server.register
def hello(name: str) -> str:
    return 'hello ' + name


@server.register('divide')
def div(a: int, b: int) -> float:
    if b == 0:
        raise ZeroDivisionError()
    return a / b


if __name__ == '__main__':
    server.serve()

Need a client?

from mause_rpc.client import get_client

rpc_queue = 'rpc.queue'
client = get_client(rpc_queue, 'rabbitmq://...')


def test_basic_functionality():
    assert client.hello('mark') == 'hello mark'
    assert client.divide(5, 2) == 2.5

    with pytest.raises(ZeroDivisionError):
        client.divide(5, 0)

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

mause_rpc-0.0.16.tar.gz (4.1 kB view details)

Uploaded Source

Built Distribution

mause_rpc-0.0.16-py3-none-any.whl (4.5 kB view details)

Uploaded Python 3

File details

Details for the file mause_rpc-0.0.16.tar.gz.

File metadata

  • Download URL: mause_rpc-0.0.16.tar.gz
  • Upload date:
  • Size: 4.1 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: poetry/1.0.5 CPython/3.8.0 Windows/10

File hashes

Hashes for mause_rpc-0.0.16.tar.gz
Algorithm Hash digest
SHA256 be4372a1962ac4f2bc46ea70fc7ee5f93be0eb938ba33e6c4788fdc0b007d8b8
MD5 6dd74d8cc416ef8d651b6873cf6fcaad
BLAKE2b-256 c154222f7c8a282a647e4ac9912e52330ca655d5a5fa8d56f5ad1b2a29f7177b

See more details on using hashes here.

File details

Details for the file mause_rpc-0.0.16-py3-none-any.whl.

File metadata

  • Download URL: mause_rpc-0.0.16-py3-none-any.whl
  • Upload date:
  • Size: 4.5 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: poetry/1.0.5 CPython/3.8.0 Windows/10

File hashes

Hashes for mause_rpc-0.0.16-py3-none-any.whl
Algorithm Hash digest
SHA256 144cec492eba4708853649710ab4740fff51e778cfd404964e1fc741925fd078
MD5 fd301674b959978ea3de477600a1be58
BLAKE2b-256 e8a69d9114bdc385faf365001234b8975dd30754f639932fa0a3b698c00a0695

See more details on using hashes here.

Supported by

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