Stránka 1 z 1

Rozdělení složky /files na podsložky

Napsal: sob 29. čer 2019 21:32:34
od R3gi
Ahoj,
složka /files, která slouží systému phpBB pro ukládání souborů nahraných uživateli v mém případě obsahuje tolik souborů, že to má dopad na výkon a vytížení diskového pole. Byl jsem upozorněn poskytovatelem svého hostingu (Wedos), že by bylo vhodné s tím něco dělat…
Logickým řešením nápravy tohoto retardovaného řešení je rozdělení souborů do několika podsložek.

Na mezinárodním fóru jsem narazil na téma, které odkazuje na několik pull requestů, které však mají štítek phpBB verze 4:
https://tracker.phpbb.com/browse/PHPBB3-15289
https://github.com/phpbb/phpbb/pull/4895
https://github.com/phpbb/phpbb/pull/4968
…čekat několik let než vyjde phpBB 4 se mi moc nechce…

Můj dotaz tedy zní: lze nějak rozdělit soubory ze složky /files do podsložek, tak aby phpBB 3.2.x fungovalo, soubory byly přístupné a uživatelé mohli nahrávat další soubory? Řešil to už někdo?

Re: Rozdělení složky /files na podsložky

Napsal: ned 30. čer 2019 9:44:13
od Payn
Ahoj, nezkousel jsem, ale melo by jit rozdelovat prilohy dle druhu souboru. Lze rozdelovat archivy od obrazku ci pdf. Kategorizace je mozna vzdy, jen se musi vymyslet tak, aby to bylo k uzitku. Vse co vytvoril clovek jde upravit, smazat ci kompletne predelat

Re: Rozdělení složky /files na podsložky

Napsal: ned 30. čer 2019 14:02:38
od R3gi
Máš pravdu, ale to je rozdělení jen pro to, jak se pak zobrazí ve fóru, pokud se nepletu? Potřeboval bych najít způsob, jak říci systému „Hej phpBB, vem všechny soubory ve složce files a rozděl je do skupin třeba po 2 000 souborů. Tyto skupiny souborů umísti do několika podsložek složky /files. Přitom zachovej přístupnost a správu souborů pro uživatele i adminy. Umožni také obdobným způsobem nahrávat nové soubory.“. Rozdělit je mohu teoreticky i manuálně, ale potřebuji zachovat propojení se systémem phpBB.

Re: Rozdělení složky /files na podsložky

Napsal: ned 30. čer 2019 20:18:58
od Payn
R3gi píše:
ned 30. čer 2019 14:02:38
Máš pravdu, ale to je rozdělení jen pro to, jak se pak zobrazí ve fóru, pokud se nepletu? Potřeboval bych najít způsob, jak říci systému „Hej phpBB, vem všechny soubory ve složce files a rozděl je do skupin třeba po 2 000 souborů. Tyto skupiny souborů umísti do několika podsložek složky /files. Přitom zachovej přístupnost a správu souborů pro uživatele i adminy. Umožni také obdobným způsobem nahrávat nové soubory.“. Rozdělit je mohu teoreticky i manuálně, ale potřebuji zachovat propojení se systémem phpBB.
Ahoj, myslel jsem to presne tak, jak jsi rekl. V samotnem softwaru uz, relativne, neni problem zakomponovat razeni prave podle druhu souboru i s podslozkami. V podstate jen staci pridat pokyn pro jadro (v mem pripade .ini), ktere je nadrazeno vsemu ostatnimu. Pokud by jsi to chtel i podle poctu priloh v jedne kategorii, udelal bych strukturovani nejak takhle:

1) root/forum/files
1a) root/frum/files/obrazky
2) root/forum/files
2a) root/forum/files/pdf


Atd atd..

