Skip to content

Latest commit

 

History

History
75 lines (48 loc) · 1.81 KB

README.rst

File metadata and controls

75 lines (48 loc) · 1.81 KB
PyPI version Python Versions https://travis-ci.org/barrachri/rampante.svg?branch=master

🐎 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 3 params
# queue_name, for example could be "user.subscribed"
# data is a dictionary, it's a msgpacked message sent to NATS
# app, aiohttp app instance (in case)

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

@subscribe_on("user.subscribed", "user.created")
async def send_another_message(queue_name, data, app):
    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 retry/logic when tasks fail

Pull requests are encouraged!

License

Apache 2.0