Servers & storage

Server Weight — how new uploads are shared

The Weight column on Servers management controls what share of new uploads each ON server receives. Higher weight = picked more often. Examples and what Weight does not do.

Server Weight — how new uploads are shared

On Admin → Servers → Servers management, the table has a Weight column. Weight answers one question:

> When a member uploads a new file, and several storage servers are eligible, which server should receive it?

Weight is a share of new uploads. A higher number means that server is picked more often. It is not a speed limit, not disk size, and not a hard “always use this server” switch.

---

Where to find it

Admin → Servers → Servers management

In the servers table:

Column Role
Name Server / CDN label
On Enable / disable
Weight Share of new uploads among eligible ON servers
Status Health / connection
Actions Edit, delete, etc.

Edit the number in the Weight cell and leave the field (blur) to save. Allowed values: integer from 1 to 10,000. Default for new servers is usually 1.

Column hint in the admin UI: *Share of new uploads among ON servers (weighted random). Higher weight = picked more often.*

---

How it works (plain language)

1. A member starts a new upload

2. XFile Ultra builds a list of servers that are allowed to take that upload (see “Who is eligible?” below)

3. If only one server is on the list → that server gets the file (weight does not matter)

4. If several servers are on the list → XFile Ultra picks one with weighted random:

- Each eligible server gets tickets equal to its Weight (minimum 1)

- Total tickets = sum of all weights

- One ticket is drawn at random → that server stores the new file

So weight is like lottery tickets for new uploads only.

---

Who is eligible? (Weight only counts among these)

A server only enters the weight lottery if it passes the upload gates, including:

Requirement Meaning
Not in trash Server is not deleted
Health ok Status / health check is healthy
Status ON Not OFF, not READONLY (read-only blocks new uploads)
Targeting Member is allowed (regular / premium / selected users)
Geo (if set) Uploader’s country is allowed
Disk cap (if set) Server is not over max disk
Remote node Connected (if it is a remote storage node)
CDN CDN plugin licensed and credentials configured (if it is a CDN)

Weight does not override those rules. An OFF or unhealthy server with weight 10,000 still gets zero new uploads.

---

Examples

Example 1 — Equal share

Server Weight
Local disk 1
Wasabi CDN 1

Total = 2.

Over many uploads, each should get about 50% of new files.

---

Example 2 — Prefer the CDN

Server Weight
Local disk 1
Wasabi CDN 3

Total = 4.

  • Local ≈ 1/4 = 25% of new uploads
  • Wasabi ≈ 3/4 = 75% of new uploads

Use this when the CDN is cheaper or faster and local disk is only a backup path.

---

Example 3 — Soft 70 / 30 split

Server Weight
DigitalOcean Spaces 70
Contabo Object Storage 30

Total = 100.

  • DigitalOcean ≈ 70%
  • Contabo ≈ 30%

Same idea as 7 and 3 — only the ratio matters, not the absolute size. 7 and 3 behave like 70 and 30.

---

Example 4 — Three servers

Server Weight Expected share
Local 1 ~10%
R2 CDN 4 ~40%
Amazon S3 5 ~50%

Total = 10.

---

Example 5 — Weight ignored (only one eligible)

Server Status Weight
Local ON 1
Wasabi OFF 100

Only Local is eligible → every new upload goes to Local. Wasabi’s high weight does nothing while it is OFF.

---

Example 6 — One member, one geo-limited server

Server A: Weight 1, allowed countries = US only

Server B: Weight 9, no geo limit

  • Uploader in the US → both eligible → B gets ~90%, A ~10%
  • Uploader outside the US → only B is eligible → B gets 100%

Weight is always computed on the eligible list for that upload, not on every row in the table.

---

What Weight does not do

Misconception Reality
Moves existing files No. Old files stay where they are until you use Transfer / transfer queue
Controls download routing No. Downloads go to the server that already holds the file
Affects transfer queue No. Transfers ignore Weight
Guarantees exact percentages every day No. It is random with weights — over many uploads it trends toward the ratio
Bypasses OFF / READONLY / health No. Those servers are skipped first
Means “disk capacity” No. Use Max disk (and monitoring) for capacity; Weight is only traffic share

---

Practical tips

1. Start all new servers at 1, then raise the preferred CDN to 2, 3, or 9 once Test connection is green

2. To drain a server of new uploads: set status to READONLY or OFF (do not rely on weight 1 alone if others are also 1)

3. To send almost everything to one CDN: give it a high weight (e.g. 9) and keep others at 1 — or turn others READONLY

4. After changing weights, watch the Files counts over time; short tests of 2–3 uploads can look “unfair” because of randomness

---

Related