mój problem polega na wolno działającej witrynie. W miarę własnych umiejętności robiłem optymalizację polegającą na czyszczeniu różnych tabel:
TRUNCATE dataflow_batch_export;
TRUNCATE dataflow_batch_import;
TRUNCATE log_customer;
TRUNCATE log_quote;
TRUNCATE log_summary;
TRUNCATE log_summary_type;
TRUNCATE log_url;
TRUNCATE log_url_info;
TRUNCATE log_visitor;
TRUNCATE log_visitor_info;
TRUNCATE log_visitor_online;
TRUNCATE report_viewed_product_index;
TRUNCATE report_compared_product_index;
TRUNCATE report_event;
TRUNCATE index_event;
TRUNCATE catalog_compare_item;
oraz także:
TRUNCATE core_url_rewrite;
Mam włączone Gzip, w Konfiguracja>>>Programista są aktywne Merge JavaScript i CSS.
Czy warto włączyć poniższą funkcję?
Konfiguracja>>>System
External Full Page Cache Settings
u siebie mam wyłączoną.
Po czyszczeniu baza ma około 50 mb.
Z informacji od hostingu otrzymałem:
w logach wolnych zapytań do baz danych widzę często występujące:
# Time: 2017-03-10T18:28:24.906417Z
# User@Host: USERXXX[BAZAXXX] @ SERWERXXX [11.111.111.111] Id: 1111111
# Query_time: 9.915292 Lock_time: 0.000422 Rows_sent: 0 Rows_examined: 1354772
SET timestamp=1489170504;
INSERT INTO `catalog_product_index_price_opt_agr_idx` SELECT `i`.`entity_id`, `i`.`customer_group_id`, `i`.`website_id`, `o`.`option_id`, IF(MIN(o.is_require) = 1, MIN(IF(IF(otps.option_type_price_id > 0, otps.price_type, otpd.price_type) = 'fixed', IF(otps.option_type_price_id > 0, otps.price, otpd.price), ROUND(i.price * (IF(otps.option_type_price_id > 0, otps.price, otpd.price) / 100), 4))), 0) AS `min_price`, IF((MIN(o.type)='radio' OR MIN(o.type)='drop_down'), MAX(IF(IF(otps.option_type_price_id > 0, otps.price_type, otpd.price_type) = 'fixed', IF(otps.option_type_price_id > 0, otps.price, otpd.price), ROUND(i.price * (IF(otps.option_type_price_id > 0, otps.price, otpd.price) / 100), 4))), SUM(IF(IF(otps.option_type_price_id > 0, otps.price_type, otpd.price_type) = 'fixed', IF(otps.option_type_price_id > 0, otps.price, otpd.price), ROUND(i.price * (IF(otps.option_type_price_id > 0, otps.price, otpd.price) / 100), 4)))) AS `max_price`, IF(MIN(i.base_tier) IS NOT NULL, IF(MIN(o.is_require) > 0, MIN(IF(IF(otps.option_type_price_id > 0, otps.price_type, otpd.price_type) = 'fixed', IF(otps.option_type_price_id > 0, otps.price, otpd.price), ROUND(i.base_tier * (IF(otps.option_type_price_id > 0, otps.price, otpd.price) / 100), 4))), 0), NULL) AS `tier_price`, IF(MIN(i.base_group_price) IS NOT NULL, IF(MIN(o.is_require) > 0, MIN(IF(IF(otps.option_type_price_id > 0, otps.price_type, otpd.price_type) = 'fixed', IF(otps.option_type_price_id > 0, otps.price, otpd.price), ROUND(i.base_group_price * (IF(otps.option_type_price_id > 0, otps.price, otpd.price) / 100), 4))), 0), NULL) AS `group_price` FROM `catalog_product_index_price_final_idx` AS `i`
INNER JOIN `core_website` AS `cw` ON cw.website_id = i.website_id
INNER JOIN `core_store_group` AS `csg` ON csg.group_id = cw.default_group_id
INNER JOIN `core_store` AS `cs` ON cs.store_id = csg.default_store_id
INNER JOIN `catalog_product_option` AS `o` ON o.product_id = i.entity_id
INNER JOIN `catalog_product_option_type_value` AS `ot` ON ot.option_id = o.option_id
INNER JOIN `catalog_product_option_type_price` AS `otpd` ON otpd.option_type_id = ot.option_type_id AND otpd.store_id = 0
LEFT JOIN `catalog_product_option_type_price` AS `otps` ON otps.option_type_id = otpd.option_type_id AND otpd.store_id = cs.store_id GROUP BY `i`.`entity_id`,
`i`.`customer_group_id`,
`i`.`website_id`,
`o`.`option_id` ON DUPLICATE KEY UPDATE `min_price` = VALUES(`min_price`), `max_price` = VALUES(`max_price`), `tier_price` = VALUES(`tier_price`), `group_price` = VALUES(`group_price`);
Innym problemem są znikające rabaty katalogu... W PA>>>Promocje>>>Reguły cenowe katalogu interesujące mnie rabaty są ciągle włączone. NA Frontend niestety Magento ich nie uwzględnia. Dopiero gdy wejdę w Promocje>>>Reguły cenowe katalogu i wybiorę jeden z ustawionych rabatów, kliknę "Zapisz i zastosuj" ceny na frontend są z uwzględnieniem rabatów. Trzeba to tak jakby odświeżać. Czasami muszę robić to każdego dnia co jest dość uciążliwe.
Czy ktoś jest w stanie pomóc?
wersja magento: 1.9.3.1