Erori de server MySQL a plecat departe programatori hosting, web hosting
Unul dintre clientii gazda noastra minunat ne-a abordat cu o eroare similară cu cererea „obsnit“ de ce acest lucru se întâmplă și de ce „ne poartă serverul?“. Datorită prelucrării cererii sale a devenit clar că clientul într-unul dintre proiectele realizate un script care, timp de 3 minute pentru a colecta statistici sau de așteptare pentru un răspuns din partea externă (a treia parte) al gazdei, și apoi script-ul a trebuit să „pună“ răspunsul la baza de date, adică. e. păstrează răspunsul într-un anumit tabel.
În cazul în care script-ul utilizat aproximativ ciclul în care se oprește în executarea script-ul timp de 30 de secunde:
Ie script-ul a fost încercarea de a testa textul pe unicitatea din cauza unui serviciu extern și a făcut 4 încercări pentru fiecare 30 de secunde. Cu toate acestea, în cazul în care script-ul a primit deja un răspuns pozitiv din partea gazdei externe a rezultatelor, și a încercat să păstreze rezultatele într-o bază de date, ieși eroare josnică:
Au existat atât de multe emoții de la dezvoltator, din cauza tuturor așteptărilor acest lucru nu ar fi întâmplat!
Cu toate acestea, decizia pune sub nas, și apoi se pune doar în faptul, pentru a atrage atenția asupra valorii uneia variabile de server globale MySQL, și anume, valoarea connect_timeout variabilei = 10 (secunde), care este responsabil pentru o pauză de o conexiune cu MySQL-server. Ie în cazul în care în timpul acestor 10 secunde rulează un script nu încearcă să interacționeze cu MySQL-server, pauzele de conectare și trebuie să fie resetat!
Acum știi cum să modificați această bucată de cod: este necesar pentru a reduce timpul de somn (30) la o valoare care nu prevoskhozhyaschee 10 secunde. Și - Voila! Acum, totul funcționează cum era de așteptat!
Deci, să plătească vnmianie la astfel de lucruri, deoarece acestea sunt destul de evidente, și crede despre logica scripturi în condițiile date specifice -okruzheniya de găzduire.
