Conversation
Nothing bounded disk usage until now, so a filling disk could only be handled by hand or by waiting for the nightly tracker-obligation sweep, which is a poor fit for a streaming server that grows its library continuously. The new quota evicts least-recently-watched torrents every 15 minutes, but leaves pinned, actively streamed and unsatisfied hit-and-run torrents alone, and fails closed when a tracker is unreachable so a full disk can never cost you an account.
|
Szia @peterdeme! Köszönöm a PR-t, de ezt jobban át kell még gondolnom, hogy miként működhetne egy ilyen megoldás. A problémám az vele, hogy modhatja azt a felhasználó, hogy ő nem akar HnR-t és lejátszás alapú törlést sem, de bekapcsolja ezt a lehetőséget és beállít 1GB-ot, ami azt fogja jelenteni, hogy folyamatosan törli a rendszer a torrenteket. Értem, hogy pont ezt szeretné pár felhasználó, de az én torrentel kapcsolatos elveimmel ellentétes.
Azért van így, mert ha 5 percenként lefutna, akkor folyamatosan meghívá az indexer-t, ami nem biztos, hogy annyira szerencsés. Ezen felül pedig minden indexer más időközönként frissíti a HnR listát így ha még nem jelent meg a torrent az oldalon, akkor simán törölné azokat is, amiket nagyon nem lenne szabad. |
|
@s4pp1 köszi a választ.
Ha HnR-zni akar, ezt egyébként is megteheti. Kitörölheti manuálisan stremhu-ból. Meg ha ilyet csinál, akkor valószínűleg stremhu-n kívül is ezt csinálná. Illetve HnR-nal önmagát égetné meg, hisz kibannolnák az adott oldalról. |
Hali!
Ezt a funkciót azért építettem, mert se a hit n run, se az utoljára nézett alapú törlés nem optimális számomra.
Az én logikám: van kb 500 GB tárhelyem összesen. A torrentek nyugodtan maradjanak seed-ben, nem kell törölni őket. Viszont azt sem szeretném, hogy rádurrantsak két remuxot és be is telik instant a storage.
Ne felejtsük, hogy csak napi 1x fut a cleanup job (amúgy miért? miért nem mondjuk 5 percenként?).
Ezzel a funkcióval be tudod állítani, hogy az 500 gigás tárhelyeden mondjuk 350 GB foglaljanak max a fájlok. Így pl amíg mondjuk csak 200 gigát foglalnak, addig a végtelenségig seedelve lesznek. Amint elérik pl a 365GB-t, az már túllépést jelent, a job beindul és letörli a legrégebbi torrentet.
A job tiszteletben tartja a hit n run't, tehát tárhely túllépés előfordulhat, erre figyelmeztet is egy doboz a UI-on.
A job 15 percenként megy a napi 1 helyett. Ez azért van mert aki több profilt használ (pl szüleinél is), és kevés tárhelye van, a napi 1 futással hamar szorult helyzetbe kerülhet. (Velem megtörtént, csak 80GB tárhely volt a VPS-emen. :D Azóta kicsit bővítettem, de nem sokkal.)
Ezen felül picit újra szerveztem a UI-t, hogy a cleanup jobok saját boxban legyenek. Lokálban tesztelve - 1GB max tárhelyet beállítottam, és elindítottam csomó filmet.
Megjegyzés
Nem lenne hülyeség a cron scheduler-t a DB-ben tartani in-memory helyett. Mert akkor tudnánk on-demand triggerelni is job-okat. Pl.: ha egy új torrent letöltés elindul, triggereljük azonnal a cleanup jobot:
update cron_jobs set next_run_time = now() where name = 'job neve'Megjegyzés 2
A kövi PR erre a PR-re épül: #264
Screenshot-ok
Alap beállítás
Hit n run is be van kapcsolva
Ilyenkor a job figyelembe veszi.

Lokál teszt