 |
Forum PHP Romania - Discutii despre PHP, MySQL, Javascript, AJAX, etc Comunitatea PHP Romania
|
| Subiectul anterior :: Subiectul următor |
| Autor |
Mesaj |
Mastertrap21
Data înscrierii: 15/Aug/2008
Mesaje: 3
|
| Trimis: Vin Aug 15, 2008 5:36 pm Titlul subiectului: MySQL max_concurrent_connections |
|
|
Deci am o mare problema.
Am cumparat hosting de 1 giga de la Oklop pentru a imi tine site-ul, blogul, si forumul echipei mele de editat fifa. Site-ul are cam 300 de vizitatori unici pe zi si cam 1500 de hits-uri/zi.
Problema este ca am luat acest host acum o luna (inainte aveam altul dar se ocupa altcineva de el) si cand am mutat baza de date de pe un host pe altul am pus toate tabelele de la site, blog, si forum in aceasi baza de date cu acelasi utilizator. La o luna dupa ce am urcat baza de date si am dat drumu la treaba am primit un mail in care mi s-a spus ca din cauza ca folosesc prea multe resurse va trebui sa imi suspende contul pana rezolv problema. Contul a fost suspendat si cea mai buna idee care mi-a venit a fost sa pun tabelele in baze de date separate cu utilizatori diferiti, asa ca azi am facut cate o baza de date pentru site forum si blog si cate un user pt fiecare dintre acestea, insa nu stiu daca problema mea se va rezolva asa.
Am primit acest mail:
"I would like to notify you that domain fifapro.ro is pretty often pushing over 15 concurrent MySQL connections and so causing pretty high load on server itself. In such occasions it also has ~60 processes since each of his requests is waiting for some result from database and further requests that are coming are placed in queue causing it's process number to build up.
I believe user himself can see that his forum on forum.fifapro.ro is often unable to function properly because of this over usage of MySQL.
If it continues to put this kind of load we would need do disable his account."
Ce inseamna asta? Solutia mea va fi oare buna pentru evitarea acestei probleme? Daca nu cam care ar fi solutia. Astept un raspuns cat de repede posibil |
|
| Sus |
|
olympia
Data înscrierii: 26/Mai/2008
Mesaje: 151
|
| Trimis: Vin Aug 15, 2008 10:49 pm Titlul subiectului: |
|
|
din cate inteleg, solutia pe care ai gandit-o deocamdata nu va rezolva problema. sunt mai multe aspecte ale acesteia, eu voi incerca sa imi dau cu parerea fata de unele dintre ele.
tehnic vorbind, cea mai buna directie pe care ti-o pot sugera este legata de optimizarea DB. gasesti de pe home page-ul acestui site linkuri catre mai multe articole pe tema asta. (e.g., http://hackmysql.com/case1. pe mine m-au ajutat mult. asta ramane ca principiu, indiferent unde vei avea gazduit situl.
discutii pe tema relatiilor dintre hoster si webmaster am tot gasit pe forumuri de-a lungul timpului. hosterul promite marea cu sarea, iar cand ii vine un client care are cu adevarat activitate, incepe sa dea din coltz in coltz, fie din cauza traficului, fie a resurselor hard.
daca nu aveti un avocat bun, nicio sansa sa ii cereti daune de vreun fel.
in general se cam stie cat costa intretinerea lunara a unui server: asta devine o solutie (singura?) pentru cei care se dezvolta peste o anumita limita. cunosc cazuri in care hosterul promitea trafic nelimitat, si cand a venit unu' cu cateva mii de vizitatori unici pe zi si cu continut video, a fost nevoit sa isi recunoasca neputinta.
in rest, ce sa mai zic: sa ai un contract clar cu hosterul si la o adica sa negociezi clar din prima.
oricum, mie mi se par daune mari sa iti intrerupa hostingul chiar si ptr cateva ore, d'apoi ptr mai mult. |
|
| Sus |
|
Mastertrap21
Data înscrierii: 15/Aug/2008
Mesaje: 3
|
| Trimis: Sâm Aug 16, 2008 10:25 am Titlul subiectului: |
|
|
Sfatul cu optimizarea mi l-au dat si ei de la hosting dar am uitat sa mentionez ca forumul este phpBB 3 iar site-ul si blogul sunt facute pe Wordpress. Banuiesc ca aceste platforme care sunt destul de vechi pe piata website-urilor ar trebui sa fie deja optimizate.
Daca eu sunt client cu activitate mare la ei inseamna ca ceilalti 70 de clienti (care spun ei ca sunt pe acelasi server cu mine) au site-uri de 5 mega si fara baza de date... Totusi daca a ajuns un site de 300 de vizitatori unici pe zi sa fie o problema pt un server e grav... Inainte de asta aveam hosting castigat la un concurs pe net, si nu ma ocupam eu de el, dar nu a facut niciodata probleme de acest gen...
As vrea mai intai sa vad ce solutii am in acest caz si abia apoi sa ma gandesc la desfacerea contractului...
Alte solutii mai aveti? Sau o descriere mai clara a mail-ului primi de mine?
Va multumesc pentru viitoarele raspunsuri. |
|
| Sus |
|
mihaitha
Data înscrierii: 04/Mai/2007
Mesaje: 1762
Locație: Sibiu
|
| Trimis: Sâm Aug 16, 2008 9:41 pm Titlul subiectului: |
|
|
| Verifica query-urile (fa-ti niste scripturi de benchmarking si vezi cat dureaza obtinerea rezultatelor din baza de date), si compara complexitatea query-ului cu timpul de asteptare. Daca iti pare discrepanta (de exemplu un "SELECT * FROM tabela WHERE aia AND ailalta" iti dureaza 3-4 secunde) problema e de la ei, ca au baza de date pe butuci, nu de la tine ca ai scris un query prea greu. Iti spun sincer ca am un query care imi cauta intr-o tabela de 5000 de recorduri si 30 de campuri, si face 6 join-uri (INNER si LEFT), insa o rulare dureaza in cel mai rau caz 0.3 - 0.4 secunde. Deci ai grija sa ai argumente solide inainte sa te certi cu ei. |
|
| Sus |
|
Mastertrap21
Data înscrierii: 15/Aug/2008
Mesaje: 3
|
| Trimis: Dum Aug 17, 2008 5:17 pm Titlul subiectului: |
|
|
Mda, dar chestie e ca am inteles ca mailul ala vrea sa spuna ca ei au o limita tampita de 15 conectari simultane la baza de date, asta inseamna ca la mine dak 8 oameni dau click in acelasi timp undeva prin site/forum/blog etc, deja nu le merge lor hostu, limita de 15 conexiuni... mi se pare extrem de mica deci am tot dreptul sa ma cert cu ei atata timp cat nu am fost anuntat de aceasta limita, ea nefiind trecuta nicaieri.
Si plus de asta nu cred ca va fi o cearta, pur si simplu vreau sa imi mut hosting-ul pentru ca la ei nu sunt multumit atata timp cat site-ul se incadreaza in toate limitele pe care ei le-au scris la oferta de hosting insa serverul e down... Am tot dreptul sa ma mut. Am inteles eu bine cu cele 15 conexiuni simultane nu? Rezolvare la limitarea de conexiuni simultane nu este... nu pot sami oblig userii sa intre rar pe site sau ceva de genu ;)) |
|
| Sus |
|
olympia
Data înscrierii: 26/Mai/2008
Mesaje: 151
|
| Trimis: Dum Aug 17, 2008 8:47 pm Titlul subiectului: |
|
|
da, se pare ca administrarea insasi a serverului lor este deficitara.
dupa parerea mea, ce poti face: sa te asiguri ca nu ai conexiuni persistente. ptr forum, sa schimbi tabelul '_sessions` in TYPE = HEAP, sa stochezi imaginile pe server dk le ai in db (btw, am aruncat aseara o scurta privire pe site si mi-a dat rapid vreo cateva erori http 500 la request pe imagini), sa fii sigur ca ai ultima versiune de wp si mai mult nu stiu :D restul il poate face adminul de server.
asa cum ti-a sugerat si Mihaitha, baga niste benchmark-uri si, mai ales, schimba hostingul :D
//editat
cu ocazia asta, m-am convins inca o data ca atunci cand incerci sa ajuti pe altul (stii tu cum e, omul vrea, dar cum iese pana la urma e alta treaba :D), te ajuti de fapt pe tine.
eu am facut relativ recent schimbarea tipului de tabel ptr sesiuni in phpbb3, iar diferenta s-a simtit imediat. insa, gandindu-ma si la wp-ul asta, care mie imi face figuri pe un server mai lent, i-am dat si acolo un:
ALTER TABLE `wp_bas_visitors` TYPE = 'Heap'
si vreau sa iti spun ca este o diferenta enorma intre cum se incarca inainte de asta fata de acum (in fine, mie imi dadea si anumite erori, dar asta e o problema secundara totusi).
nu stiu daca te va ajuta cu ceva, dar sper ca da.
ATENTIE! doar tabelele astea tre' schimbate - eventual - in heap, vezi manualul. |
|
| 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 |
|
| |
|