Toon posts:

[PHP] heel veel files en mapjes op een server

Pagina: 1
Acties:

Verwijderd

Topicstarter
Hoi,

ik ben nu bezig met een soort portfolio site waarbij iedere member een eigen pagina met plaatjes en media kan beheren en uploaden. Alle data behalve binaries worden per member in mysql opgeslagen. De plaatjes en andere binaries sla ik momenteel op in een mapje per memberID op de server. Dus als er straks 100.000 members zijn heb ik 100.000 mapjes op de server staan met per mapje de files behorende bij de member.

Is dit een goede indeling of wordt de server trager naarmate er meer mappen op komen?

  • D2k
  • Registratie: Januari 2001
  • Laatst online: 31-08 10:19

D2k

je kan de mappen nog anders indelen
/users/a
/users/b
/users/c
oid :?

Doet iets met Cloud (MS/IBM)


Verwijderd

Topicstarter
zou je dan ook weer de submappen voor bijv. users/a/ maken? je krijgt anders nl. een ontzettende lijst met files per map waarbij je geen onderscheid kunt maken tussen wat van wie is. in principe werkt het huidige systeem prima maar ik hoorde dat het de server nogal belast - is dit echt zo?

  • ACM
  • Registratie: Januari 2000
  • Niet online

ACM

Software Architect

Werkt hier

Ja, dat kan zomaar 100.000 files in een dir vindt een systeem niet zo leuk.

D2k's idee lijkt me niet onhandig, evt doe je het zelfs zo: /users/a/a /users/a/b etc en IN die mappen maak je dan pas de username natuurlijk, als je ze op nummer maakt moet je het gewoon handig op een andere manier aanpakken.

  • flat
  • Registratie: Mei 2000
  • Niet online
't ligt natuurlijk heel erg aan 't filesystem op de server hè
ReiserFS zal er heel wat minder problemen mee hebben als FAT32 bijv...

"Happiness is a way of travel, not a destination."
--Roy Goodman


  • ACM
  • Registratie: Januari 2000
  • Niet online

ACM

Software Architect

Werkt hier

Flat© schreef op 27 augustus 2002 @ 15:12:
't ligt natuurlijk heel erg aan 't filesystem op de server hè
ReiserFS zal er heel wat minder problemen mee hebben als FAT32 bijv...

Ik zou ook maar geen 100k files in een enkele directory op reiserfs proberen ;)


Als richtlijn houd ik over het algemeen 10K, hoewel 8K wellicht beter is.

  • Macros
  • Registratie: Februari 2000
  • Laatst online: 24-08 21:59

Macros

I'm watching...

Als je member ID gebruikt is het misschien makkelijker om het ietsje anders te doen:
/users/1000
/users/2000
/users/3000
...
Dan doe je in 1000 alle userid's onder de 1000, etc...

"Beauty is the ultimate defence against complexity." David Gelernter


  • flat
  • Registratie: Mei 2000
  • Niet online
ACM schreef op 27 augustus 2002 @ 15:22:

[...]

Ik zou ook maar geen 100k files in een enkele directory op reiserfs proberen ;)


Als richtlijn houd ik over het algemeen 10K, hoewel 8K wellicht beter is.
Specifications for ReiserFS:3.53.6
max number of files232 => 4 G232 => 4 G
max number files a dir can have231 => 2 G231 => 2 G
max number sub-dirs in a dir216-1K => 64.536 K216-1K => 64.536 K
max filesystem size232 (4K) blocks => 17.6 Tbytes232 (4K) blocks => 17.6 Tbytes
maar daarmee wil ik niet zeggen dat 't met 2G files alles nog soepel draait hoor :D
offtopic:
officiele test voor mijn HTML>RML-dinges

"Happiness is a way of travel, not a destination."
--Roy Goodman


  • ACM
  • Registratie: Januari 2000
  • Niet online

ACM

Software Architect

Werkt hier

Ik weet van iemands ervaring dat het niet echt soepel ging met veel files, die had geloof ik 2M files aangemaakt in 1 dir oid.
64K ging toch een stuk beter, vooral verwijderen was sloom geworden :)

Verwijderd

Topicstarter
bedankt voor de tips. ik denk dat ik het zo ga maken dat ik per 100 users maak:

members /
00000000 / [00000000 - 00000099]
00000100 / [00000100 - 00000199]
00000200 / [00000200 - 00000299]

misschien dat ik toch nog overstap naar usernames voor de mapnamen en dan 26 mappen met beginletters. even kijken hoeveel php code ik moet omschrijven
Pagina: 1