VerneMQ
  • Welcome
  • Getting Started
  • MQTT Introduction
  • Installing VerneMQ
    • Running VerneMQ using Docker
  • Configuring VerneMQ
    • Introduction
    • The VerneMQ conf file
    • Auth using files
    • Auth using a database
    • Enhanced Auth
    • MQTT Options
    • MQTT Listeners
    • HTTP Listeners
    • Non-standard MQTT options
    • Websockets
    • Logging
    • Consumer session balancing
    • Plugins
    • Shared subscriptions
    • Advanced Options
    • Storage
    • No Op Engine
    • Generic offline store
    • Redis based message passing
    • Redis based subscription store
    • MQTT Bridge
  • VerneMQ Clustering
    • Introduction
    • Inter-node Communication
    • Dealing with Netsplits
  • Live Administration
    • Introduction
    • Inspecting and managing sessions
    • Retained messages
    • Live reconfiguration
    • Managing Listeners
    • HTTP API
    • Tracing
  • Monitoring
    • Introduction
    • $SYSTree
    • Graphite
    • Netdata
    • Prometheus
    • Health Checker
    • Status Page
  • Plugin Development
    • Introduction
    • Session lifecycle
    • Subscribe Flow
    • Publish Flow
    • Enhanced Auth Flow
    • Erlang Boilerplate
    • Lua Scripting Support
    • Webhooks
    • Events sidecar Plugin
  • Misc
    • Loadtesting VerneMQ
    • Not a tuning guide
    • Change Open File Limits
  • Guides
    • A typical VerneMQ deployment
    • VerneMQ on Kubernetes
    • Loadtesting VerneMQ
    • Clustering during development
    • Not a tuning guide
    • Change Open File Limits
Powered by GitBook
On this page
  • Redis shards connect options
  • Main queue workers per redis shard
  • Main queue worker sleep interval
  1. Configuring VerneMQ

Redis based message passing

New message passing model for VerneMQ

This new model uses redis as its queue for passing the messages between the broker nodes. Each broker node has a set of workers which constantly polls redis to fetch messages from its own queue, called main queue.

Redis shards connect options

Specify the list of comma separated connect options list [[{host, "localhost"}, {port, 1234}]] of redis shards used for message passing.

msg_queue_redis_shards_connect_options = [[{host,"127.0.0.1"},{port,6379},{database,1}]]

Main queue workers per redis shard

Specify the number of worker processes per redis shard that will poll their main queues in message passing redis shard for new messages.

main_queue_workers_per_redis_shard = 1

Main queue worker sleep interval

Specify the interval (in milliseconds) a worker process waits before making another poll request.

redis_queue_sleep_interval = 0
PreviousGeneric offline storeNextRedis based subscription store

Last updated 2 years ago