Mercurial > prosody-modules
annotate mod_presence_cache/README.markdown @ 1981:1f815f57fa57
mod_storage_lmdb: Factor out a transaction wrapper
author | Kim Alvefur <zash@zash.se> |
---|---|
date | Fri, 18 Dec 2015 22:00:00 +0100 |
parents | 65beed3ac500 |
children | 39d958f4a0c3 |
rev | line source |
---|---|
1952
9d0c33ebbcc5
mod_presence_cache: Cache incoming presence broadcasts in order to get clients up to speed with who is online faster
Kim Alvefur <zash@zash.se>
parents:
diff
changeset
|
1 --- |
9d0c33ebbcc5
mod_presence_cache: Cache incoming presence broadcasts in order to get clients up to speed with who is online faster
Kim Alvefur <zash@zash.se>
parents:
diff
changeset
|
2 summary: Cache presence incoming presence |
9d0c33ebbcc5
mod_presence_cache: Cache incoming presence broadcasts in order to get clients up to speed with who is online faster
Kim Alvefur <zash@zash.se>
parents:
diff
changeset
|
3 ... |
9d0c33ebbcc5
mod_presence_cache: Cache incoming presence broadcasts in order to get clients up to speed with who is online faster
Kim Alvefur <zash@zash.se>
parents:
diff
changeset
|
4 |
9d0c33ebbcc5
mod_presence_cache: Cache incoming presence broadcasts in order to get clients up to speed with who is online faster
Kim Alvefur <zash@zash.se>
parents:
diff
changeset
|
5 Introduction |
9d0c33ebbcc5
mod_presence_cache: Cache incoming presence broadcasts in order to get clients up to speed with who is online faster
Kim Alvefur <zash@zash.se>
parents:
diff
changeset
|
6 ============ |
9d0c33ebbcc5
mod_presence_cache: Cache incoming presence broadcasts in order to get clients up to speed with who is online faster
Kim Alvefur <zash@zash.se>
parents:
diff
changeset
|
7 |
9d0c33ebbcc5
mod_presence_cache: Cache incoming presence broadcasts in order to get clients up to speed with who is online faster
Kim Alvefur <zash@zash.se>
parents:
diff
changeset
|
8 This module stores presence from users contact even when they are |
9d0c33ebbcc5
mod_presence_cache: Cache incoming presence broadcasts in order to get clients up to speed with who is online faster
Kim Alvefur <zash@zash.se>
parents:
diff
changeset
|
9 offline, so that the client can see who is online faster when they sign |
9d0c33ebbcc5
mod_presence_cache: Cache incoming presence broadcasts in order to get clients up to speed with who is online faster
Kim Alvefur <zash@zash.se>
parents:
diff
changeset
|
10 in, and won't have to wait for remote servers to reply. |
9d0c33ebbcc5
mod_presence_cache: Cache incoming presence broadcasts in order to get clients up to speed with who is online faster
Kim Alvefur <zash@zash.se>
parents:
diff
changeset
|
11 |
9d0c33ebbcc5
mod_presence_cache: Cache incoming presence broadcasts in order to get clients up to speed with who is online faster
Kim Alvefur <zash@zash.se>
parents:
diff
changeset
|
12 Note that in its current form, the number of presence stanzas sent to a |
9d0c33ebbcc5
mod_presence_cache: Cache incoming presence broadcasts in order to get clients up to speed with who is online faster
Kim Alvefur <zash@zash.se>
parents:
diff
changeset
|
13 client is doubled, as the client would get both the cached stanzas and |
9d0c33ebbcc5
mod_presence_cache: Cache incoming presence broadcasts in order to get clients up to speed with who is online faster
Kim Alvefur <zash@zash.se>
parents:
diff
changeset
|
14 replies to presence probes. Also see [mod\_throttle\_presence]. |
9d0c33ebbcc5
mod_presence_cache: Cache incoming presence broadcasts in order to get clients up to speed with who is online faster
Kim Alvefur <zash@zash.se>
parents:
diff
changeset
|
15 |
9d0c33ebbcc5
mod_presence_cache: Cache incoming presence broadcasts in order to get clients up to speed with who is online faster
Kim Alvefur <zash@zash.se>
parents:
diff
changeset
|
16 By default, only binary (online or offline) state is stored. It can |
1959
65beed3ac500
mod_presence_cache/README: Try to discourage full stanza caching since it is experimental
Kim Alvefur <zash@zash.se>
parents:
1952
diff
changeset
|
17 optionally store the full presence but this requires much more memory |
65beed3ac500
mod_presence_cache/README: Try to discourage full stanza caching since it is experimental
Kim Alvefur <zash@zash.se>
parents:
1952
diff
changeset
|
18 and bandwidth. |
1952
9d0c33ebbcc5
mod_presence_cache: Cache incoming presence broadcasts in order to get clients up to speed with who is online faster
Kim Alvefur <zash@zash.se>
parents:
diff
changeset
|
19 |
9d0c33ebbcc5
mod_presence_cache: Cache incoming presence broadcasts in order to get clients up to speed with who is online faster
Kim Alvefur <zash@zash.se>
parents:
diff
changeset
|
20 Configuration |
9d0c33ebbcc5
mod_presence_cache: Cache incoming presence broadcasts in order to get clients up to speed with who is online faster
Kim Alvefur <zash@zash.se>
parents:
diff
changeset
|
21 ============= |
9d0c33ebbcc5
mod_presence_cache: Cache incoming presence broadcasts in order to get clients up to speed with who is online faster
Kim Alvefur <zash@zash.se>
parents:
diff
changeset
|
22 |
9d0c33ebbcc5
mod_presence_cache: Cache incoming presence broadcasts in order to get clients up to speed with who is online faster
Kim Alvefur <zash@zash.se>
parents:
diff
changeset
|
23 Just enable the module. |
9d0c33ebbcc5
mod_presence_cache: Cache incoming presence broadcasts in order to get clients up to speed with who is online faster
Kim Alvefur <zash@zash.se>
parents:
diff
changeset
|
24 |
9d0c33ebbcc5
mod_presence_cache: Cache incoming presence broadcasts in order to get clients up to speed with who is online faster
Kim Alvefur <zash@zash.se>
parents:
diff
changeset
|
25 modules_enabled = { |
9d0c33ebbcc5
mod_presence_cache: Cache incoming presence broadcasts in order to get clients up to speed with who is online faster
Kim Alvefur <zash@zash.se>
parents:
diff
changeset
|
26 -- more modules |
9d0c33ebbcc5
mod_presence_cache: Cache incoming presence broadcasts in order to get clients up to speed with who is online faster
Kim Alvefur <zash@zash.se>
parents:
diff
changeset
|
27 "presence_cache"; |
9d0c33ebbcc5
mod_presence_cache: Cache incoming presence broadcasts in order to get clients up to speed with who is online faster
Kim Alvefur <zash@zash.se>
parents:
diff
changeset
|
28 } |
9d0c33ebbcc5
mod_presence_cache: Cache incoming presence broadcasts in order to get clients up to speed with who is online faster
Kim Alvefur <zash@zash.se>
parents:
diff
changeset
|
29 |
9d0c33ebbcc5
mod_presence_cache: Cache incoming presence broadcasts in order to get clients up to speed with who is online faster
Kim Alvefur <zash@zash.se>
parents:
diff
changeset
|
30 Advanced configuration |
9d0c33ebbcc5
mod_presence_cache: Cache incoming presence broadcasts in order to get clients up to speed with who is online faster
Kim Alvefur <zash@zash.se>
parents:
diff
changeset
|
31 ====================== |
9d0c33ebbcc5
mod_presence_cache: Cache incoming presence broadcasts in order to get clients up to speed with who is online faster
Kim Alvefur <zash@zash.se>
parents:
diff
changeset
|
32 |
1959
65beed3ac500
mod_presence_cache/README: Try to discourage full stanza caching since it is experimental
Kim Alvefur <zash@zash.se>
parents:
1952
diff
changeset
|
33 To enable *experimental* full stanza caching: |
1952
9d0c33ebbcc5
mod_presence_cache: Cache incoming presence broadcasts in order to get clients up to speed with who is online faster
Kim Alvefur <zash@zash.se>
parents:
diff
changeset
|
34 |
9d0c33ebbcc5
mod_presence_cache: Cache incoming presence broadcasts in order to get clients up to speed with who is online faster
Kim Alvefur <zash@zash.se>
parents:
diff
changeset
|
35 presence_cache_full = false |
9d0c33ebbcc5
mod_presence_cache: Cache incoming presence broadcasts in order to get clients up to speed with who is online faster
Kim Alvefur <zash@zash.se>
parents:
diff
changeset
|
36 |
1959
65beed3ac500
mod_presence_cache/README: Try to discourage full stanza caching since it is experimental
Kim Alvefur <zash@zash.se>
parents:
1952
diff
changeset
|
37 This will usually double the presence data sent to clients, pending |
65beed3ac500
mod_presence_cache/README: Try to discourage full stanza caching since it is experimental
Kim Alvefur <zash@zash.se>
parents:
1952
diff
changeset
|
38 support for deduplication. |
65beed3ac500
mod_presence_cache/README: Try to discourage full stanza caching since it is experimental
Kim Alvefur <zash@zash.se>
parents:
1952
diff
changeset
|
39 |
1952
9d0c33ebbcc5
mod_presence_cache: Cache incoming presence broadcasts in order to get clients up to speed with who is online faster
Kim Alvefur <zash@zash.se>
parents:
diff
changeset
|
40 TODO |
9d0c33ebbcc5
mod_presence_cache: Cache incoming presence broadcasts in order to get clients up to speed with who is online faster
Kim Alvefur <zash@zash.se>
parents:
diff
changeset
|
41 ==== |
9d0c33ebbcc5
mod_presence_cache: Cache incoming presence broadcasts in order to get clients up to speed with who is online faster
Kim Alvefur <zash@zash.se>
parents:
diff
changeset
|
42 |
9d0c33ebbcc5
mod_presence_cache: Cache incoming presence broadcasts in order to get clients up to speed with who is online faster
Kim Alvefur <zash@zash.se>
parents:
diff
changeset
|
43 - Deduplication, i.e don's send stanzas that are identical to the last |
9d0c33ebbcc5
mod_presence_cache: Cache incoming presence broadcasts in order to get clients up to speed with who is online faster
Kim Alvefur <zash@zash.se>
parents:
diff
changeset
|
44 seen. |
9d0c33ebbcc5
mod_presence_cache: Cache incoming presence broadcasts in order to get clients up to speed with who is online faster
Kim Alvefur <zash@zash.se>
parents:
diff
changeset
|
45 - Cache invalidation or expiry, eg if a remote server goes down or is |
9d0c33ebbcc5
mod_presence_cache: Cache incoming presence broadcasts in order to get clients up to speed with who is online faster
Kim Alvefur <zash@zash.se>
parents:
diff
changeset
|
46 gone a long time. |
9d0c33ebbcc5
mod_presence_cache: Cache incoming presence broadcasts in order to get clients up to speed with who is online faster
Kim Alvefur <zash@zash.se>
parents:
diff
changeset
|
47 - Sending probes at some interval to keep the cache reasonably fresh. |
9d0c33ebbcc5
mod_presence_cache: Cache incoming presence broadcasts in order to get clients up to speed with who is online faster
Kim Alvefur <zash@zash.se>
parents:
diff
changeset
|
48 |
9d0c33ebbcc5
mod_presence_cache: Cache incoming presence broadcasts in order to get clients up to speed with who is online faster
Kim Alvefur <zash@zash.se>
parents:
diff
changeset
|
49 |