gabriel-webb Posted February 25, 2019 Report Posted February 25, 2019 (edited) Buna ziua Rst, are careva o copie a codului megaupload.com sau ceva asemanator? Si stie careva cum se pot lega 200 de adrese ip la un domeniu cand o adresa ip asociata cu un server = 1 terra ajunge aproape de limita sa execute urmatoarea incarcarea pe alt server? Edited February 25, 2019 by gabriel-webb Quote
aelius Posted February 25, 2019 Report Posted February 25, 2019 Nu exista "sa poti lega". Ai un site web principal si apoi un buncar de subdomenii mapate (dns A record), fiecare pe cate un server. Acelea vor deveni serverele tale de storage. In baza de date ai ceva inregistrari de genul: # coloane in tabela 'servere' id, server_name, used_space, available_space # coloane in tabela 'uploads' id, server_id, file_name, file_size Inregistrarile in mysql o sa vina de forma asta: # tabela 'servere' 1, s1.exemplu.ro, 2815756813, 635264564556 2, s2.exemplu.ro, 3415756818, 635764564156 3, s3.exemplu.ro, 2515756815, 635764564356 4, s4.exemplu.ro, 1215756816, 635764564356 ....... # tabela uploads # 1 = ID, 1 ID SERVER (sa stii pe ce server ai fisierul), 98fe41630988f8438410b9159deae3bf este md5($file_name) - nume fisier # ultima coloana este dimensiunea fisierului 1, 1, 98fe41630988f8438410b9159deae3bf, 43532 ...... 10, 3, 8b354402ff2208b3d7b0aecf1a70a133, 24572 Coloanele 'used_space, available_space' din tabela servere sunt populate de un script pus in crontab care iti insereaza spatiul utilizat pe server si spatiul disponibil. La upload pui niste conditii si in functie de ocuparea serverelor sau alti parametrii, unde anume sa se uploadeze (se face $_POST catre un server care vrei din tabela servers). Cand se face upload, se introduce in tabela uploads id-ul serverului pe care s-a pus, numele fisierului (hashed) si dimensiunea. La download, ai un select din mysql care iti spune pe care server se afla fisierul cerut si downloadul se face de acolo. Exemplu: s2.exemplu.ro/storage/98fe41630988f8438410b9159deae3bf Este un exemplu f. scurt. Ai nevoie acolo de mai multe: file type, etc .... depinde de cum faci sistemul (tip web server, masuri securitate si altele) 1 Quote