Skip to main content

Django app yang digunakan untuk mempermudah penggunaan rabbit mq

Project description

merupakan package khusus django untuk keperluan berkomunikasi dengan rabbitmq

Quick start

  1. Tambahkan “aiga_amqp” ke INSTALLED_APPS pada file settings.py:

    INSTALLED_APPS = [
        ...
        'aiga_amqp',
    ]

A.1 Message Sender

Berikut contoh kode untuk mengirim message:

from aiga_amqp.core import send_queue

send_queue('nama channel', message='ini pesan')

A.2 Compete Consumer

Berikut merupakan langkah untuk consume antrian message secara “compete” atau bergantian.

  1. Pada folder app yang anda inginkan, tambahkan file consumer.py

  2. Pada file consumer.py buat function untuk menangani message seperti contoh dibawah ini:

    def consumer(channel, method, properties, body):
        print('saya telah baru saja melakukan sesuatu hal yang penting disini ...')
  3. Pada file apps.py override method ready dan lakukan perintah seperti contoh berikut untuk mengeksekusi consumer.py:

    from django.apps import AppConfig
    
    class ExampleConfig(AppConfig):
        default_auto_field = 'django.db.models.BigAutoField'
        name = 'example'
    
        def ready(self) -> None:
            from aiga_amqp.core import AMQPListener
            from .consumer import consumer
            listener = AMQPListener()
            listener.consume(consumer, channel_name='your channel name')
  1. Jalankan django

B.1 Publish Message

segera

B.2 Subscribe Message

segera

Settings Variable

Terdapat beberapa variable yang bisa digunakan pada settings.py beserta default value nya:

AIGA_AMQP = {
    'HOST' : 'localhost',   //alamat host dari rabbitmq
    'PORT' : 5672,          //port dari rabbitmq
    'CREDENTIAL' : False,   //set menjadi True jika menggunakan USERNAME dan PASSWORD
    'USERNAME' : None,      //username untuk mengakses rabbitmq
    'PASSWORD' : None,      //password untuk mengakses rabbitmq
    'HEARTBEAT' : 600,
    'TIMEOUT' : 300
}

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

aiga-django-amqp-0.0.2.tar.gz (4.6 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