emqx/apps/emqx_retainer
Zaiming (Stone) Shi ad53523e6b refactor: delete non-prod code
So far the retainer backend type is always `built_in_database`.
The slightly over-engineered pre-implementation to support
another backend is likely not going to fly as the EMQX
resource frame work is mostly for auth and data integration.
i.e. not generic enough for retained messages.
2024-02-19 14:36:12 +01:00
..
etc feat: generate a minimized emqx.conf 2022-05-31 19:20:27 +08:00
include chore: update copyright year 2023 2023-01-02 09:22:27 +01:00
src refactor: delete non-prod code 2024-02-19 14:36:12 +01:00
test feat(emqx-conf): manage mria tables explicitly during startup 2024-02-13 20:36:21 +01:00
.gitignore style: ensure newline at EOF for all files 2021-11-04 14:40:14 +01:00
README.md docs(README): EMQ X -> EMQX 2022-02-15 16:19:26 +01:00
rebar.config chore: upgrade to emqtt 1.10.0 2023-12-06 19:18:15 +01:00
TODO refactor(proj): Add apps 2020-12-04 22:11:53 +01:00

EMQX Retainer

The retainer plugin is responsible for storing retained MQTT messages.

Configuration

etc/emqx_retainer.conf:

## Where to store the retained messages.
## Notice that all nodes in a cluster are to have the same storage_type.
##
## Value: ram | disc
##  - ram: memory only
##  - disc: both memory and disc
##
## Default: ram
retainer.storage_type = ram

## Maximum number of retained messages allowed.
##
## Value: Number >= 0
retainer.max_retained_messages = 1000000

## Maximum payload size of a retained message.
##
## Value: Bytes
retainer.max_payload_size = 64KB

## Expiration interval of the retained messages. Never expire if the value is 0.
##
## Value: Duration
##  - h: hour
##  - m: minute
##  - s: second
##
## Examples:
##  - 2h:  2 hours
##  - 30m: 30 minutes
##  - 20s: 20 seconds
##
## Default: 0
retainer.expiry_interval = 0

License

Apache License Version 2.0

Author

EMQX Team