Baza zwolniła po przeniesieniu na inny serwer, Laravel, MySQL |
Baza zwolniła po przeniesieniu na inny serwer, Laravel, MySQL |
21.02.2018, 15:37:11
Post
#1
|
|
Grupa: Zarejestrowani Postów: 278 Pomógł: 35 Dołączył: 25.06.2010 Ostrzeżenie: (0%) |
Czołem
Dostałem do ogarniania napisane w Laravelu API, które ze względu na swoją charakterystykę musiało być przeniesione na serwer dedykowany. Nowy serwer na szybko testowany na podstawowych operacjach (arytmetyka, mielenie tablic itd...) jest 3 x szybszy od starego. Serwis jednak zwolnił niemiłosiernie. Po analizie okazuje się że winne są zapytania do bazy danych. Wyszło przy okazji jak nieoptymalnie napisana jest usługa którą testuję (wykonuje ponad 250 zapytań do bazy danych ), ale to temat na później. W każdym bądź razie okazało się że na starym serwerze pojedyńcze zapytanie SQL wykonuje się w ok 0.2ms i czas ten jest w miarę stały, natomiast na nowym, szybszym, wacha się od 3 do 100ms. Pliki są identyczne, baza danych również przeniesiona ta sama, z tym samym kodowaniem. Środowisko to świeża instalacja Ubuntu Server + NGINX + PHP7.0 + MySQL. Jakieś sugestie co może mieć na to wpływ? Ten post edytował gargamel 21.02.2018, 15:45:15 |
|
|
21.02.2018, 16:02:55
Post
#2
|
|
Grupa: Zarejestrowani Postów: 859 Pomógł: 177 Dołączył: 29.10.2009 Ostrzeżenie: (0%) |
może na starym serwerze zapytania były cachowane
|
|
|
21.02.2018, 16:16:12
Post
#3
|
|
Grupa: Zarejestrowani Postów: 278 Pomógł: 35 Dołączył: 25.06.2010 Ostrzeżenie: (0%) |
Ciągle nie wyjaśniałoby to czemu na nowym serwerze, pierwsze lepsze zapytanie:
select * from `account_users` where `id` = ? wykonuje się 79.29ms account_users zawiera jeden rekord Edit: I jeszcze jedna obserwacja: Na serwerze postawiłem świeży projekt laravela, w którym łącze się z tą samą bazą danych i tam wszystko śmiga jak złoto. Czyli wniosek, że tak jakby projektowi "nie podobało" się że powstał na jednym serwerze i został przeniesiony na drugi Edit2: Problem się rozwiązał, temat do zamknięcia... Dla potomnych: W Laravelu cachowany jest plik .env z danymi bazy danych. Po przeniesieniu na nowy serwer system łączył się z bazą ze starego serwera. Rozwiązanie: czyścić cache przy przenosinach Ten post edytował gargamel 21.02.2018, 18:14:11 |
|
|
21.02.2018, 18:21:28
Post
#4
|
|
Grupa: Zarejestrowani Postów: 8 068 Pomógł: 1414 Dołączył: 26.10.2005 Ostrzeżenie: (0%) |
eeee... No ja w sumie nie wiem kto normalnie przenosi cache na nowy serwer...
|
|
|
21.02.2018, 21:06:28
Post
#5
|
|
Grupa: Zarejestrowani Postów: 278 Pomógł: 35 Dołączył: 25.06.2010 Ostrzeżenie: (0%) |
Uroki pracy na przejętym projekcie.
|
|
|
22.02.2018, 14:30:42
Post
#6
|
|
Grupa: Zarejestrowani Postów: 27 Pomógł: 0 Dołączył: 22.11.2003 Ostrzeżenie: (0%) |
Baza przeniesiona bez poleceń tworzących indeksy?
-------------------- Robert Janeczek
G-Forces Web Management Polska robert.janeczek@gforces.pl |
|
|
22.02.2018, 16:00:27
Post
#7
|
|
Grupa: Zarejestrowani Postów: 116 Pomógł: 33 Dołączył: 8.09.2014 Ostrzeżenie: (0%) |
|
|
|
Wersja Lo-Fi | Aktualny czas: 25.04.2024 - 07:21 |