Mercurial > prosody-modules
annotate mod_storage_multi/README.md @ 6092:bd3ff802d883
mod_anti_spam: Fix another traceback for origin sessions without an IP
This is likely to be the case for stanzas originating from local hosts, for
example (so not true s2s). It should be safe to bypass the IP check for those.
| author | Matthew Wild <mwild1@gmail.com> |
|---|---|
| date | Sat, 28 Dec 2024 21:02:08 +0000 |
| parents | fe081789f7b5 |
| children |
| rev | line source |
|---|---|
| 1886 | 1 --- |
| 2 summary: Multi-backend storage module (WIP) | |
| 3 labels: | |
| 4 - NeedDocs | |
|
1887
a7fdab9c14e2
mod_storage_multi: Put in Alpha stage
Kim Alvefur <zash@zash.se>
parents:
1886
diff
changeset
|
5 - Stage-Alpha |
| 1886 | 6 ... |
| 7 | |
| 8 Introduction | |
| 9 ============ | |
| 10 | |
| 11 This module attemtps to provide a storage driver that is really multiple | |
| 12 storage drivers. This could be used for storage error tolerance or | |
| 13 caching of data in a faster storage driver. | |
| 14 | |
| 15 Configuration | |
| 16 ============= | |
| 17 | |
| 18 An example: | |
| 19 | |
| 20 ``` {.lua} | |
| 21 storage = "multi" | |
| 22 storage_multi_policy = "all" | |
| 23 storage_multi = { | |
| 24 "memory", | |
| 25 "internal", | |
| 26 "sql" | |
| 27 } | |
| 28 ``` | |
| 29 | |
| 30 Here data would be first read from or written to [mod\_storage\_memory], | |
| 31 then internal storage, then SQL storage. For reads, the first successful | |
| 32 read will be used. For writes, it depends on the `storage_multi_policy` | |
| 33 option. If set to `"all"`, then all storage backends must report success | |
| 34 for the write to be considered successful. Other options are `"one"` and | |
| 35 `"majority"`. |
