diff --git a/README.md b/README.md index 6570896e..d28a1def 100644 --- a/README.md +++ b/README.md @@ -35,6 +35,10 @@ After that you can install it without problem. The package uses a prebuilt python virtual environnement. The binary are taken from this repository: https://github.com/Josue-T/synapse_python_build The script to build the binary is also available. +### Performance Tuning + +Depending on the amount of RAM on your système, you might want to tune the cache configuration in `/etc/matrix-synapse/homeserver.yaml`. + ### Web client If you want a web client you can also install Element with this package: https://github.com/YunoHost-Apps/element_ynh . diff --git a/README_fr.md b/README_fr.md index 05a1b567..dac20599 100644 --- a/README_fr.md +++ b/README_fr.md @@ -35,6 +35,10 @@ After that you can install it without problem. The package uses a prebuilt python virtual environnement. The binary are taken from this repository: https://github.com/Josue-T/synapse_python_build The script to build the binary is also available. +### Amélioration de la performance + +En fonction de la quantité de RAM de votre système, vous voudrez peut-être augmenter ou diminuer la taille des caches dans `/etc/matrix-synapse/homeserver.yaml` + ### Web client If you want a web client you can also install Element with this package: https://github.com/YunoHost-Apps/element_ynh . diff --git a/conf/homeserver.yaml b/conf/homeserver.yaml index f073e4e8..10fdd361 100644 --- a/conf/homeserver.yaml +++ b/conf/homeserver.yaml @@ -817,6 +817,33 @@ database: #args: #database: /root/homeserver.db +caches: + # Controls the global cache factor, which is the default cache factor + # for all caches if a specific factor for that cache is not otherwise + # set. + # + # This can also be set by the "SYNAPSE_CACHE_FACTOR" environment + # variable. Setting by environment variable takes priority over + # setting through the config file. + # + # Defaults to 0.5, which will half the size of all caches. + # + # global_factor: 2.0 + + # Controls how long an entry can be in a cache without having been + # accessed before being evicted. Defaults to None, which means + # entries are never evicted based on time. + # + # expiry_time: 120m + + # Controls how long the results of a /sync request are cached for after + # a successful response is returned. A higher duration can help clients with + # intermittent connections, at the cost of higher memory usage. + # + # By default, this is zero, which means that sync responses are not cached + # at all. + # + sync_response_cache_duration: 15m ## Logging ## diff --git a/conf/nginx.conf b/conf/nginx.conf index 98bafc35..9f4966a2 100644 --- a/conf/nginx.conf +++ b/conf/nginx.conf @@ -6,6 +6,12 @@ location __PATH__/ { client_max_body_size 100M; + # Use longer timeouts for the sync API + location __PATH__/client/r0/sync { + proxy_read_timeout 7m; + proxy_pass http://localhost:__PORT__; + } + # Use the specific path for the php file. It's more secure than global php path location __PATH__/cas_server.php { alias /var/www/__APP__/;