config.go | 7 ++++--- diff --git a/config.go b/config.go index ff222b325e828e7d4093e5ed0cfc65034eea4d75..860f6cd19a6d96d2317b9e3d4637e61d31834964 100644 --- a/config.go +++ b/config.go @@ -130,16 +130,17 @@ if cfg.MinDialTimeout == 0 { cfg.MinDialTimeout = 5 * time.Second } if cfg.EstablishedConnsPerTorrent == 0 { - cfg.EstablishedConnsPerTorrent = 80 + cfg.EstablishedConnsPerTorrent = 50 } if cfg.HalfOpenConnsPerTorrent == 0 { - cfg.HalfOpenConnsPerTorrent = 80 + cfg.HalfOpenConnsPerTorrent = (cfg.EstablishedConnsPerTorrent + 1) / 2 } if cfg.TorrentPeersHighWater == 0 { + // Memory and freshness are the concern here. cfg.TorrentPeersHighWater = 500 } if cfg.TorrentPeersLowWater == 0 { - cfg.TorrentPeersLowWater = 50 + cfg.TorrentPeersLowWater = 2 * cfg.HalfOpenConnsPerTorrent } if cfg.HandshakesTimeout == 0 { cfg.HandshakesTimeout = 20 * time.Second