Tuning the Server

From SponsorBlock
Jump to navigation Jump to search

Increase ulimit

ulimit -n 65535

Sysctl

Increase the ports available

sysctl -w net.ipv4.ip_local_port_range="9000 65500"

And add this line to /etc/sysctl.conf

net.ipv4.ip_local_port_range=9000 65500

Increase max connections

sysctl -w net.core.somaxconn=324000

And add this line to /etc/sysctl.conf

net.core.somaxconn=324000
More limits
net.ipv4.tcp_max_syn_backlog=3240000
net.core.netdev_max_backlog=70000
net.ipv4.tcp_max_orphans=70000

Lower timeout to allow more connections per second[1]

net.ipv4.tcp_fin_timeout=20

Security limits

Add these lines to /etc/security/limits.conf

*               soft    nofile          65535
*               hard    nofile          65535

Postgres

Autovacuum - 10mins [2]

Hugepages for shared_memory buffers

syncronous_commits off [3]

Logical Replication

Thumbnail Cache

Must be done after every reboot

fs max files

sysctl -w fs.inotify.max_user_instances=2099999999
sysctl -w fs.inotify.max_user_watches=2099999999
sysctl -w fs.inotify.max_queued_events=2099999999