On Tue, 23 Sep 2008, Ivascu Stefan wrote:
Am un scipt care tre sa verifice vreo 2500 de linii, si prin urmare trebuie sa ridice 2500 de sesiuni, din pacate la un moment dat da urmatoarea eroare "Warning: mysql_pconnect(): Too many connections in /path/to/file on line 5" Am gasit pe net ca ar exista o variabila ce trebuie pusa in my.cnf (max_connections), dar din pacate nu a avut nici un efect. Eu am adaugat in my.cnf:
Scriptul tau e scris de un indian sau tu esti indian si asta e numele tau romanesc? Daca ai de deschis 2500 de conexiuni simultane dintr-o singura instanta a unei aplicatii atunci sint vreo 3 posibilitati:
1. scriptul e scris invers (indian style); 2. ai nimerit cu un secol mai devreme; 3. visezi urit, trebuie sa te trezesti.
[mysql] # uncomment the next directive if you are not familiar with SQL #safe-updates max_connections = 3000 Ma poate ajuta cineva ?
Totusi, inainte de toate contacteaza un sysadmin cu ceva cunostinte de DBA, sau invers. In mod evident inainte de a scrie o asemenea ineptie de setare (cum bine a observat cineva e scrisa in secriunea gresita oricum) trebuie sa ridici numarul maxim de file descriptori probabil pe la vreo 6-7-8k. Fiecare "conexiune" se traduce prin cel putin inca un file descriptor deschis (sau socket, cum vrei sa-i spui, ca in cazul de fata sint de fapt tcpip sockets). Inainte si de asta de fapt ar trebui coctactat un dintr-asta care scrie php (putini scriu php si sint programatori in acelasi timp, deci un meserias dintr-asta cu "php&mysql") care sa rescrie eventuala cel script sau sa seteze vreun flag ceva pentru ca engine-ul php sa reutilizeze conexiunile deja deschise (de obicei dai in probleme ca ale tale cind in php.ini ai lasat totul la liber, fara nici o limita).
Undeva intr-un mail mai recent scrii o ineptie de genul:
Intr-o tabela sql am X locatii (in cazul de fata aproximativ 2500). trebuie sa iau fiecare locatie in parte sa ii dau ping, si apoi sa trec in tabela online / offline.
De ce nu iei totul dintr-un singur query intr-un array sau un ceva ce sint sigur ca are si php-ul?
-- Let's cut tha crap, ok? Ce spun eu aicea ma reprezinta doar pe mine, si-mi rezerv dreptul sa ning asupra oricarei companii pe care credeti voi c-as sprijini-o eu in vreun fel, da? _______________________________________________ RLUG mailing list RLUG@lists.lug.ro http://lists.lug.ro/mailman/listinfo/rlug