Skip to main content

A microservices nanoframework.

Project description

PyPI version Python Versions https://travis-ci.org/barrachri/rampante.svg?branch=master https://codecov.io/gh/barrachri/rampante/branch/master/graph/badge.svg

🐎 Rampante

A fancy and opinionated nanoframework for microservices.

Installation

pip install rampante

How to use subscribe_on

from rampante import subscribe_on

# The function should accept 2 params
# queue_name, for example could be "user.subscribed"
# data is a dictionary, it's a msgpacked message sent to Kafka

@subscribe_on("user.subscribed")
async def send_a_message(queue_name, data):
    log.info("Event received!")

@subscribe_on("user.subscribed", "user.created")
async def send_another_message(queue_name, data):
    log.info("Event received!")

Example

Check the examples inside the folder!

You need a nats-streaming:0.6.0 running, check the Makefile :)

The name

Rampante means “rampant” in Italian.

Why NATS?

It’s written in Go and seems working really well!

To Do

  • add circuit breaker

  • add retry

  • add logic when tasks fail

Pull requests are encouraged!

License

Apache 2.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

rampante-0.0.5.tar.gz (5.6 kB view hashes)

Uploaded Source

Built Distribution

rampante-0.0.5-py2.py3-none-any.whl (7.5 kB view hashes)

Uploaded Python 2 Python 3

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