Skip to main content

Python Rabbit wrapper library to simplify to use Exchanges and Queues with decorators

Project description

Hijiki

Python Rabbit wrapper library to simplify to use Exchanges and Queues with decorators

Configurations

Hijiki uses environment variables to configure connection with BROKER.

  • BROKER_PORT
  • BROKER_PWD
  • BROKER_USERNAME
  • BROKER_SERVER

If server is not present the connection url will be a default, and to others configs will be changed for "teste".

How to use

Publisher

The example demonstrate how to publish a simple message to topic "teste1_event" with a json message:

pub = Publisher("localhost", "rabbitmq", "rabbitmq", 5672)
pub.publish_message('teste1_event', '{"value": "Esta é a mensagem"}')

Consumer

Consumer uses a configuration to define QUEUES and Exchanges and the consumer is a decorator for the queue.

from hijiki.broker.hijiki_rabbit import HijikiQueueExchange, HijikiRabbit

qs = [HijikiQueueExchange('teste1', 'teste1_event'), HijikiQueueExchange('teste2', 'teste2_event')]
gr = HijikiRabbit().with_queues_exchange(qs) \
    .with_username("rabbitmq") \
    .with_password("rabbitmq") \
    .with_host("localhost") \
    .with_port(5672) \
    .build()

class MyConsumer():
    @gr.task(queue_name='teste1')
    def my_consumer(data):
        print(f"consumer 1 executed with data : {data}")

    @gr.task(queue_name='teste2')
    def my_consumer2(data):
        print(f"consumer 2  executed with data : {data}")

if __name__ == '__main__':
    MyConsumer()
    gr.run()

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

hijiki-1.0.52.tar.gz (18.0 kB view details)

Uploaded Source

Built Distribution

hijiki-1.0.52-py3-none-any.whl (18.4 kB view details)

Uploaded Python 3

File details

Details for the file hijiki-1.0.52.tar.gz.

File metadata

  • Download URL: hijiki-1.0.52.tar.gz
  • Upload date:
  • Size: 18.0 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/4.0.2 CPython/3.11.6

File hashes

Hashes for hijiki-1.0.52.tar.gz
Algorithm Hash digest
SHA256 0019f3268e051ebc81802a73db2b134493035c89fb825ddcbbf82edd11e2bdfb
MD5 c22f3e2a4c90975b472093731136a763
BLAKE2b-256 f1a64f3e448cfbb6a41d8c08d635fad8ae6e7bd61c60ef6c30f50f8efbb3bf34

See more details on using hashes here.

File details

Details for the file hijiki-1.0.52-py3-none-any.whl.

File metadata

  • Download URL: hijiki-1.0.52-py3-none-any.whl
  • Upload date:
  • Size: 18.4 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/4.0.2 CPython/3.11.6

File hashes

Hashes for hijiki-1.0.52-py3-none-any.whl
Algorithm Hash digest
SHA256 e19faddab667aa39912c6c2f155e5452fb9d1a84ff520ff538e5fca252561efa
MD5 8ea5031379179e12e3a2304bda90b2ce
BLAKE2b-256 7848c1691c78bab9e0c83742274e10b6ee44284dd8806166ec008661f2b44945

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