Skip to content

Event backends

Arrlio has two builtin event backends:

  • arrlio.backends.event_backends.local
  • arrlio.backends.event_backends.rabbitmq

Local

Settings

All environment varialbles should starts with ${ARRLIO_ENV_PREFIX}LOCAL_EVENT_BACKEND_.

Info

Default value for ARRLIO_ENV_PREFIX is ARRLIO_.

  • ID (Config.id), default: autogenerated. Event backend Id.

RabbitMQ

Settings

All environment varialbles should starts with ${ARRLIO_ENV_PREFIX}RABBITMQ_EVENT_BACKEND_.

  • ID (Config.id), default: autogenrated. Event backend Id.
  • SERIALIZER (Config.serializer), default: "arrlio.serializers.json". Serializer module with Serializer and Config classes.
  • URL (Config.url), default: "amqp://guest:guest@localhost". RabbitMQ server url.
  • TIMEOUT (Config.timeout), default: 10. RabbitMQ operation timeout, seconds.
  • PUSH_RETRY_TIMEOUTS (Config.push_retry_timeouts), default: [5, 5, 5, 5, 5]. Retry timeout sequense for push operations, seconds.
  • PULL_RETRY_TIMEOUTS (Config.pull_retry_timeouts), default: itertools.repeat(5). Retry timeout sequense for pull operations, seconds.
  • EXCHANGE (Config.exchange), default: "arrlio.events". RabbitMQ exchange for events.
  • EXCHANGE_DURABLE (Config.exchange_durable), default: False.
  • QUEUE_TYPE (Config.queue_type), default: QueueType.CLASSIC.
  • QUEUE_DURABLE, (Config.queue_durable), default: False.
  • QUEUE_AUTO_DELETE (Config.queue_auto_delete), default: False.
  • QUEUE_PREFIX, (Config.queue_prefix), default: "arrlio.".
  • PREFETCH_COUNT (Config.prefetch_count), default: 1. RabbitMQ prefetch count options.
  • EVENT_TTL (Config.event_ttl), default: 600. x-message-ttl RabbitMQ option, seconds.