Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> Ogromna ilość zapytań do bazy
Piotreeek
post
Post #1





Grupa: Zarejestrowani
Postów: 4
Pomógł: 0
Dołączył: 20.02.2017

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


Witam

Posiadamy sklep internetowy oparty o cs-cart. Od pewnego czasu serwer zaczął zamulać. Został zmieniony na mocniejszy, ale nic to nie dało. W środku nocy, kompletnie bez ruchu wygląda to tak: Uptime: 708 Threads: 3 Questions: 216418 Slow queries: 0 Opens: 283 Flush tables: 2 Open tables: 309 Queries per second avg: 305.675. W dzień zapytań jest jeszcze dużo więcej.

Pytanie jest takie: jak lub za pomocą czego zdiagnozować problem? Od czego najlepiej zacząć poszukiwania?

Ewentualnie prośba o polecenie dobrego fachowca.

Z góry dziękuję i pozdrawiam
Piotrek
Go to the top of the page
+Quote Post
 
Start new topic
Odpowiedzi
nospor
post
Post #2





Grupa: Moderatorzy
Postów: 36 559
Pomógł: 6315
Dołączył: 27.12.2004




Cytat
Demo sklepu pokazuje 114 zapytań na głównej, 498 na stronie produktu.

Wow, nie ogarniam na jakiej fazie trzeba byc by takie cos napisac :/
@viking masz moze jakies przykladowe zapytania? Ot tak, z ciekawosci (IMG:style_emoticons/default/smile.gif)
Go to the top of the page
+Quote Post
Pilsener
post
Post #3





Grupa: Zarejestrowani
Postów: 1 590
Pomógł: 185
Dołączył: 19.04.2006
Skąd: Gdańsk

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


Cytat(nospor @ 21.02.2017, 09:52:06 ) *
Wow, nie ogarniam na jakiej fazie trzeba byc by takie cos napisac :/


Nie trzeba fazy. Wystarczy użyć ORMa, dać do frontendu parę obiektów typu User czy Product a potem w templacie:
  1. <for product in user.products >
  2. {product.categories.first.createdBy.name.id}
  3. <for detail in product.details>
  4. {detail.feature.local.name}
  5. </for>
  6. </for>
- wyświetlać co się chce, korzystając ze wspaniałości narzędzi.

Do tego wystarczy ustawić np. fetchMode=EAGER (tak na wszelki wypadek) i nagle pobierając np. kategorię bloga stwierdzamy, że feczujemy pół bazy (IMG:style_emoticons/default/Lkingsmiley.png)

Mój rekord to ponad 5 tys. zapytań na formularz edycji użytkownika. Po optymalizacji ta liczba spadła do 10, jednak wymagało to prawie całego dnia pracy i zrezygnowania z automatyki na rzecz ręcznego napisania query buildera.

Moja rada: przed wyborem rozwiązania analizować kwestie wydajności, zrobić odpowiednie testy, zapewnić moce przerobowe i tak dalej.
Go to the top of the page
+Quote Post

Posty w temacie


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

 



RSS Aktualny czas: 4.10.2025 - 06:34