a service framework
Project description
Lymph
lymph is an opinionated framework for Python services. Its features are
Discovery: pluggable service discovery (e.g. backed by ZooKeeper)
RPC: request-reply messaging (via ZeroMQ + MessagePack)
Events: pluggable and reliable pub-sub messaging (e.g. backed by RabbitMQ)
Process Management
There’s documentation on readthedocs.org.
Installation (as a dependency)
# py-monotime requires python headers, and gevent and cython require build-essential $ sudo apt-get install build-essential python-dev
$ pip install https://github.com/deliveryhero/lymph.git#egg=lymph
Development (of lymph itself)
$ git clone https://github.com/deliveryhero/lymph.git $ cd lymph $ pip install -r requirements/dev.txt
Run tests with tox, build documentation with fab docs.
Running services
To run the example services, you can use the example node config in conf/sample-node.yml. You’ll also need a local installation of ZooKeeper (with the configuration provided in the Getting Started Guide) and RabbitMQ:
$ export PYTHONPATH=examples $ cp conf/sample-node.yml .lymph.yml $ lymph node
You can then discover running services:
$ lymph discover
and send requests to them from the commandline:
$ lymph request echo.upper '{"text": "transform me"}'
To see the log output of a running service, try:
$ lymph tail echo -l DEBUG
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
File details
Details for the file lymph-0.15.0.tar.gz
.
File metadata
- Download URL: lymph-0.15.0.tar.gz
- Upload date:
- Size: 64.3 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | 90bac4d6459efef29a83037628ca6be9eec10cf26f575223a79118e207871d37 |
|
MD5 | c36fc2f9696ace0f6df75f73754e3d19 |
|
BLAKE2b-256 | d57a31f0a2c8590066400be76e823dea99d063222ba86df2394334bd70f0f395 |