Obrazne: nahraju 2 000 priloh jako jpg, to samo osobe spada do kategorie obrazku, cili do /root/forum/files avsak system bude mit pokyn (podle prikazu z jadra) urcovat a cist pripony souboru, za ucelem selekce. Tudiz vysledna cesta pro tyto soubory by byla root/forum/files/obrazky, je vsak nutne, udelat podfunkci nebo script, jiz pro dany prvek ktery toto ma na starosti. Pokud se imementuje sub-kod do primarniho kodu, je mozne toto razeni udelat i vcelku jednoduse, formou dodatkoveho obsahu pro vkladani.
Pokud bude urcity limit pro kazdou kategorii, lze udelat, ze pri prekroceni poctu prilih v dane kategorii, by byla vytvorena slozka tretiho radu, to vse se da udelat nekonecnou vetou (ted nevim jak se ji nadava) - vyuzivaji ji i kalkulacky, ale je to mozne. Dale by se musel vyresit problem v oblasti HASH, kdy kazda priloha dostane unikat, ale v obecnem smeru. V nasem pripade v realizaci kategorizace, by se musel udelat meznik, nebo nejaky mechanismus, ktery by, prave podle druhu souboru, generoval od *@* promenne do *@* tute promenne tak, aby bylo pro system mozne urcit, do jake kategorie priloha spada, ikdyz by slo o megalomanske forum.

Takze slozka files by mela podslozku obrazky, v ni dosahnu maximalniho poctu, tak se udela i podslozka jiz ve vytvorene podslozce.

Pdf soubory by spadali do kategorie 2a atd. Snad jsi me pochopil ;)

Na velkych forech by ale.mohl nastat problem v hybnosti scriptu v samotnem rootu, cim vetsi a detailnejsi kategorizace, tim je zpracovavani serveru delsi. Ale ze bych to povazoval za velky problem? To urcite ne, vse se da hezky udelat nebobtnajicim kodem, ktery si zachova kodovou delku i po sto letech.

Muj nazor je ten, ze to udelat jde a co se rychlosti tyce i v rozporu s dalsim kodem navic, by byl znacnym prinosem. Ja musel na serveru prejit ze 4 opteronu na novejsi intel Xeony, bohuel ted uz vysli mnohonasobne vykonnejsi, ryzeny. Zivot neni fer :D

Re: Rozdělení složky /files na podsložky

Napsal: ned 30. čer 2019 21:41:21
od R3gi
Obávám se, že na implementaci takového řešení nemám potřebné znalosti, ani čas…:'-( Jak tak koukám na commity, které tuto funkcionalitu přidávají/narovnávají, tak to vypadá na poměrně rozsáhlý zásah do kódu – i kdybych měl jen vzít již toto připravené řešení a zkusit jej aplikovat na současnou verzi phpBB…zní to dost nebezpečně. Nerad bych skončil s nedostupnými přílohami či nemožností později bezproblémově upgradovat na vyšší verzi.
Není jiná cesta, než si to od základu psát sám?

Btw. Na toto téma jsem nyní založil téma i na mezinárodním fóru.

Re: Rozdělení složky /files na podsložky

Napsal: ned 30. čer 2019 22:52:45
od Payn
Jak jsem rekl, neni potreba psat celou funkcionalitu znovu, staci jen ke kodu pridat dalsi kod, ktery to rostridi. Pokud by jsi mel zajem, mohu nabidnout testovaci forum meho normalniho fora, tam si muzes delat co chces a nikomu tim neublizis. Jen netahat prilohy z fora ven, neb jsou tam sbirky za miliony :)

Ps: kod staci pouze obohatit o dane funkce, tod vse. Serverove veci se daji resit pozdeji, az bude dostatecna analyza konzistence dat. Napriklad ja jsem si ve verzi 3.0.12 udelal hromadny upload priloh, aby to lidi nemuseli klikat po jedne jak magori. Take slo jen o obohaceni kodu a upgrade fora sel v klidu a vez problemu, v tomto smeru jde v podstate o totez. Jde jen o to, zachovat strukturu verze 3.2.x
Mohlo by to jit mozna i tak, ze by se pridal modul pro ukladani priloh do administrace, neco vyzkousim a dam vedet. Neco me napadlo :)
Spis me zarazi, ze te provider bombarduje o tom, ze zahlcujes disk. To mi hlava nebere kdyz soucasna technika ktera je pro disky aplikovana, dokaze tvuj pocet priloh precist do vteriny. To bych mileho providera asi poslal do prdele

