Sveiki, Yra centrinis DB serveris, yra Ndešimt klientų. Susijungimus klientai laiko atidarytus. Kiekvienas klientas lockina teiblą, selectina vieną įrašą, ištrina, unlockina. Apdoroja (kelios sekundės) ir rezultatą insertina į kitą teiblą. Visa tai pakurta ant MySQL, storage - MyISAM, indeksas tik ant primary key (nėra ten ką indexuot, FIFO ir basta). Problema - nuo ~150000 įrašų lentoje bendras sistemos našumas juntamai pradeda mažėti. Labai welcome bet kokios nuomonės kaip ir ką geriau tvarkyti. Kol kas variantai - hardware upgrade / kita DBMS / tik vienas klientas į DB, kuris pats QUEUE managementą darytų. O gal tiesiog InnoDB vietoj MyISAM ir transakcijas naudot? Užduotis elementari - vieni softai per vieną galą grūda į DB įrašus, kiti softai per kitą galą juos valgo. Esminis momentas - reikalinga garantija, kad nei vienas valgantis klientas negaus įrašo, kurį ką tik gavo kitas klientas. Taip, suprantu, ne DB darbas čia. Tiesiog softas maitinantis įrašais - nepajudinamas, max galima ODBC kitą pakišti.