darnook 0 Zgłoś post Napisano Marzec 30, 2015 (edytowany) Witajcie Walczę z projektem sklepu w którym tylko jeden dostawca posiada ponad 21tys dostępnych produktów. Te produkty opisane są średnio ponad 40 cechami które są wymagane dla wyszukiwarki parametrycznej. Powiem jedno. O ile sama ilość produktów nie stanowi problemu dla PrestaShop o tyle już ilość rekordów (250k sic!) dla tabeli ps_product_features (~~21MB) powoduje niemały zawał skryptu przyprawiający serwer o symptom ataku DDoS... Sprawdzałem wszelkie możliwe ustawienia, serwery (hosting, dedyk, vps, local!) i mogę stwierdzić że najlepiej działa oczywiście localhost ale i tak z czasem ładowania strony kategorii różowo nie jest ~20/30 sek... Najmilej zaskoczył mnie biznesowy hosting Home.pl... równie dobrze co localhost a czasami nawet lepiej ... Najgorzej wypadają VPS (homecloud) oraz dedyki (kimsufi coprawda...) - sypią błędami 500 po paru sekundach... Jeśli nie PrestaShop to co sugerujecie z własnych doświadczeń? Dodam że te 21k produktów to jest dopiero początek... (sic! x2) docelowo ponad 20 dostawców... Chciałem spróbować usługi WPro na linuxpl - LiteSpeed oraz mysql na SSD brzmią zachęcająco ale mam problem z... UPC i łączem do hostingu ;/ Sądzę że długie czasy oczekiwania to w olbrzymiej kwestii sprawka zapytań do bazy MySQL. Sądzicie że baza danych na dyskach SSD w raid będzie w stanie to udźwignąć w rozsądnym czasie odpowiedzi z 20/30 sek do 5/10? Dla zobrazowania problemu http://www.digikey.com/product-search/en/integrated-circuits-ics/embedded-microcontrollers/2556109to jest żądany efekt... Edytowano Marzec 30, 2015 przez darnook (zobacz historię edycji) Udostępnij ten post Link to postu Udostępnij na innych stronach
gutek 23 Zgłoś post Napisano Marzec 30, 2015 Opisywane przez Ciebie ilości rekordów przy odpowiedniej konfiguracji serwera mysql nie są problemem, przyznam szczerze, nie pracowałem nigdy na prestashop ale mam inny system autorski który bezproblem obsługuje takie ilości danych przy dobrej optymalizacji skryptu oraz indeksach w bazie. Udostępnij ten post Link to postu Udostępnij na innych stronach
blfr 225 Zgłoś post Napisano Marzec 30, 2015 Ile ta baza waży? Ona się powinna w całości zmieścić w pamięci na większym VPS-ie albo dedyku. Do tego potrzebujesz cache. Przynajmniej popularniejsze produkty powinny się wczytywać normalnie (czyli w mniej niż sekundę). Udostępnij ten post Link to postu Udostępnij na innych stronach
darnook 0 Zgłoś post Napisano Marzec 30, 2015 Hej No tak to teraz wygląda... Gutek masz może jakieś demo do pokazania w działaniu ? zaciekawiłeś mnie (priv?) Udostępnij ten post Link to postu Udostępnij na innych stronach
gutek 23 Zgłoś post Napisano Marzec 30, 2015 (edytowany) taka baza to nie baza, dema nie ma bo to zamknięty sytem b2b:) Edytowano Marzec 30, 2015 przez gutek (zobacz historię edycji) Udostępnij ten post Link to postu Udostępnij na innych stronach
darnook 0 Zgłoś post Napisano Marzec 30, 2015 Czyli raczej trzeba szukać rozwiązania tego problemu nie w konfiguracji sprzętowej lecz raczej w konfiguracji/optymalizacji samej bazy danych?Jeśli chodzi o optymalizację która dotyczyłaby kompletnego jej przebudowania (tabel, powiązań) to chyba będzie niemożliwe albo conajmniej nie łatwe... ;/ Udostępnij ten post Link to postu Udostępnij na innych stronach
bybunny 540 Zgłoś post Napisano Marzec 30, 2015 Ta baza danych to nic wielkiego natomiast nie rozumiem czy szukasz usługi czy skryptu? Udostępnij ten post Link to postu Udostępnij na innych stronach
blfr 225 Zgłoś post Napisano Marzec 30, 2015 Te bazy nie mają 100MB. Tutaj dysk nie powinien mieć znaczenia. Chociaż pewnie inne rzeczy (zdjęcia?) doczytujesz z dysku, więc lepiej mieć SSD. Co zajmuje 30s? Otworzenie strony przedmiotu? Czy jakieś złożone zapytania z wyszukiwarki? Udostępnij ten post Link to postu Udostępnij na innych stronach
Vasthi 74 Zgłoś post Napisano Marzec 30, 2015 (edytowany) Dokładnie jak wyżej, ta baza jest malutka Aczkolwiek niektóre współdzielone hostingi takie jak nazwa.pl/home.pl mogą sobie z nią nie radzić. Po pierwsze zoptymalizuj sobie bazę danych i odpowiednio skonfiguruj (http://mysqltuner.com/), zobacz wolne zapytania. I jak na localhost Ci się ładuje 20-30 sekund to coś na pewno nie jest okej. Na koniec zainwestuj w cache. Edytowano Marzec 30, 2015 przez Viperoo (zobacz historię edycji) Udostępnij ten post Link to postu Udostępnij na innych stronach
darnook 0 Zgłoś post Napisano Marzec 30, 2015 Sęk w tym że sklep jest w zasadzie gotowy (detale jak konfiguracja płatności, regulamin itp) Problem powoduje odpalenie strony kategorii gdzie uruchomiony jest moduł BlockLayered odpowiedzialny za wyświetlenie parametrów produktów (cech, atrybutów) i ich wyszukanie. Jego wyłączenie powoduje częściowe poprawienie odpowiedzi i czasu wczytania. Mam pewien pomysł który wpadł mi teraz do głowy. Każda cecha ma w nawiasie pokazane ile produktów ją zawiera: szybkość (xxxx) Zobaczę czy wyłączenie liczenia ilości jest w stanie poprawić wydajność Udostępnij ten post Link to postu Udostępnij na innych stronach
gutek 23 Zgłoś post Napisano Marzec 30, 2015 ja bym na Twoim miejscu wyliczenia wykonywał raz dziennie w nocy i zapisywał a wyświetlana była by wartość wcześniej zapisana Udostępnij ten post Link to postu Udostępnij na innych stronach
darnook 0 Zgłoś post Napisano Marzec 30, 2015 No Panowie. Dziękuję za naprowadzenie mnie na źródło problemu. Udało mi się zejść na localu i na home.pl (business hosting) do niewyobrażalnej jeszcze rano wartości 6-9 sekund. Zdecydowanie pomogło to o czym wspomniał gutek i ja wcześniej. Wyłączenie zliczania ilości produktów dla każdej z cech + wywalenie śmieciowego kodu z modułu BlockLayered + usprawnienie zapytania zaczerpnięte z Issue Trackera Prestashop. W domu sprawdzę jak działa ta sama konfiguracja ale na SSD. Jeśli uda się zejść do wartości ok 3-6 sekund to będę w niebie Udostępnij ten post Link to postu Udostępnij na innych stronach