forked from matrix-org/dendrite
-
Notifications
You must be signed in to change notification settings - Fork 0
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
Squashed commit of the following: commit b5c55fa Author: Neil Alexander <[email protected]> Date: Fri Jul 1 12:00:32 2022 +0100 Version 0.8.9 (matrix-org#2549) * Version 0.8.9 * Update changelog commit b50a24c Author: Neil Alexander <[email protected]> Date: Fri Jul 1 10:54:07 2022 +0100 Roomserver producers package (matrix-org#2546) * Give the roomserver a producers package * Change init point * Populate ACLs API * Fix build issues * `RoomEventProducer` naming commit 89cd0e8 Author: Till <[email protected]> Date: Fri Jul 1 11:49:26 2022 +0200 Try to fix backfilling (matrix-org#2548) * Try to fix backfilling * Return start/end to not confuse clients * Update GMSL * Update GMSL commit 086f182 Author: Neil Alexander <[email protected]> Date: Fri Jul 1 09:50:06 2022 +0100 Disable WebAssembly builds for now commit 54bed4c Author: Neil Alexander <[email protected]> Date: Fri Jul 1 09:37:54 2022 +0100 Blacklist `Guest users can join guest_access rooms` test until it can be investigated commit 561c159 Author: Till <[email protected]> Date: Thu Jun 30 12:34:37 2022 +0200 Silence presence logs (matrix-org#2547) commit 519bc11 Author: Neil Alexander <[email protected]> Date: Wed Jun 29 15:29:39 2022 +0100 Add `evacuateUser` endpoint, use it when deactivating accounts (matrix-org#2545) * Add `evacuateUser` endpoint, use it when deactivating accounts * Populate the API * Clean up user devices when deactivating * Include invites, delete pushers commit 2dea466 Author: Neil Alexander <[email protected]> Date: Wed Jun 29 12:32:24 2022 +0100 Return an error if trying to invite a malformed user ID (matrix-org#2543) commit 2086992 Author: Till <[email protected]> Date: Wed Jun 29 10:49:12 2022 +0200 Don't return `end` if there are not more messages (matrix-org#2542) * Be more spec compliant * Move lazyLoadMembers to own method commit 920a208 Author: Jean Lucas <[email protected]> Date: Mon Jun 27 04:15:19 2022 -0400 Fix nats.go commit (matrix-org#2540) Signed-off-by: Jean Lucas <[email protected]> commit 7120eb6 Author: Neil Alexander <[email protected]> Date: Wed Jun 15 14:27:07 2022 +0100 Add `InputDeviceListUpdate` to the keyserver, remove old input API (matrix-org#2536) * Add `InputDeviceListUpdate` to the keyserver, remove old input API * Fix copyright * Log more information when a device list update fails commit 1b90cc9 Author: Till <[email protected]> Date: Wed Jun 15 12:50:02 2022 +0200 Fix rare panic when returning user devices over federation (matrix-org#2534) commit 4c2a10f Author: Neil Alexander <[email protected]> Date: Mon Jun 13 15:11:10 2022 +0100 Handle state before, send history visibility in output (matrix-org#2532) * Check state before event * Tweaks * Refactor a bit, include in output events * Don't waste time if soft failed either * Tweak control flow, comments, use GMSL history visibility type commit c500958 Author: Emanuele Aliberti <[email protected]> Date: Mon Jun 13 13:08:46 2022 +0200 generic CaddyFile in front of Dendrite (monolith) (matrix-org#2531) for Caddy 2.5.x Co-authored-by: emanuele.aliberti <[email protected]> commit e1136f4 Author: Till Faelligen <[email protected]> Date: Mon Jun 13 11:46:59 2022 +0200 Make the linter happy again commit 0a7f7dc Author: Neil Alexander <[email protected]> Date: Mon Jun 13 10:16:30 2022 +0100 Add `--difference` to `resolve-state` tool commit 89d2ada Author: Neil Alexander <[email protected]> Date: Fri Jun 10 10:58:04 2022 +0100 Attempt to raise the file descriptor limit at startup (matrix-org#2527) commit 1030072 Author: Neil Alexander <[email protected]> Date: Fri Jun 10 10:18:32 2022 +0100 Rename the page to "Optimise your installation" commit 16ed163 Author: Neil Alexander <[email protected]> Date: Fri Jun 10 10:15:14 2022 +0100 Highlighting in docs commit e2a6477 Author: Neil Alexander <[email protected]> Date: Fri Jun 10 10:14:15 2022 +0100 Add new next steps page to the documentation commit 660f783 Author: Till <[email protected]> Date: Thu Jun 9 18:38:07 2022 +0200 Correctly redact events over federation (matrix-org#2526) * Ensure we check powerlevel/origin before redacting an event * Add passing test * Use pl.UserLevel * Make check more readable, also check for the sender
- Loading branch information
1 parent
374b77a
commit 7823481
Showing
54 changed files
with
961 additions
and
240 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,68 @@ | ||
{ | ||
# debug | ||
admin off | ||
email [email protected] | ||
default_sni example.com | ||
# Debug endpoint | ||
# acme_ca https://acme-staging-v02.api.letsencrypt.org/directory | ||
} | ||
|
||
####################################################################### | ||
# Snippets | ||
#______________________________________________________________________ | ||
|
||
(handle_errors_maintenance) { | ||
handle_errors { | ||
@maintenance expression {http.error.status_code} == 502 | ||
rewrite @maintenance maintenance.html | ||
root * "/path/to/service/pages" | ||
file_server | ||
} | ||
} | ||
|
||
(matrix-well-known-header) { | ||
# Headers | ||
header Access-Control-Allow-Origin "*" | ||
header Access-Control-Allow-Methods "GET, POST, PUT, DELETE, OPTIONS" | ||
header Access-Control-Allow-Headers "Origin, X-Requested-With, Content-Type, Accept, Authorization" | ||
header Content-Type "application/json" | ||
} | ||
|
||
####################################################################### | ||
|
||
example.com { | ||
|
||
# ... | ||
|
||
handle /.well-known/matrix/server { | ||
import matrix-well-known-header | ||
respond `{ "m.server": "matrix.example.com:443" }` 200 | ||
} | ||
|
||
handle /.well-known/matrix/client { | ||
import matrix-well-known-header | ||
respond `{ "m.homeserver": { "base_url": "https://matrix.example.com" } }` 200 | ||
} | ||
|
||
import handle_errors_maintenance | ||
} | ||
|
||
example.com:8448 { | ||
# server<->server HTTPS traffic | ||
reverse_proxy http://dendrite-host:8008 | ||
} | ||
|
||
matrix.example.com { | ||
|
||
handle /_matrix/* { | ||
# client<->server HTTPS traffic | ||
reverse_proxy http://dendrite-host:8008 | ||
} | ||
|
||
handle_path /* { | ||
# Client webapp (Element SPA or ...) | ||
file_server { | ||
root /path/to/www/example.com/matrix-web-client/ | ||
} | ||
} | ||
} |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,71 @@ | ||
--- | ||
title: Optimise your installation | ||
parent: Installation | ||
has_toc: true | ||
nav_order: 10 | ||
permalink: /installation/start/optimisation | ||
--- | ||
|
||
# Optimise your installation | ||
|
||
Now that you have Dendrite running, the following tweaks will improve the reliability | ||
and performance of your installation. | ||
|
||
## File descriptor limit | ||
|
||
Most platforms have a limit on how many file descriptors a single process can open. All | ||
connections made by Dendrite consume file descriptors — this includes database connections | ||
and network requests to remote homeservers. When participating in large federated rooms | ||
where Dendrite must talk to many remote servers, it is often very easy to exhaust default | ||
limits which are quite low. | ||
|
||
We currently recommend setting the file descriptor limit to 65535 to avoid such | ||
issues. Dendrite will log immediately after startup if the file descriptor limit is too low: | ||
|
||
``` | ||
level=warning msg="IMPORTANT: Process file descriptor limit is currently 1024, it is recommended to raise the limit for Dendrite to at least 65535 to avoid issues" | ||
``` | ||
|
||
UNIX systems have two limits: a hard limit and a soft limit. You can view the soft limit | ||
by running `ulimit -Sn` and the hard limit with `ulimit -Hn`: | ||
|
||
```bash | ||
$ ulimit -Hn | ||
1048576 | ||
|
||
$ ulimit -Sn | ||
1024 | ||
``` | ||
|
||
Increase the soft limit before starting Dendrite: | ||
|
||
```bash | ||
ulimit -Sn 65535 | ||
``` | ||
|
||
The log line at startup should no longer appear if the limit is sufficient. | ||
|
||
If you are running under a systemd service, you can instead add `LimitNOFILE=65535` option | ||
to the `[Service]` section of your service unit file. | ||
|
||
## DNS caching | ||
|
||
Dendrite has a built-in DNS cache which significantly reduces the load that Dendrite will | ||
place on your DNS resolver. This may also speed up outbound federation. | ||
|
||
Consider enabling the DNS cache by modifying the `global` section of your configuration file: | ||
|
||
```yaml | ||
dns_cache: | ||
enabled: true | ||
cache_size: 4096 | ||
cache_lifetime: 600s | ||
``` | ||
## Time synchronisation | ||
Matrix relies heavily on TLS which requires the system time to be correct. If the clock | ||
drifts then you may find that federation no works reliably (or at all) and clients may | ||
struggle to connect to your Dendrite server. | ||
Ensure that the time is synchronised on your system by enabling NTP sync. |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Oops, something went wrong.