Salut, am un program care face ip accounting, insa cine l-a scris nu s-a gandit si la optimizarea query-urilor pt. mySQL.
uitandu-ma prin codul sursa, pt. a face update, programul intai face un select in baza de date, ia valorile care sunt pentru input si output, la care adauga traficul facut de la ultima actualizare, apoi face: UPDATE traffic SET input=XXXXXXX, output=YYYYY where IP='un.ip'; stiu ca in mysql se poate face direct update de genul: UPDATE traffic SET input=XXXXXXX+1223, output=YYYYY+1231 where IP='un.ip'; insa programul face contorizarea pe ora+data, si nu stiu cum sa ma prind ca a trecut sau nu o ora de cand a fost facut ultimul update, astfel incat sa pot sa bag INSERT into traffic values(....); si apoi sa fac update-uri pentru inca o ora samd. m-a interesa o solutie cat mai optima pentru a face update la baza de date, si dupa nevoie si insert astfel incat numarul de query-uri sa fie cat mai mic. Pentru o clasa C, programul respectiv face ~ 512query-uri + inca vreo 256 aditionale sa vada daca trebuie sa faca INSERT sau UPDATE. pe masina pe care ruleaza mysql-ul un update dureaza cam 0.30-0.60 secunde ... iar la 768 de query-uri dureaza ~ 2 min, iar eu as vrea sa reduc timpul sub 1 min. So, are cineva vreo idee cum s-ar putea face ? Eugen --- Pentru dezabonare, trimiteti mail la [EMAIL PROTECTED] cu subiectul 'unsubscribe rlug'. REGULI, arhive si alte informatii: http://www.lug.ro/mlist/