Re: Rozdělení složky /files na podsložky

Napsal: ned 30. čer 2019 23:07:57
od Payn
R3gi píše:
ned 30. čer 2019 21:41:21
Obávám se, že na implementaci takového řešení nemám potřebné znalosti, ani čas…:'-( Jak tak koukám na commity, které tuto funkcionalitu přidávají/narovnávají, tak to vypadá na poměrně rozsáhlý zásah do kódu – i kdybych měl jen vzít již toto připravené řešení a zkusit jej aplikovat na současnou verzi phpBB…zní to dost nebezpečně. Nerad bych skončil s nedostupnými přílohami či nemožností později bezproblémově upgradovat na vyšší verzi.
Není jiná cesta, než si to od základu psát sám?

Btw. Na toto téma jsem nyní založil téma i na mezinárodním fóru.

Posli mi kdyztak prosim te do sz, o ktere vsechny soubory by se jednalo, zkusim se na to podivat a neco vymyslet. Kdyby to bylo casove narocne, tak by sis musel pockat holt.

Re: Rozdělení složky /files na podsložky

Napsal: ned 30. čer 2019 23:30:03
od Payn
Je to tak jak jsem si myslel hele, bude bohate stacit pridat do modulu v administraci dalsi "vlastni pole", tam si staci zadat rucne vytvorene podslozky. Phpbb by pak mel sahat do files i podslozek samotnych. To je nejjednodussi reseni ktere ti mohu nabidnout. Samotny presun do podlozek uz lze osetrit cronem, staci ti takove reseni? :)

Re: Rozdělení složky /files na podsložky

Napsal: ned 07. črc 2019 22:47:14
od R3gi
Mohl bys, prosím, popsat podrobněji, jak na to, co tam vyplnit? Zatím jsem rozchodil lokální testovací prostředí – pokud bys měl někdy chvilku času, mohli bychom na to třeba kouknout společně (např. přes Skype/TeamViewer)? Díky

Re: Rozdělení složky /files na podsložky

Napsal: ned 07. črc 2019 23:55:35
od Payn
Ahoj, urcite by jsme se na to podivat mohli, jen vyresim stehovani z j. Moravy do Pribramy. Mluvil jsem o pridani kolonky pro ukladani priloh. Standartne vyplnujes jedno pole coz je /files. Paklize pujde vlozit x dalsich poli, tak muzes rovnou udelat naraz treba 5 podslozek ve slozce /files a z /files cronem presouvat (treba jednou tydne) do podslozek. Bylo by to neco jako defragmentace, aby provider nesilel ;) Jen by to asi chtelo zasah primo do phpbb, to jsi nejsem jisty. Mluvim o "Cesta k nahravani priloh" Prispivani --> prilohy a tam mas "vlastni pole" kde mas vychozi cestu pro nahravani a pristupu pro prilohy, coz je FILES. Kdyby se nam podarilo tato pole pridat, phpbb by sahal i do dalsich podslozek, nejenom do te defaultni.

Re: Rozdělení složky /files na podsložky

Napsal: ned 22. zář 2019 9:31:41
od Payn
Jestli budes mit cas, tak na to muzeme pristi vilend mrknout.

Re: Rozdělení složky /files na podsložky

Napsal: ned 22. zář 2019 22:30:51
od R3gi
OK, to by bylo fajn, budu rád, když bychom to mohli probrat (máš tam SZ). Zároveň, pokud by se chtěl připojit ještě někdo další, jsem klidně pro ;-)