diff --git a/conduwuit-example.toml b/conduwuit-example.toml index 0e718521a376c713845cd042606ef8f1cc3a1858..32e82deb436dc29d3d02aea802f9b2727044d293 100644 --- a/conduwuit-example.toml +++ b/conduwuit-example.toml @@ -363,6 +363,84 @@ url_preview_check_root_domain = false +### Request Timeouts, Connection Timeouts, and Connection Pooling + +## Request Timeouts are HTTP response timeouts +## Connection Timeouts are TCP connection timeouts +## +## Connection Pooling Timeouts are timeouts for keeping an open idle connection alive. +## Connection pooling and keepalive is very useful for federation or other places where for performance reasons, +## we want to keep connections open that we will re-use frequently due to TCP and TLS 1.3 overhead/expensiveness. +## +## Generally these defaults are the best, but if you find a reason to need to change these they are here. + +# Default/base connection timeout +# This is used only by URL previews and update/news endpoint checks +# +# Defaults to 10 seconds +#request_conn_timeout = 10 + +# Default/base request timeout +# This is used only by URL previews and update/news endpoint checks +# +# Defaults to 35 seconds +#request_timeout = 35 + +# Default/base max idle connections per host +# This is used only by URL previews and update/news endpoint checks +# +# Defaults to 1 as generally the same open connection can be re-used +#request_idle_per_host = 1 + +# Default/base idle connection pool timeout +# This is used only by URL previews and update/news endpoint checks +# +# Defaults to 5 seconds +#request_idle_timeout = 5 + +# Federation well-known resolution connection timeout +# +# Defaults to 6 seconds +#well_known_conn_timeout = 6 + +# Federation HTTP well-known resolution request timeout +# +# Defaults to 10 seconds +#well_known_timeout = 10 + +# Federation client/server request timeout +# You most definitely want this to be high to account for extremely large room joins, slow homeservers, your own resources etc. +# +# Defaults to 300 seconds +#federation_timeout + +# Federation client/sender max idle connections per host +# +# Defaults to 1 as generally the same open connection can be re-used +#federation_idle_per_host = 1 + +# Federation client/sender idle connection pool timeout +# +# Defaults to 25 seconds +#federation_idle_timeout = 25 + +# Appservice URL request connection timeout +# +# Defaults to 120 seconds +#appservice_timeout = 120 + +# Appservice URL idle connection pool timeout +# +# Defaults to 300 seconds +#appservice_idle_timeout = 300 + +# Notification gateway pusher idle connection pool timeout +# +# Defaults to 15 seconds +#pusher_idle_timeout = 15 + + + ### Presence / Typing Indicators / Read Receipts # Config option to control local (your server only) presence updates/requests. Defaults to false.