Index your code with Devin

[DeepWiki](https://deepwiki.com/)

[DeepWiki](https://deepwiki.com/)

[YouROK/TorrServer](https://github.com/YouROK/TorrServer "Open repository")

Index your code with

Devin
Edit WikiShare

Last indexed: 28 February 2026 ( [d26699](https://github.com/YouROK/TorrServer/commits/d266990f))

- [Overview](https://deepwiki.com/YouROK/TorrServer/1-overview)
- [System Architecture](https://deepwiki.com/YouROK/TorrServer/2-system-architecture)
- [Backend System](https://deepwiki.com/YouROK/TorrServer/3-backend-system)
- [Server Initialization and Lifecycle](https://deepwiki.com/YouROK/TorrServer/3.1-server-initialization-and-lifecycle)
- [BitTorrent Engine (BTServer)](https://deepwiki.com/YouROK/TorrServer/3.2-bittorrent-engine-(btserver))
- [Cache and Storage System](https://deepwiki.com/YouROK/TorrServer/3.3-cache-and-storage-system)
- [Reader and Priority Management](https://deepwiki.com/YouROK/TorrServer/3.4-reader-and-priority-management)
- [Torrent Management API](https://deepwiki.com/YouROK/TorrServer/3.5-torrent-management-api)
- [Web Server and Middleware](https://deepwiki.com/YouROK/TorrServer/3.6-web-server-and-middleware)
- [Static Asset Serving](https://deepwiki.com/YouROK/TorrServer/3.7-static-asset-serving)
- [Streaming and Playback](https://deepwiki.com/YouROK/TorrServer/3.8-streaming-and-playback)
- [REST API Reference](https://deepwiki.com/YouROK/TorrServer/3.9-rest-api-reference)
- [Optional Services](https://deepwiki.com/YouROK/TorrServer/3.10-optional-services)
- [Database and Persistence](https://deepwiki.com/YouROK/TorrServer/3.11-database-and-persistence)
- [Frontend System](https://deepwiki.com/YouROK/TorrServer/4-frontend-system)
- [Application Bootstrap and PWA](https://deepwiki.com/YouROK/TorrServer/4.1-application-bootstrap-and-pwa)
- [Build System and Asset Pipeline](https://deepwiki.com/YouROK/TorrServer/4.2-build-system-and-asset-pipeline)
- [Component Architecture](https://deepwiki.com/YouROK/TorrServer/4.3-component-architecture)
- [Torrent Management UI](https://deepwiki.com/YouROK/TorrServer/4.4-torrent-management-ui)
- [Torrent Details and Cache Visualization](https://deepwiki.com/YouROK/TorrServer/4.5-torrent-details-and-cache-visualization)
- [Settings and Configuration UI](https://deepwiki.com/YouROK/TorrServer/4.6-settings-and-configuration-ui)
- [Internationalization and Localization](https://deepwiki.com/YouROK/TorrServer/4.7-internationalization-and-localization)
- [Search Integration](https://deepwiki.com/YouROK/TorrServer/4.8-search-integration)
- [Configuration and Settings](https://deepwiki.com/YouROK/TorrServer/5-configuration-and-settings)
- [Command-Line Arguments](https://deepwiki.com/YouROK/TorrServer/5.1-command-line-arguments)
- [BitTorrent Configuration](https://deepwiki.com/YouROK/TorrServer/5.2-bittorrent-configuration)
- [Network and Proxy Settings](https://deepwiki.com/YouROK/TorrServer/5.3-network-and-proxy-settings)
- [Security and Authentication](https://deepwiki.com/YouROK/TorrServer/5.4-security-and-authentication)
- [Cache and Storage Configuration](https://deepwiki.com/YouROK/TorrServer/5.5-cache-and-storage-configuration)
- [External Service Configuration](https://deepwiki.com/YouROK/TorrServer/5.6-external-service-configuration)
- [Deployment and Installation](https://deepwiki.com/YouROK/TorrServer/6-deployment-and-installation)
- [Linux Installation](https://deepwiki.com/YouROK/TorrServer/6.1-linux-installation)
- [macOS Installation](https://deepwiki.com/YouROK/TorrServer/6.2-macos-installation)
- [Docker Deployment](https://deepwiki.com/YouROK/TorrServer/6.3-docker-deployment)
- [Platform-Specific Considerations](https://deepwiki.com/YouROK/TorrServer/6.4-platform-specific-considerations)
- [Development Guide](https://deepwiki.com/YouROK/TorrServer/7-development-guide)
- [Building from Source](https://deepwiki.com/YouROK/TorrServer/7.1-building-from-source)
- [Project Structure](https://deepwiki.com/YouROK/TorrServer/7.2-project-structure)
- [Backend Development](https://deepwiki.com/YouROK/TorrServer/7.3-backend-development)
- [Frontend Development](https://deepwiki.com/YouROK/TorrServer/7.4-frontend-development)
- [Testing and CI/CD](https://deepwiki.com/YouROK/TorrServer/7.5-testing-and-cicd)
- [Contributing Guidelines](https://deepwiki.com/YouROK/TorrServer/7.6-contributing-guidelines)

Menu

# Cache and Storage Configuration

Relevant source files

- [server/settings/btsets.go](https://github.com/YouROK/TorrServer/blob/d266990f/server/settings/btsets.go)
- [server/torr/apihelper.go](https://github.com/YouROK/TorrServer/blob/d266990f/server/torr/apihelper.go)
- [server/torr/preload.go](https://github.com/YouROK/TorrServer/blob/d266990f/server/torr/preload.go)
- [server/torr/storage/torrstor/cache.go](https://github.com/YouROK/TorrServer/blob/d266990f/server/torr/storage/torrstor/cache.go)
- [server/torr/storage/torrstor/diskpiece.go](https://github.com/YouROK/TorrServer/blob/d266990f/server/torr/storage/torrstor/diskpiece.go)
- [server/torr/storage/torrstor/mempiece.go](https://github.com/YouROK/TorrServer/blob/d266990f/server/torr/storage/torrstor/mempiece.go)
- [server/torr/storage/torrstor/piece.go](https://github.com/YouROK/TorrServer/blob/d266990f/server/torr/storage/torrstor/piece.go)
- [server/torr/storage/torrstor/ranges.go](https://github.com/YouROK/TorrServer/blob/d266990f/server/torr/storage/torrstor/ranges.go)
- [server/torr/storage/torrstor/reader.go](https://github.com/YouROK/TorrServer/blob/d266990f/server/torr/storage/torrstor/reader.go)
- [server/torr/torrent.go](https://github.com/YouROK/TorrServer/blob/d266990f/server/torr/torrent.go)
- [web/src/components/Settings/MobileAppSettings.jsx](https://github.com/YouROK/TorrServer/blob/d266990f/web/src/components/Settings/MobileAppSettings.jsx)
- [web/src/components/Settings/SecondarySettingsComponent.jsx](https://github.com/YouROK/TorrServer/blob/d266990f/web/src/components/Settings/SecondarySettingsComponent.jsx)
- [web/src/components/Settings/defaultSettings.js](https://github.com/YouROK/TorrServer/blob/d266990f/web/src/components/Settings/defaultSettings.js)
- [web/src/locales/bg/translation.json](https://github.com/YouROK/TorrServer/blob/d266990f/web/src/locales/bg/translation.json)
- [web/src/locales/en/translation.json](https://github.com/YouROK/TorrServer/blob/d266990f/web/src/locales/en/translation.json)
- [web/src/locales/fr/translation.json](https://github.com/YouROK/TorrServer/blob/d266990f/web/src/locales/fr/translation.json)
- [web/src/locales/ro/translation.json](https://github.com/YouROK/TorrServer/blob/d266990f/web/src/locales/ro/translation.json)
- [web/src/locales/ru/translation.json](https://github.com/YouROK/TorrServer/blob/d266990f/web/src/locales/ru/translation.json)
- [web/src/locales/ua/translation.json](https://github.com/YouROK/TorrServer/blob/d266990f/web/src/locales/ua/translation.json)
- [web/src/locales/zh/translation.json](https://github.com/YouROK/TorrServer/blob/d266990f/web/src/locales/zh/translation.json)
- [web/src/utils/Utils.js](https://github.com/YouROK/TorrServer/blob/d266990f/web/src/utils/Utils.js)

This page documents the cache and storage configuration fields of the `BTSets` struct and explains how they drive the `torrstor` cache and reader systems at runtime. For the broader BitTorrent protocol options (connections, rate limits, encryption), see [BitTorrent Configuration](https://deepwiki.com/YouROK/TorrServer/5.2-bittorrent-configuration). For the cache visualization in the UI, see [Torrent Details and Cache Visualization](https://deepwiki.com/YouROK/TorrServer/4.5-torrent-details-and-cache-visualization). For the internal mechanics of piece eviction and priority, see [Cache and Storage System](https://deepwiki.com/YouROK/TorrServer/3.3-cache-and-storage-system) and [Reader and Priority Management](https://deepwiki.com/YouROK/TorrServer/3.4-reader-and-priority-management).

* * *

## Settings Quick Reference

All settings below live in the `BTSets` struct in [server/settings/btsets.go27-89](https://github.com/YouROK/TorrServer/blob/d266990f/server/settings/btsets.go#L27-L89)

| Field | Type | Default | Unit |
| --- | --- | --- | --- |
| `CacheSize` | `int64` | `67108864` (64 MB) | bytes |
| `ReaderReadAHead` | `int` | `95` | percent (5–100) |
| `PreloadCache` | `int` | `50` | percent (0–100) |
| `UseDisk` | `bool` | `false` | — |
| `TorrentsSavePath` | `string` | `""` | filesystem path |
| `RemoveCacheOnDrop` | `bool` | `false` | — |
| `ResponsiveMode` | `bool` | `true` | — |

These defaults are set by `SetDefaultConfig()` in [server/settings/btsets.go157-187](https://github.com/YouROK/TorrServer/blob/d266990f/server/settings/btsets.go#L157-L187) Calling `SetBTSets()` validates and clamps all values before persisting to the database.

* * *

## How Settings Flow into Runtime Subsystems

**Diagram: BTSets Fields to Runtime Code Entities**

```
CacheSize

UseDisk

TorrentsSavePath

RemoveCacheOnDrop

ReaderReadAHead

PreloadCache + CacheSize

ResponsiveMode

UseDisk=false

UseDisk=true

BTSets
(server/settings/btsets.go)

Cache.capacity
(torrstor/cache.go)

NewPiece()
(torrstor/piece.go)

DiskPiece.name
(torrstor/diskpiece.go)

Cache.Close()
(torrstor/cache.go)

Reader.getOffsetRange()
(torrstor/reader.go)

Preload()
(torr/apihelper.go)

torrent.Reader.SetResponsive()
(torr/preload.go)

MemPiece
(torrstor/mempiece.go)
```

Sources: [server/settings/btsets.go27-89](https://github.com/YouROK/TorrServer/blob/d266990f/server/settings/btsets.go#L27-L89) [server/torr/storage/torrstor/cache.go43-76](https://github.com/YouROK/TorrServer/blob/d266990f/server/torr/storage/torrstor/cache.go#L43-L76) [server/torr/storage/torrstor/piece.go24-36](https://github.com/YouROK/TorrServer/blob/d266990f/server/torr/storage/torrstor/piece.go#L24-L36) [server/torr/storage/torrstor/reader.go143-161](https://github.com/YouROK/TorrServer/blob/d266990f/server/torr/storage/torrstor/reader.go#L143-L161) [server/torr/apihelper.go266-277](https://github.com/YouROK/TorrServer/blob/d266990f/server/torr/apihelper.go#L266-L277)

* * *

## CacheSize

`CacheSize` sets the `Cache.capacity` field (in bytes). This is the maximum amount of torrent data held in memory or on disk at any given time across all pieces.

**Validation in `SetBTSets()`:**

- If `CacheSize == 0`, it is set to `64 * 1024 * 1024` (64 MB) [server/settings/btsets.go103-105](https://github.com/YouROK/TorrServer/blob/d266990f/server/settings/btsets.go#L103-L105)

**Initialization in `Cache.Init()`:**

- If the capacity passed to `NewCache()` is zero (which happens when `CacheSize` is 0 at the time `NewCache` is called), the cache falls back to `info.PieceLength * 4` [server/torr/storage/torrstor/cache.go57-59](https://github.com/YouROK/TorrServer/blob/d266990f/server/torr/storage/torrstor/cache.go#L57-L59)
- In `Cache.AdjustRA()`, when `settings.BTsets.CacheSize == 0`, the capacity is dynamically updated to `readahead * 3` on each progress tick [server/torr/storage/torrstor/cache.go126-129](https://github.com/YouROK/TorrServer/blob/d266990f/server/torr/storage/torrstor/cache.go#L126-L129) Currently the readahead value passed by `Torrent.updateRA()` is a fixed 16 MB [server/torr/torrent.go224-226](https://github.com/YouROK/TorrServer/blob/d266990f/server/torr/torrent.go#L224-L226)

**Effect on eviction:** The `cleanPieces()` function compares `c.filled` against `c.capacity`. When `filled > capacity`, it evicts the oldest-accessed pieces outside the active reader ranges until filled returns to capacity [server/torr/storage/torrstor/cache.go187-212](https://github.com/YouROK/TorrServer/blob/d266990f/server/torr/storage/torrstor/cache.go#L187-L212)

* * *

## Storage Backend: RAM vs Disk

`UseDisk` and `TorrentsSavePath` together control whether pieces are stored in process memory (`MemPiece`) or in files on disk (`DiskPiece`).

**Diagram: Piece Backend Selection**

```

false

true

NewPiece(id, cache)
(piece.go:24)

settings.BTsets.UseDisk?

NewMemPiece(p)
buffer []byte in heap

NewDiskPiece(p)
file at TorrentsSavePath/hash/pieceId
```

Sources: [server/torr/storage/torrstor/piece.go24-36](https://github.com/YouROK/TorrServer/blob/d266990f/server/torr/storage/torrstor/piece.go#L24-L36) [server/torr/storage/torrstor/mempiece.go16-18](https://github.com/YouROK/TorrServer/blob/d266990f/server/torr/storage/torrstor/mempiece.go#L16-L18) [server/torr/storage/torrstor/diskpiece.go23-32](https://github.com/YouROK/TorrServer/blob/d266990f/server/torr/storage/torrstor/diskpiece.go#L23-L32)

### MemPiece

`MemPiece` stores each piece as a `[]byte` slice allocated on first write [server/torr/storage/torrstor/mempiece.go20-35](https://github.com/YouROK/TorrServer/blob/d266990f/server/torr/storage/torrstor/mempiece.go#L20-L35) Releasing a `MemPiece` nils the slice, freeing it for garbage collection. This is the default and recommended mode for most deployments. On flash-based storage (e.g., Android, NAS with eMMC), RAM is preferred to avoid wear.

### DiskPiece

`DiskPiece` stores each piece as a file at:

```
<TorrentsSavePath>/<torrent-info-hash>/<piece-index>
```

The path is constructed in `NewDiskPiece()` [server/torr/storage/torrstor/diskpiece.go23-32](https://github.com/YouROK/TorrServer/blob/d266990f/server/torr/storage/torrstor/diskpiece.go#L23-L32) If the file already exists at startup (e.g., from a previous session), size and completion state are read from file metadata.

On every `ReadAt()` and `WriteAt()`, the file is opened and closed. Releasing a `DiskPiece` calls `os.Remove()` on the piece file [server/torr/storage/torrstor/diskpiece.go77-85](https://github.com/YouROK/TorrServer/blob/d266990f/server/torr/storage/torrstor/diskpiece.go#L77-L85)

### TorrentsSavePath and .tsc Auto-Detection

When `SetBTSets()` is called with `UseDisk = true` and a non-empty `TorrentsSavePath`, it asynchronously walks the directory tree looking for a subdirectory named `.tsc` (case-insensitive). If found, `TorrentsSavePath` is updated to that subdirectory's absolute path [server/settings/btsets.go132-146](https://github.com/YouROK/TorrServer/blob/d266990f/server/settings/btsets.go#L132-L146)

This allows placing a `.tsc` folder inside a larger storage root (e.g., a network share) to direct cache files to a specific subfolder without changing the top-level path configuration.

If `TorrentsSavePath` is empty, `UseDisk` is forced to `false` [server/settings/btsets.go127-129](https://github.com/YouROK/TorrServer/blob/d266990f/server/settings/btsets.go#L127-L129)

`Cache.Init()` creates the per-torrent directory (`TorrentsSavePath/<hash>`) if it does not exist [server/torr/storage/torrstor/cache.go65-71](https://github.com/YouROK/TorrServer/blob/d266990f/server/torr/storage/torrstor/cache.go#L65-L71)

* * *

## RemoveCacheOnDrop

This flag controls whether disk cache files are deleted when a torrent is **dropped** (disconnected from the BitTorrent client but retained in the database).

**Behavior table:**

| Action | `RemoveCacheOnDrop = true` | `RemoveCacheOnDrop = false` |
| --- | --- | --- |
| Drop torrent (`DropTorrent`) | Cache files deleted | Cache files kept |
| Delete torrent (`RemTorrent`) | Cache files always deleted | Cache files always deleted |

The drop path goes through `Cache.Close()` [server/torr/storage/torrstor/cache.go89-118](https://github.com/YouROK/TorrServer/blob/d266990f/server/torr/storage/torrstor/cache.go#L89-L118) When `RemoveCacheOnDrop` is true, it iterates all pieces, calls `os.Remove()` on each `dPiece.name`, then removes the hash directory.

The delete path in `RemTorrent()` unconditionally removes the cache directory when `UseDisk` is true, regardless of `RemoveCacheOnDrop` [server/torr/apihelper.go161-181](https://github.com/YouROK/TorrServer/blob/d266990f/server/torr/apihelper.go#L161-L181)

This flag has no effect when `UseDisk = false` since `MemPiece` data is released automatically when the `Cache` is closed.

* * *

## ReaderReadAHead

`ReaderReadAHead` is an integer percentage (5–100, recommended 95) that controls how the available cache window is split between data behind and ahead of the current read position.

**Validation:** Values below 5 are clamped to 5; values above 100 are clamped to 100 [server/settings/btsets.go113-118](https://github.com/YouROK/TorrServer/blob/d266990f/server/settings/btsets.go#L113-L118)

**Window calculation in `Reader.getOffsetRange()`** [server/torr/storage/torrstor/reader.go143-161](https://github.com/YouROK/TorrServer/blob/d266990f/server/torr/storage/torrstor/reader.go#L143-L161):

```
prc      = ReaderReadAHead          (e.g. 95)
share    = Cache.capacity / readers  (capacity split across active readers)

beginOffset = r.offset - share * (100 - prc) / 100
endOffset   = r.offset + share * prc / 100
```

**Diagram: ReadAhead Window at 95%**

```

```

Pieces outside this `[beginOffset, endOffset]` range that are not at the start or end of the file (`isIdInFileBE`) are candidates for eviction in `getRemPieces()` [server/torr/storage/torrstor/cache.go214-256](https://github.com/YouROK/TorrServer/blob/d266990f/server/torr/storage/torrstor/cache.go#L214-L256)

The piece priority assignment in `setLoadPriority()` also uses this range to set anacrolix torrent piece priorities (`PiecePriorityNow`, `PiecePriorityNext`, `PiecePriorityReadahead`, `PiecePriorityHigh`, `PiecePriorityNormal`) relative to the reader head position [server/torr/storage/torrstor/cache.go258-290](https://github.com/YouROK/TorrServer/blob/d266990f/server/torr/storage/torrstor/cache.go#L258-L290)

Sources: [server/torr/storage/torrstor/reader.go143-161](https://github.com/YouROK/TorrServer/blob/d266990f/server/torr/storage/torrstor/reader.go#L143-L161) [server/torr/storage/torrstor/cache.go214-256](https://github.com/YouROK/TorrServer/blob/d266990f/server/torr/storage/torrstor/cache.go#L214-L256) [server/torr/storage/torrstor/cache.go258-290](https://github.com/YouROK/TorrServer/blob/d266990f/server/torr/storage/torrstor/cache.go#L258-L290)

* * *

## PreloadCache

`PreloadCache` is a percentage (0–100, default 50) of `CacheSize` that defines how many bytes to prefetch before playback begins.

**Computed preload size in `Preload()`** [server/torr/apihelper.go266-277](https://github.com/YouROK/TorrServer/blob/d266990f/server/torr/apihelper.go#L266-L277):

```
size = CacheSize * PreloadCache / 100
```

If `size <= 0`, preloading is skipped entirely. If `size > CacheSize`, it is clamped to `CacheSize`.

**Example at defaults (CacheSize = 64 MB, PreloadCache = 50):**

```
size = 64 MB * 50 / 100 = 32 MB
```

The UI notes that if the computed size is ≤ 32 MB, the preload buffer slider is effectively at its minimum useful value [web/src/locales/en/translation.json31](https://github.com/YouROK/TorrServer/blob/d266990f/web/src/locales/en/translation.json#L31-L31)

**Preload mechanics in `Torrent.Preload()`** [server/torr/preload.go20-273](https://github.com/YouROK/TorrServer/blob/d266990f/server/torr/preload.go#L20-L273):

- Two readers are created: one reads from file start, one from file end (last `startend` bytes, where `startend = max(pieceLength, 8 MB)`).
- Both run concurrently until `size` bytes are fetched or the torrent state changes from `TorrentPreload`.

`PreloadCache = 0` effectively disables preloading (any `stream?preload` API call becomes a no-op).

Sources: [server/torr/apihelper.go266-277](https://github.com/YouROK/TorrServer/blob/d266990f/server/torr/apihelper.go#L266-L277) [server/torr/preload.go20-60](https://github.com/YouROK/TorrServer/blob/d266990f/server/torr/preload.go#L20-L60) [server/settings/btsets.go120-125](https://github.com/YouROK/TorrServer/blob/d266990f/server/settings/btsets.go#L120-L125)

* * *

## ResponsiveMode

`ResponsiveMode` (default `true`) passes `SetResponsive()` to the underlying anacrolix `torrent.Reader`, which instructs the library to return data to readers as soon as it is received rather than waiting for full piece verification.

In `Torrent.Preload()`, `readerStart.SetResponsive()` and `readerEnd.SetResponsive()` are called unconditionally during the preload phase [server/torr/preload.go141-143](https://github.com/YouROK/TorrServer/blob/d266990f/server/torr/preload.go#L141-L143) [server/torr/preload.go182-184](https://github.com/YouROK/TorrServer/blob/d266990f/server/torr/preload.go#L182-L184)

`ResponsiveMode` is a global preference exposed via the `BTSets` struct [server/settings/btsets.go77](https://github.com/YouROK/TorrServer/blob/d266990f/server/settings/btsets.go#L77-L77) When disabled, the reader waits for the complete piece hash check before forwarding data. This increases latency but can avoid serving corrupt data to players. The recommended value is `true` for streaming use cases.

* * *

## Interaction Summary

**Diagram: Configuration Interaction at Startup and Streaming**

```

```

Sources: [server/settings/btsets.go98-155](https://github.com/YouROK/TorrServer/blob/d266990f/server/settings/btsets.go#L98-L155) [server/torr/storage/torrstor/cache.go55-76](https://github.com/YouROK/TorrServer/blob/d266990f/server/torr/storage/torrstor/cache.go#L55-L76) [server/torr/storage/torrstor/piece.go24-36](https://github.com/YouROK/TorrServer/blob/d266990f/server/torr/storage/torrstor/piece.go#L24-L36) [server/torr/storage/torrstor/reader.go143-161](https://github.com/YouROK/TorrServer/blob/d266990f/server/torr/storage/torrstor/reader.go#L143-L161) [server/torr/apihelper.go266-277](https://github.com/YouROK/TorrServer/blob/d266990f/server/torr/apihelper.go#L266-L277) [server/torr/preload.go130-145](https://github.com/YouROK/TorrServer/blob/d266990f/server/torr/preload.go#L130-L145)

* * *

## Settings Persistence

All `BTSets` fields are serialized to JSON and stored in the database under key `"Settings"/"BitTorr"` via `tdb.Set()` in `SetBTSets()` [server/settings/btsets.go149-154](https://github.com/YouROK/TorrServer/blob/d266990f/server/settings/btsets.go#L149-L154) On startup, `loadBTSets()` reads them back [server/settings/btsets.go189-212](https://github.com/YouROK/TorrServer/blob/d266990f/server/settings/btsets.go#L189-L212) Any field missing from a stored config (e.g., newly added fields) falls back to the Go zero value; `loadBTSets()` applies post-load corrections such as clamping `ReaderReadAHead` and restoring default `TMDBSettings` if the URL is empty.

Changing cache/storage settings via the API (`SetSettings()` in [server/torr/apihelper.go214-229](https://github.com/YouROK/TorrServer/blob/d266990f/server/torr/apihelper.go#L214-L229)) drops all active torrents, disconnects, and reconnects the BTServer so that the new `BTSets` values take effect.

This wiki is featured in the [repository](https://github.com/YouROK/TorrServer/blob/master/README.md)

Dismiss

Refresh this wiki

Enter email to refresh

### On this page

- [Cache and Storage Configuration](https://deepwiki.com/YouROK/TorrServer/5.5-storage-and-cache-preferences#cache-and-storage-configuration)
- [Settings Quick Reference](https://deepwiki.com/YouROK/TorrServer/5.5-storage-and-cache-preferences#settings-quick-reference)
- [How Settings Flow into Runtime Subsystems](https://deepwiki.com/YouROK/TorrServer/5.5-storage-and-cache-preferences#how-settings-flow-into-runtime-subsystems)
- [CacheSize](https://deepwiki.com/YouROK/TorrServer/5.5-storage-and-cache-preferences#cachesize)
- [Storage Backend: RAM vs Disk](https://deepwiki.com/YouROK/TorrServer/5.5-storage-and-cache-preferences#storage-backend-ram-vs-disk)
- [MemPiece](https://deepwiki.com/YouROK/TorrServer/5.5-storage-and-cache-preferences#mempiece)
- [DiskPiece](https://deepwiki.com/YouROK/TorrServer/5.5-storage-and-cache-preferences#diskpiece)
- [TorrentsSavePath and .tsc Auto-Detection](https://deepwiki.com/YouROK/TorrServer/5.5-storage-and-cache-preferences#torrentssavepath-and-tsc-auto-detection)
- [RemoveCacheOnDrop](https://deepwiki.com/YouROK/TorrServer/5.5-storage-and-cache-preferences#removecacheondrop)
- [ReaderReadAHead](https://deepwiki.com/YouROK/TorrServer/5.5-storage-and-cache-preferences#readerreadahead)
- [PreloadCache](https://deepwiki.com/YouROK/TorrServer/5.5-storage-and-cache-preferences#preloadcache)
- [ResponsiveMode](https://deepwiki.com/YouROK/TorrServer/5.5-storage-and-cache-preferences#responsivemode)
- [Interaction Summary](https://deepwiki.com/YouROK/TorrServer/5.5-storage-and-cache-preferences#interaction-summary)
- [Settings Persistence](https://deepwiki.com/YouROK/TorrServer/5.5-storage-and-cache-preferences#settings-persistence)

Ask Devin about YouROK/TorrServer

Fast

Syntax error in textmermaid version 11.7.0

Syntax error in textmermaid version 11.7.0