Skip to main content

UNKNOWN

Project description

.. image:: https://travis-ci.org/deliveryhero/lymph.svg?branch=master
:target: https://travis-ci.org/deliveryhero/lymph


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 <http://lymph.readthedocs.org/>`_ 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 cython==0.20.1
$ pip install -r requirements/base.txt -r requirements/dev.txt
$ pip install -e .

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/local-zookeeper-rabbitmq-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/local-zookeeper-rabbitmq-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


.. _ZooKeeper: http://zookeeper.apache.org
.. _Getting Started Guide: http://zookeeper.apache.org/doc/trunk/zookeeperStarted.html
.. _RabbitMQ: http://www.rabbitmq.com/

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

lymph-0.1.0.tar.gz (43.7 kB view hashes)

Uploaded Source

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