qbt: delete incomplete subvolume + tweaks
This commit is contained in:
@@ -157,6 +157,9 @@
|
|||||||
|
|
||||||
# Higher backlog for the large number of concurrent torrent connections
|
# Higher backlog for the large number of concurrent torrent connections
|
||||||
"net.core.netdev_max_backlog" = 5000;
|
"net.core.netdev_max_backlog" = 5000;
|
||||||
|
# Faster cleanup of dead connections from torrent peer churn
|
||||||
|
"net.ipv4.tcp_fin_timeout" = 15; # default 60
|
||||||
|
"net.ipv4.tcp_tw_reuse" = 1;
|
||||||
|
|
||||||
# Minecraft server optimizations
|
# Minecraft server optimizations
|
||||||
# Disable autogroup for better scheduling of game server threads
|
# Disable autogroup for better scheduling of game server threads
|
||||||
|
|||||||
@@ -10,8 +10,6 @@
|
|||||||
imports = [
|
imports = [
|
||||||
(lib.serviceMountWithZpool "qbittorrent" service_configs.zpool_hdds [
|
(lib.serviceMountWithZpool "qbittorrent" service_configs.zpool_hdds [
|
||||||
service_configs.torrents_path
|
service_configs.torrents_path
|
||||||
config.services.qbittorrent.serverConfig.Preferences.Downloads.TempPath
|
|
||||||
|
|
||||||
])
|
])
|
||||||
(lib.serviceMountWithZpool "qbittorrent" service_configs.zpool_ssds [
|
(lib.serviceMountWithZpool "qbittorrent" service_configs.zpool_ssds [
|
||||||
"${config.services.qbittorrent.profileDir}/qBittorrent"
|
"${config.services.qbittorrent.profileDir}/qBittorrent"
|
||||||
@@ -55,12 +53,12 @@
|
|||||||
|
|
||||||
serverConfig.BitTorrent = {
|
serverConfig.BitTorrent = {
|
||||||
Session = {
|
Session = {
|
||||||
MaxConnectionsPerTorrent = 50;
|
MaxConnectionsPerTorrent = 100;
|
||||||
MaxUploadsPerTorrent = 10;
|
MaxUploadsPerTorrent = 15;
|
||||||
MaxConnections = -1;
|
MaxConnections = -1;
|
||||||
MaxUploads = -1;
|
MaxUploads = -1;
|
||||||
|
|
||||||
MaxActiveCheckingTorrents = 5;
|
MaxActiveCheckingTorrents = 2; # reduce disk pressure from concurrent hash checks
|
||||||
|
|
||||||
# queueing
|
# queueing
|
||||||
QueueingSystemEnabled = true;
|
QueueingSystemEnabled = true;
|
||||||
@@ -91,7 +89,7 @@
|
|||||||
inherit (config.services.qbittorrent.serverConfig.Preferences.Downloads) TempPath;
|
inherit (config.services.qbittorrent.serverConfig.Preferences.Downloads) TempPath;
|
||||||
TempPathEnabled = true;
|
TempPathEnabled = true;
|
||||||
|
|
||||||
ConnectionSpeed = 200;
|
ConnectionSpeed = 30;
|
||||||
|
|
||||||
# Automatic Torrent Management: use category save paths for new torrents
|
# Automatic Torrent Management: use category save paths for new torrents
|
||||||
DisableAutoTMMByDefault = false;
|
DisableAutoTMMByDefault = false;
|
||||||
@@ -102,6 +100,22 @@
|
|||||||
PieceExtentAffinity = true;
|
PieceExtentAffinity = true;
|
||||||
SuggestMode = true;
|
SuggestMode = true;
|
||||||
CoalesceReadWrite = true;
|
CoalesceReadWrite = true;
|
||||||
|
|
||||||
|
# max_queued_disk_bytes: the max bytes waiting in the disk I/O queue.
|
||||||
|
# When this limit is reached, peer connections stop reading from their
|
||||||
|
# sockets until the disk thread catches up -- causing the spike-then-zero
|
||||||
|
# pattern. Default is 1MB; high_performance_seed() uses 7MB.
|
||||||
|
# 64MB is above the preset but justified for slow raidz1 HDD random writes
|
||||||
|
# where ZFS txg commits cause periodic I/O stalls.
|
||||||
|
DiskQueueSize = 67108864; # 64MB
|
||||||
|
|
||||||
|
# === Network buffer tuning (from libtorrent high_performance_seed preset) ===
|
||||||
|
# "always stuff at least 1 MiB down each peer pipe, to quickly ramp up send rates"
|
||||||
|
SendBufferLowWatermark = 1024; # 1MB (KiB) -- matches high_performance_seed
|
||||||
|
# "of 500 ms, and a send rate of 4 MB/s, the upper limit should be 2 MB"
|
||||||
|
SendBufferWatermark = 3072; # 3MB (KiB) -- matches high_performance_seed
|
||||||
|
# "put 1.5 seconds worth of data in the send buffer"
|
||||||
|
SendBufferWatermarkFactor = 150; # percent -- matches high_performance_seed
|
||||||
};
|
};
|
||||||
|
|
||||||
Network = {
|
Network = {
|
||||||
|
|||||||
Reference in New Issue
Block a user