Jump to content
Search In
  • More options...
Find results that contain...
Find results in...

rassigor

Users
  
  • Posts

    1,281
  • Joined

  • Last visited

Everything posted by rassigor

  1. Вообще их уже настраивали хостеры, ставили доступность 3 гб оперативы, но хз, все может быть. На ощуп сайт не очень медленно работает https://greenagri.ru Но меня вот это стало смущать Я загрузил туда около 15 тыс товаров (стало 30) как раз в ноябре, и он стал тупить ,попросил хостера индексы настроить, но результата как видим не сильно дало
  2. Ясно не вышло из меня оптимизатора на php (( Жду тогда марка с его Джеткеш 7)) пусть делают профессионалы оптимизацию
  3. Основные оптимизации это кода)) не сильно мастер я в самом MSSQL Так что принимаю помощь, тыкание на статьи. Вот такие я штуки обычно делаю.
  4. SELECT * FROM `oc_mfilter_url_alias` WHERE `mfp` = '753-vid-kul-tury-vozdeystviya[Бобовые культуры]' AND `language_id` = '1' AND `store_id` = '0' AND ( `path` = '' OR `path` = 'sredstva-zashity-rastenij/insekticidy' ) LIMIT 1 Я действовал так, смотрим запрос видим поля mfp language_id store_id path И добавляем индексы, верная логика?
  5. Назначение простое, смотрел лог медленных запросов, где стояло поле в условии, в сортировке, туда и ставил индекс.
  6. я пока нечего не думаю) методом тыка пока делаю, разбираюсь в процессе. Какие нужно убрать?
  7. Протестировал сайт, сервисом на 100 человек двумя разными сайтами https://app.loadimpact.com/ http://loaddy.com/result/788473356/ это хорошо или плохо? показатели
  8. Почитал что null это плохо, надо идекс, только не пойму к какому полю нужен 5 SUBQUERY NULL NULL NULL NULL NULL NULL NULL Impossible WHERE noticed after reading const table... 4 SUBQUERY NULL NULL NULL NULL NULL NULL NULL Impossible WHERE noticed after reading const table...
  9. Ну эт понятно, те по факту Опенкарт нетиповой будет, переписанный, и обновиться на 3.0 особо не получиться как я понимаю
  10. Добавил кстати много где индексов, поуменьшилась нагрузка вот осталось 2 запроса Время выполнения: 1000.33мс SELECT r.review_id, r.author, r.rating, r.text, r.plus, r.minus, r.admin_reply, p.product_id, pd.name, p.price, p.image, r.date_added FROM oc_review r LEFT JOIN oc_product p ON (r.product_id = p.product_id) LEFT JOIN oc_product_description pd ON (p.product_id = pd.product_id) WHERE p.product_id = '4607' AND p.date_available <= NOW() AND p.status = '1' AND r.status = '1' AND pd.language_id = '1' ORDER BY r.date_added DESC LIMIT 0,20 Время выполнения: 1001.33мс SELECT DISTINCT *, pd.name AS name, p.image, (SELECT md.name FROM oc_manufacturer_description md WHERE md.manufacturer_id = p.manufacturer_id AND md.language_id = '1') AS manufacturer, (SELECT price FROM oc_product_discount pd2 WHERE pd2.product_id = p.product_id AND pd2.customer_group_id = '1' AND pd2.quantity = '1' AND ((pd2.date_start = '0000-00-00' OR pd2.date_start < NOW()) AND (pd2.date_end = '0000-00-00' OR pd2.date_end > NOW())) ORDER BY pd2.priority ASC, pd2.price ASC LIMIT 1) AS discount, (SELECT price FROM oc_product_special ps WHERE ps.product_id = p.product_id AND ps.customer_group_id = '1' AND ((ps.date_start = '0000-00-00' OR ps.date_start < NOW()) AND (ps.date_end = '0000-00-00' OR ps.date_end > NOW())) ORDER BY ps.priority ASC, ps.price ASC LIMIT 1) AS special, (SELECT points FROM oc_product_reward pr WHERE pr.product_id = p.product_id AND customer_group_id = '1') AS reward, (SELECT ss.name FROM oc_stock_status ss WHERE ss.stock_status_id = p.stock_status_id AND ss.language_id = '1') AS stock_status, (SELECT wcd.unit FROM oc_weight_class_description wcd WHERE p.weight_class_id = wcd.weight_class_id AND wcd.language_id = '1') AS weight_class, (SELECT lcd.unit FROM oc_length_class_description lcd WHERE p.length_class_id = lcd.length_class_id AND lcd.language_id = '1') AS length_class, (SELECT AVG(rating) AS total FROM oc_review r1 WHERE r1.product_id = p.product_id AND r1.status = '1' GROUP BY r1.product_id) AS rating, (SELECT COUNT(*) AS total FROM oc_review r2 WHERE r2.product_id = p.product_id AND r2.status = '1' GROUP BY r2.product_id) AS reviews, p.sort_order FROM oc_product p LEFT JOIN oc_product_description pd ON (p.product_id = pd.product_id) LEFT JOIN oc_product_to_store p2s ON (p.product_id = p2s.product_id) LEFT JOIN oc_manufacturer m ON (p.manufacturer_id = m.manufacturer_id) WHERE p.product_id = '6614' AND pd.language_id = '1' AND p.status = '1' AND p.date_available <= NOW() AND p2s.store_id = '0'
  11. Время создания: Ноя 17 2017 г., 22:07 Создан: phpMyAdmin 4.4.15.10 / MySQL 5.5.52-MariaDB SQL запрос: DESCRIBE SELECT DISTINCT *, pd.name AS name, p.image, (SELECT md.name FROM oc_manufacturer_description md WHERE md.manufacturer_id = p.manufacturer_id AND md.language_id = '1') AS manufacturer, (SELECT price FROM oc_product_discount pd2 WHERE pd2.product_id = p.product_id AND pd2.customer_group_id = '1' AND pd2.quantity = '1' AND ((pd2.date_start = '0000-00-00' OR pd2.date_start < NOW()) AND (pd2.date_end = '0000-00-00' OR pd2.date_end > NOW())) ORDER BY pd2.priority ASC, pd2.price ASC LIMIT 1) AS discount, (SELECT price FROM oc_product_special ps WHERE ps.product_id = p.product_id AND ps.customer_group_id = '1' AND ((ps.date_start = '0000-00-00' OR ps.date_start < NOW()) AND (ps.date_end = '0000-00-00' OR ps.date_end > NOW())) ORDER BY ps.priority ASC, ps.price ASC LIMIT 1) AS special, (SELECT points FROM oc_product_reward pr WHERE pr.product_id = p.product_id AND customer_group_id = '1') AS reward, (SELECT ss.name FROM oc_stock_status ss WHERE ss.stock_status_id = p.stock_status_id AND ss.language_id = '1') AS stock_status, (SELECT wcd.unit FROM oc_weight_class_description wcd WHERE p.weight_class_id = wcd.weight_class_id AND wcd.language_id = '1') AS weight_class, (SELECT lcd.unit FROM oc_length_class_description lcd WHERE p.length_class_id = lcd.length_class_id AND lcd.language_id = '1') AS length_class, (SELECT AVG(rating) AS total FROM oc_review r1 WHERE r1.product_id = p.product_id AND r1.status = '1' GROUP BY r1.product_id) AS rating, (SELECT COUNT(*) AS total FROM oc_review r2 WHERE r2.product_id = p.product_id AND r2.status = '1' GROUP BY r2.product_id) AS reviews, p.sort_order FROM oc_product p LEFT JOIN oc_product_description pd ON (p.product_id = pd.product_id) LEFT JOIN oc_product_to_store p2s ON (p.product_id = p2s.product_id) LEFT JOIN oc_manufacturer m ON (p.manufacturer_id = m.manufacturer_id) WHERE p.product_id = '18862' AND pd.language_id = '1' AND p.status = '1' AND p.date_available <= NOW() AND p2s.store_id = '0'; Строки: 13 id select_type table type possible_keys key key_len ref rows Extra 1 PRIMARY p const PRIMARY,date_available,status,product_id PRIMARY 4 const 1 1 PRIMARY pd const PRIMARY,language_id,product_id PRIMARY 8 const,const 1 1 PRIMARY p2s const PRIMARY,store_id,product_id PRIMARY 8 const,const 1 Using index 1 PRIMARY m const PRIMARY,manufacturer_id PRIMARY 4 const 1 10 SUBQUERY r2 ref product_id,status product_id 4 const 1 Using where 9 SUBQUERY r1 ref product_id,status product_id 4 const 1 Using where 8 SUBQUERY NULL NULL NULL NULL NULL NULL NULL Impossible WHERE noticed after reading const table... 7 SUBQUERY NULL NULL NULL NULL NULL NULL NULL Impossible WHERE noticed after reading const table... 6 SUBQUERY ss const PRIMARY PRIMARY 8 const,const 1 5 SUBQUERY NULL NULL NULL NULL NULL NULL NULL Impossible WHERE noticed after reading const table... 4 SUBQUERY NULL NULL NULL NULL NULL NULL NULL Impossible WHERE noticed after reading const table... 3 SUBQUERY pd2 ref product_id,quantity,customer_group_id,date_start product_id 4 const 1 Using where; Using filesort 2 SUBQUERY md const PRIMARY,manufacturer_id,language_id PRIMARY 8 const,const 1
  12. https://its.1c.ru/db/metod8dev#content:5842:hdoc Во если кому интересно)
  13. параметры такие 30 тыс товаров 4 гб рам, ссд, 4 ядра по 2.4 ггц Стоит джеткеш и фильтр, сейчас выполню код и скину
  14. Вообщем не совсем, 1с это интерпретатор, там есть код, выполняется он на mssql , запускаешь там замер производительности, и система пишет сколько по времени выполняется код, далее его оптимизируешь, добавляешь индексы, на уровне mssql я не особо работал, в основном были дурищмы типа запрос в цикле, запрос без оптимизации и тд и тп
  15. Ответ вот какой, стоит ли поголовно делать индексы на поля, которые указаны в отборах например вот эти ps.date_end и manufacturer_id и аналогичные и второй вопрос, как профи запросов, можете ли вы глянуть, и сказать где тут косяк, если его тут нет, то тогда и нечего выдумывать, надо ставить железо мощнее. Я сам оптимизацией много времени занимался, но не сайтов, а 1С предприятие и MS SQL) там мне алгоритм понятен, тут пока не совсем догоняю, вот поэтому и интересуюсь.
  16. Спасибо!так и сделаю.через пару тройку лет, когда все изучу и разберусь и стану профи
  17. Добрый день, есть часто повторяемый запрос, на который тратиться 1000 мс, подскажите как его можно оптимизировать? SELECT DISTINCT *, pd.name AS name, p.image, (SELECT md.name FROM oc_manufacturer_description md WHERE md.manufacturer_id = p.manufacturer_id AND md.language_id = '1') AS manufacturer, (SELECT price FROM oc_product_discount pd2 WHERE pd2.product_id = p.product_id AND pd2.customer_group_id = '1' AND pd2.quantity = '1' AND ((pd2.date_start = '0000-00-00' OR pd2.date_start < NOW()) AND (pd2.date_end = '0000-00-00' OR pd2.date_end > NOW())) ORDER BY pd2.priority ASC, pd2.price ASC LIMIT 1) AS discount, (SELECT price FROM oc_product_special ps WHERE ps.product_id = p.product_id AND ps.customer_group_id = '1' AND ((ps.date_start = '0000-00-00' OR ps.date_start < NOW()) AND (ps.date_end = '0000-00-00' OR ps.date_end > NOW())) ORDER BY ps.priority ASC, ps.price ASC LIMIT 1) AS special, (SELECT points FROM oc_product_reward pr WHERE pr.product_id = p.product_id AND customer_group_id = '1') AS reward, (SELECT ss.name FROM oc_stock_status ss WHERE ss.stock_status_id = p.stock_status_id AND ss.language_id = '1') AS stock_status, (SELECT wcd.unit FROM oc_weight_class_description wcd WHERE p.weight_class_id = wcd.weight_class_id AND wcd.language_id = '1') AS weight_class, (SELECT lcd.unit FROM oc_length_class_description lcd WHERE p.length_class_id = lcd.length_class_id AND lcd.language_id = '1') AS length_class, (SELECT AVG(rating) AS total FROM oc_review r1 WHERE r1.product_id = p.product_id AND r1.status = '1' GROUP BY r1.product_id) AS rating, (SELECT COUNT(*) AS total FROM oc_review r2 WHERE r2.product_id = p.product_id AND r2.status = '1' GROUP BY r2.product_id) AS reviews, p.sort_order FROM oc_product p LEFT JOIN oc_product_description pd ON (p.product_id = pd.product_id) LEFT JOIN oc_product_to_store p2s ON (p.product_id = p2s.product_id) LEFT JOIN oc_manufacturer m ON (p.manufacturer_id = m.manufacturer_id) WHERE p.product_id = '18862' AND pd.language_id = '1' AND p.status = '1' AND p.date_available <= NOW() AND p2s.store_id = '0' SELECT DISTINCT *, pd.name AS name, p.image, (SELECT md.name FROM oc_manufacturer_description md WHERE md.manufacturer_id = p.manufacturer_id AND md.language_id = '1') AS manufacturer, (SELECT price FROM oc_product_discount pd2 WHERE pd2.product_id = p.product_id AND pd2.customer_group_id = '1' AND pd2.quantity = '1' AND ((pd2.date_start = '0000-00-00' OR pd2.date_start < NOW()) AND (pd2.date_end = '0000-00-00' OR pd2.date_end > NOW())) ORDER BY pd2.priority ASC, pd2.price ASC LIMIT 1) AS discount, (SELECT price FROM oc_product_special ps WHERE ps.product_id = p.product_id AND ps.customer_group_id = '1' AND ((ps.date_start = '0000-00-00' OR ps.date_start < NOW()) AND (ps.date_end = '0000-00-00' OR ps.date_end > NOW())) ORDER BY ps.priority ASC, ps.price ASC LIMIT 1) AS special, (SELECT points FROM oc_product_reward pr WHERE pr.product_id = p.product_id AND customer_group_id = '1') AS reward, (SELECT ss.name FROM oc_stock_status ss WHERE ss.stock_status_id = p.stock_status_id AND ss.language_id = '1') AS stock_status, (SELECT wcd.unit FROM oc_weight_class_description wcd WHERE p.weight_class_id = wcd.weight_class_id AND wcd.language_id = '1') AS weight_class, (SELECT lcd.unit FROM oc_length_class_description lcd WHERE p.length_class_id = lcd.length_class_id AND lcd.language_id = '1') AS length_class, (SELECT AVG(rating) AS total FROM oc_review r1 WHERE r1.product_id = p.product_id AND r1.status = '1' GROUP BY r1.product_id) AS rating, (SELECT COUNT(*) AS total FROM oc_review r2 WHERE r2.product_id = p.product_id AND r2.status = '1' GROUP BY r2.product_id) AS reviews, p.sort_order FROM oc_product p LEFT JOIN oc_product_description pd ON (p.product_id = pd.product_id) LEFT JOIN oc_product_to_store p2s ON (p.product_id = p2s.product_id) LEFT JOIN oc_manufacturer m ON (p.manufacturer_id = m.manufacturer_id) WHERE p.product_id = '18862' AND pd.language_id = '1' AND p.status = '1' AND p.date_available <= NOW() AND p2s.store_id = '0'
  18. Подскажите пожалуйста в модуле есть возможность генерации сайт мапа Каким скриптом его можно генерировать по крону?
  19. Добрый день, эксперементировал с модулем вы смотрели, когда он стоит в товаре, скорость открытия страницы замедляется на 0.3-0.5 сек, без него быстрее, несколько раз пробовал, это только у меня так?
  20. https://greenagri.ru/professionalnye-semena-1/professionalnye-semena-cvetov/gloksiniya/gloksiniya-impress-red-spotid-takii В самой карточке текст нормально написан, а при выводе в похожих - выводит все как то слитно
  21. uccess: function(data) { html = '<div id="modal-agree" class="modal">'; html += ' <div class="modal-dialog">'; html += ' <div class="modal-content">'; html += ' <div class="modal-header">'; html += ' <button type="button" class="close" data-dismiss="modal" aria-hidden="true">&times;</button>'; html += ' <h4 class="modal-title">' + $(element).text() + '</h4>'; html += ' </div>'; html += ' var text = $(data).find('.article_description').length ? $(data).find('.article_description').html() : data; html += ' <div class="modal-body">' + text + '</div>'; html += ' </div>'; html += '</div>'; Вот так сделал, перестала вообще ссылка открываться на всплывающее окно, очищал кеш несколько раз
×
×
  • Create New...

Important Information

On our site, cookies are used and personal data is processed to improve the user interface. To find out what and what personal data we are processing, please go to the link. If you click "I agree," it means that you understand and accept all the conditions specified in this Privacy Notice.