Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

 
Reply to this topicStart new topic
> Baza zwolniła po przeniesieniu na inny serwer, Laravel, MySQL
gargamel
post 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 smile.gif
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 wink.gif ), 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
Go to the top of the page
+Quote Post
aras785
post 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
Go to the top of the page
+Quote Post
gargamel
post 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 smile.gif

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 blink.gif

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 smile.gif

Ten post edytował gargamel 21.02.2018, 18:14:11
Go to the top of the page
+Quote Post
Pyton_000
post 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...
Go to the top of the page
+Quote Post
gargamel
post 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.
Go to the top of the page
+Quote Post
rashid
post 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
Go to the top of the page
+Quote Post
borabora
post 22.02.2018, 16:00:27
Post #7





Grupa: Zarejestrowani
Postów: 116
Pomógł: 33
Dołączył: 8.09.2014

Ostrzeżenie: (0%)
-----


Cytat(gargamel @ 21.02.2018, 21:06:28 ) *
Uroki pracy na przejętym projekcie.


trzebabyło wrzucić na gita. env ma gitignora, wtedy byś się zorientował, że nie masz połączenia z bazą i nie byłoby problemu
Go to the top of the page
+Quote Post

Reply to this topicStart new topic
1 Użytkowników czyta ten temat (1 Gości i 0 Anonimowych użytkowników)
0 Zarejestrowanych:

 



RSS Wersja Lo-Fi Aktualny czas: 16.04.2024 - 21:41