| Subiectul anterior :: Subiectul următor |
| Autor |
Mesaj |
sci2tech
Data înscrierii: 13/Sep/2005
Mesaje: 18
|
| Trimis: Dum Mai 04, 2008 11:23 pm Titlul subiectului: flat file versus database |
|
|
Se da un script care genereaza dinamic continut. Fiecare pagina generata e compusa din sectiuni. Fiecare pagina trebuie sa fie generata in 1 sau mai multe limbi. Fiecare mesaj din pagina este de forma:_limba_sectiune_mesaj_. iar traducerea este pastrata intr-o variabila de forma mesaj[_limba_sectiune_mesaj_]=traducere.
Ce recomandati:
1. Fisiere flat cu traducerile pentru fiecare sectiune care sa fie incluse in caz de nevoie.
2. 1 tabel intr-o baza de date din care sa fie extrase inregistrarile corespunzatoare sectiunii generate.
Asta considerand ca pentru fiecare sectiune se folosesc in medie 20-30 de mesaje, iar la generarea unei pagini sunt necesare in medie 5 sectiuni.
Aveti cumva si alte idei de a implementa? |
|
| Sus |
|
vectorialpx
Data înscrierii: 01/Mar/2005
Mesaje: 2925
Locație: țopăi pe tasta DELETE
|
| Trimis: Lun Mai 05, 2008 2:01 am Titlul subiectului: |
|
|
baza de date e recomandata din foarte multe motive...
dintre care cel mai important e securitatea |
|
| Sus |
|
whooper
Data înscrierii: 05/Apr/2005
Mesaje: 714
Locație: Toronto ON
|
| Trimis: Lun Mai 05, 2008 5:01 am Titlul subiectului: |
|
|
| Flat file - ca sa ai mesaje de eroare in caz ca-ti pica baza de date :) |
|
| Sus |
|
sci2tech
Data înscrierii: 13/Sep/2005
Mesaje: 18
|
| Trimis: Lun Mai 05, 2008 9:40 am Titlul subiectului: |
|
|
whooper a scris: Flat file - ca sa ai mesaje de eroare in caz ca-ti pica baza de date :)
Pana la urma implementez o struto-camila, in caz ca nu este disponibila baza de date => flat file. Preferat o baza de date pentru ca e mai usor de implementat o administrare. In caz de modificari in baza de date se face salvare in fisiere. Fisierele sunt in afara root-ului site-ului asa ca nu sunt motive de ingrijorare (sper :) ). Ma gandeam la considerente memorie vs timp de acces vs procesor. BTW, cam la cate query este recomandat sa te limitezi cand generezi o pagina? (stiu 0 e ideal, pt asta exista cache, dar cand apar modificari tot trebuie sa generezi pagina).
@whooper: Long time no see :) |
|
| Sus |
|
gabysolomon
Data înscrierii: 09/Apr/2006
Mesaje: 741
Locație: Bacau
|
| Trimis: Lun Mai 05, 2008 4:41 pm Titlul subiectului: |
|
|
| in cazul in care vei folosi flat file ... tb sa tii cont si de faptul ca la un moment dat poate da erori de scriere ... daca se incearca scrierea aceluias fisier de 2 useri in acelasi timp |
|
| Sus |
|
vectorialpx
Data înscrierii: 01/Mar/2005
Mesaje: 2925
Locație: țopăi pe tasta DELETE
|
| Trimis: Lun Mai 05, 2008 9:35 pm Titlul subiectului: |
|
|
| la fisiere sunt mai multe probleme [inclusiv timpul de incarcare] si asta e motivul pentru care s-au inventat bazele de date. Acum, fiecare problema are o rezolvare... e ideal sa o gasesti pe cea optima. |
|
| Sus |
|
whooper
Data înscrierii: 05/Apr/2005
Mesaje: 714
Locație: Toronto ON
|
| Trimis: Mar Mai 06, 2008 2:00 am Titlul subiectului: |
|
|
Mie mi se pare cel mai indicat sa tii content-ul dinamic in baza de date si textele aplicatiei in fisiere text (labels, butoane, mesaje de eroare, etc) astfel incat la un moment dat sa poata fi traduse intr-o noua limba toata aplicatia avand de urmarit doar un fisier. Daca e content dinamic (e.g web 2.0), cand este introdus, poate fi specificata si limba in care e scris fara nici o problema (valoarea implicita este cea in care user-ul foloseste aplicatia).
In felul asta scapi de acces concurent la fisiere.
:) long time indeed. Happy to see you! |
|
| Sus |
|
sci2tech
Data înscrierii: 13/Sep/2005
Mesaje: 18
|
| Trimis: Mar Mai 06, 2008 8:47 am Titlul subiectului: |
|
|
@gabysolomon: Data fiind natura aplicatie (adaugare de variabile intr-un fiser text): Citat: If handle was fopen()ed in append mode, fwrite()s are atomic (unless the size of string exceeds the filesystem's block size, on some platforms, and as long as the file is on a local filesystem). That is, there is no need to flock() a resource before calling fwrite(); all of the data will be written without interruption. Daca se mai si modifica fopen, flock, fwrite, fclose sunt primele functii care le-am invatat cand m-am apucat de PHP ;) .
@vectorialpx: Din cate stiu eu la majoritatea hosturilor gratuite mysql este o gaura de securitate ;) .
@whooper: Struto-camila ramane. ideea e sa fac niste teste sa vad cum e mai rapid:
1. Citire flat file. In caz de modificare, modific in baza de date, apoi file_put_contents in fisier.
2. Tabel sql (ramane de vazut daca 1 pt toate limbile sau pt fiecare limba cate 1 unul, preferabil cred 2) si fail back flat file.
Multumesc tuturor pentru raspunsuri si dupa ce fac niste masuratori (de timp) revin cu concluzii. |
|
| Sus |
|
vectorialpx
Data înscrierii: 01/Mar/2005
Mesaje: 2925
Locație: țopăi pe tasta DELETE
|
| Trimis: Mar Mai 06, 2008 9:03 am Titlul subiectului: |
|
|
daca ai gaura de securitate la mysql atunci de ce nu ai avea si la fisiere :)
in fine... eu banuiesc ca e mult mai rapid mysql dar, asa cum zice whooper poate fi mai comod pentru traducere. Dar, tot din punctul de vedere al comoditatii, poti sa stabilesti un camp [limba] si faci toata traducerea din administrare, fara sa deschizi fisiere text si altele. Daca ai texte in fisiere text atunci va trebui ca traducerea sa o faci tu sau sa dai fisierul respectiv traducatorului [e si asta o varianta].
Referitor la securitatea mysql, daca ai vrun dubiu eu zic ca e ideal sa fugi de hosting-ul respectiv pentru ca nu e un amanunt de care sa te poti lipsi usor.. sau, tu stii cel mai bine. |
|
| Sus |
|
sci2tech
Data înscrierii: 13/Sep/2005
Mesaje: 18
|
| Trimis: Mar Mai 06, 2008 12:39 pm Titlul subiectului: |
|
|
vectorialpx a scris: Referitor la securitatea mysql, daca ai vrun dubiu eu zic ca e ideal sa fugi de hosting-ul respectiv De ce sa fug? E chiar mai palpitant ;)
Hint pentru cei care se mai chinuie cu traduceri: http://www.gnu.org/software/gettext/ , http://www.poedit.net/ . |
|
| Sus |
|
PHPRomania Bot
Bot Member
Data înscrierii: 27/Dec/2007
Mesaje: 1
Locaţie: Server Google |
| Trimis: Mie Dec 26, 2007 7:01 pm Titlul subiectului: Ad |
|
|
|
|
|
| Sus |
|
| |