Coś jak serwerowa diagnostyka
Back to Archiwum Eltena#1 pajper
Witajcie!
Zgodnie ze swoją propozycją z dnia wczorajszego, postanowiłem zrobić pewien test. Wykupiłem i zainstalowałem serwer o lepszych parametrach, na razie na miesiąc. Skopiowałem na niego dane i przygotowałem wersję, która się z nim łączy.
Serwer ten posiada kompletną lustrzankę danych z dzisiaj z godziny 16:00. Jest na nim zarówno API klienta, jak strona.
Wyniki wynikami, ale proponuję sprawdzić, czy samo użytkowanie jest lżejsze i szybsze. To i tak tylko kopia, więc śmiało można zasypać fora wpisami, wątkami, popisać do ludzi itp. Nic z działalności tam nie pojawi się na serwerach oficjalnych.
Link do wersji:
https://www.dropbox.com/s/gwl8qhoud6i7ucp/elten_testing_server.7z?dl=1
Link do strony serwera:
https://t.elten-net.eu
Shoot for the Moon. Even if you miss, you'll land among the stars.
#2 papierek
powiem wam tak. Na raze zrobiłem tylko testy łącza i sama struktura forów ma ponad dwukrotnie mniejsze pingi, no i bardziej stabilne, mniejszy rozstrzał. Co spowodowało, że na nowej wersji eltena stary serwer zaczyna nie wyrabiać? Nowy agent, czy grupy?
#3 pajper
Grupy, niestety.
Shoot for the Moon. Even if you miss, you'll land among the stars.
#4 pajper
Pojawiają się zapytania do mysqla z joinami, bo trzeba przecież listować grupy na podstawie tego, do jakich się należy, więc nagle prócz grup dorzuca się tabelę z listą członków.
I to jedno zapytanie:
select
g.id, g.name, g.founder, g.description, g.lang, g.recommended, g.open, g.public, m.role, count(distinct p.user), g.created
from forum_groups g
left join forum_groups_members as m on g.id=m.groupid and m.user='pajper'
left join forum_groups_members as p on g.id=p.groupid and (m.role=1 or m.role=2)
group by g.id;
na starym serwerze wykonuje się (bez cachowania) ponad 600ms, na nowym ok. 70ms.
Shoot for the Moon. Even if you miss, you'll land among the stars.
#5 papierek
nie da się zrobić jakiejś fajnej optymalizacji na bazie? Pozakładać indeksy?
#6 pajper
Już zrobiłem, co się dało, po explainie i po wszystkim, ale istnieją ograniczenia dwóch rdzeni i 1,8GHz niestety.
Może jest jakaś sprytna optymalizacja, o jakiej nie pomyślałem, ale dziesięciokrotnie szybszy czas wykonania na lepszym serwerze wskazuje raczej, że tu więcej z wydajności maszyny, niż optymalizacji.
Shoot for the Moon. Even if you miss, you'll land among the stars.
#7 papierek
no, ale znowuż chyba aż tylu ludzi nie odpytuje jednocześnie bazy danych, żeby ten stary serwer sobie nie poradził. Chociaż czy ja wiem? Może grupy właśnie powodują, że tych zapytań jest jeszcze wiecej, bo każdy w swojej grupie.
#8 nuno69
Nie no jest o wiele lepiej. Inna rzecz że u mnie Elten odwala takie jazdy że jest aużywalny, ale to chyba wina mojego komputera. CHociaż... wszystko inne działą dobrze.
#9 Paulinux
A ja po kliknięciu w linka dostaję 404