| Subiectul anterior :: Subiectul următor |
| Autor |
Mesaj |
Ice_Man
Data înscrierii: 24/Oct/2004
Mesaje: 23
|
| Trimis: Vin Feb 25, 2005 5:17 pm Titlul subiectului: paginare javascript |
|
|
Am nevioie de un tutorial cu o paginare in javascript sau asemanator...
Ideea e urmatoarea: am un site la care nu pot face selectari din mysql pt ca se blocheaza (sute de utilizatori in acelasi timp).Am ajuns la o chestie...un scipt php e in cron job si acest script creeaza niste pagini statice (1.html, 2.html, 3.html, s.a.m.d)
In aceste pagini statice eu pot avea de la 1 pana la 1000 de inregistrari diferite...si imi trebuie o paginare in javascript...
Idei? |
|
| Sus |
|
johnny
Data înscrierii: 31/Iul/2004
Mesaje: 904
Locație: Bucuresti
|
| Trimis: Sâm Feb 26, 2005 5:04 am Titlul subiectului: |
|
|
| Generarea dinamica a javascriptului cu php, iar javascriptul va genera dinamic html:) |
|
| Sus |
|
biban
Data înscrierii: 13/Apr/2003
Mesaje: 204
Locație: Giurgiu
|
| Trimis: Sâm Feb 26, 2005 9:37 am Titlul subiectului: |
|
|
Probabil ca vei gasi sau poate ai gasit deja o solutie javascript, dar eu m-am gandit la o solutie mult mai optima (cred eu).
Totul se rezolva din scriptul care l-ai atasat la cron:
-creezi niste pagini de genul a.html, b.html etc
-în pagina a.html adaugi sa zicem 25 înregistrări
-dacă mai ai înregistrări de adăugat atunci la sfârșitul paginii a.html adaugi ceva de genul <a href='a1.html'>urmatoarea pagina</a> si creezi pagina a1.html dupa aceleasi principii numai ca treci inregistrarile de la 26 la 50
-procedura se repeta...
cum ti se pare?... |
|
| Sus |
|
arond
Data înscrierii: 11/Mar/2004
Mesaje: 580
Locație: 127.0.0.1
|
| Trimis: Sâm Feb 26, 2005 10:22 am Titlul subiectului: |
|
|
A vrea sa paginezi cu Javascript e o idee bizara... in sensul ca daca tot ajunge pagina intreaga in client (browser), la ce d-zeu sa mai paginezi ? :)
Ce spun biban poate fi o solutie... dar cred ca cea mai eleganta ar fi o solutie de caching... pastrezi caracterul dinamic al datelor si le cachezi doar atat cat e nevoie sa iti rezolvi problemele cu MySQL (probleme care, intre noi fiind vorba, nu ar trebui sa existe... probabil ca si baza de date e conceputa defectuos).
Numa' bune. |
|
| Sus |
|
biban
Data înscrierii: 13/Apr/2003
Mesaje: 204
Locație: Giurgiu
|
| Trimis: Sâm Feb 26, 2005 1:46 pm Titlul subiectului: |
|
|
| good point. poate ar trebui sa facă un benchmark pe baza de date. eventual cand "livreaza" pagina sa foloseasca un limit in select |
|
| Sus |
|
Ice_Man
Data înscrierii: 24/Oct/2004
Mesaje: 23
|
| Trimis: Sâm Feb 26, 2005 11:51 pm Titlul subiectului: |
|
|
arond a scris: A vrea sa paginezi cu Javascript e o idee bizara... in sensul ca daca tot ajunge pagina intreaga in client (browser), la ce d-zeu sa mai paginezi ? :)
Ce spun biban poate fi o solutie... dar cred ca cea mai eleganta ar fi o solutie de caching... pastrezi caracterul dinamic al datelor si le cachezi doar atat cat e nevoie sa iti rezolvi problemele cu MySQL (probleme care, intre noi fiind vorba, nu ar trebui sa existe... probabil ca si baza de date e conceputa defectuos).
Numa' bune.
Pica ideea cu a1, a2, pt ca eu am, sa zicem X categorii, x apartinand intervaluli (10,1000), iar paginile ar fi prea multe! mai ales ca nu e atat de multa informatie...sunt doar niste table rows cu putine date in ele..deci ca marime in KB pagina e foarte mica..in schimb, inestetica!
Iar baza de date nu e conceputa defectuos, avand in veder simplitatea ei...Pur si simplu, sute de selectari si sute de inserari in acelasi timp o sufoca...si traditional ii spunem ca "pica"...tocmai din cauza asta eu vreau sa reduc selectarile, realizand un script care se va executa, sa zicem, o data la 2 ore...
Deci va cer in continuare....paginare cu javascript...sa se afiseze x <tr->uri pt ca pagina sa nu fie inestetica...
PS:nu mai dati cu presupusul la `problemele` mysqld-ului, pt ca nu are...stiu si eu cum sa limitez un select, sau altceva..problema e ca nu stiu cati din voi ati asistat la o crapare a mysqld-ului...sa zicem ca 100 de oameni navigheaza => 100 selecturi; unii din ei mai si cauta ceva...mai adaugam x selecturi..dar eu stochez ce cauta ei, si informatiile despre ei, ca poate vor sa faca lucruri `rele` => 100 insert-uri + x inserturi(de la cautari)..daca dau pe alta categorie, iar y selecturi (cei y oameni care intra in categorie) si asa mai departe...dupa cateva minute, mysqld-ul pocneste |
|
| Sus |
|
biban
Data înscrierii: 13/Apr/2003
Mesaje: 204
Locație: Giurgiu
|
| Trimis: Dum Feb 27, 2005 12:39 am Titlul subiectului: |
|
|
hai sa te mai intreb ceva. tu nu vrei sa incarce ditamai html-ul sau nu vrei decat o organizare a html-ului ala mare.
In primul caz daca folosesti javascript si elimini solutia mea cred ca e imposibil -orice ai face tot va trebui sa incarci intregul document doar ca nu va apare tot. |
|
| Sus |
|
arond
Data înscrierii: 11/Mar/2004
Mesaje: 580
Locație: 127.0.0.1
|
| Trimis: Dum Feb 27, 2005 12:42 am Titlul subiectului: |
|
|
mysqld nu pocneste decat daca e de pocnit :), ca nu-i pocnitoare... care este.
Case studies (si lista e MULT mai lunga): http://www.mysql.com/it-resources/case-studies/
Repet ce am spus mai sus: asta nu este o solutie, iar daca tu insisti in a ne explica cum ca asa ceva este rezolvarea problemelor tale inseamna ca nu ti le-ai lamurit prea bine.
Numa' bune. |
|
| Sus |
|
Ice_Man
Data înscrierii: 24/Oct/2004
Mesaje: 23
|
| Trimis: Dum Feb 27, 2005 11:06 pm Titlul subiectului: |
|
|
biban a scris: hai sa te mai intreb ceva. tu nu vrei sa incarce ditamai html-ul sau nu vrei decat o organizare a html-ului ala mare.
In primul caz daca folosesti javascript si elimini solutia mea cred ca e imposibil -orice ai face tot va trebui sa incarci intregul document doar ca nu va apare tot.
Pai da, stiu ca se incarca tot documentul...care e foarte mic...dar nu asta e problema...
Ideea o am, imi trebuie solutia, nu alte idei..stick to this, please! |
|
| Sus |
|
UzZzY
Data înscrierii: 11/Iun/2004
Mesaje: 205
Locație: Undeva, departe
|
| Trimis: Joi Iun 02, 2005 1:41 pm Titlul subiectului: |
|
|
| http://www.eyecon.ro/index/item/48 |
|
| Sus |
|
whooper
Data înscrierii: 05/Apr/2005
Mesaje: 713
Locație: Toronto ON
|
| Trimis: Joi Iun 02, 2005 4:40 pm Titlul subiectului: |
|
|
Daca nu-ti place ce a facut eyecon, ar fi necesar sa setezi daemonul mysqld asa cum trebuie. Citesti si limitarile corespunzatoare pt fiecare platforma.
http://dev.mysql.com/doc/mysql/en/too-many-connections.html
Daca nici asta nu-ti rezolva problema, incearca o replicare. Directezi SELECT-urile in copii si UPDATE-urile sau INSERT-urile in master.
Daca nici asta nu-ti rezolva problema, incerci un clustering serios.
Nu toate problemele se rezolva scriind COD. Cateodata trebuie si un DBA (database admin).
PS: de ce nu folosesti un server (instalare de MySQL care asculta pe alt port, sau chiar alt PC) pt loguri si altul pt baza de date a aplicatiei ? Nu-i profesional sa le amesteci pe toate acolo cand userii nu mai au loc pentru ca te grabesti tu sa loghezi tot ce fac. |
|
| 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 |
|
| |