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

Leaderboard

Popular Content

Showing content with the highest reputation on 11/26/2024 in all areas

  1. Доброго дня! Треба так $data['lang_data'] = array( 'lang_id' => 2, 'fields' => array( 'name' => 'name_ru', 'description' => 'description_ru' ) ); І в полі нижче (Кастомний код при обході товара) додати $product['name_ru'] = (string)$row->name; $product['description_ru'] = (string)$row->description;
    1 point
  2. Боты, версия mysql, большие таблицы, отсутствие индексов, кривые запросы, кривые модули, вялый сервер, обращение на внешние API и ещё порядка 200 факторов, которые могут влиять на скорость работы. Это не мелкие хаки. А обычно комплекс работ по настройке магазина, сервера и устранению проблем. А ещё бывает совсем плохо, когда кешер на кешер и на сео модуль и 48миллионов тупых страниц. Которые делает прегенератор одной тупой поделки. Всё никак не снесусь рассказать эту историю.
    1 point
  3. silvero.com.ua - Срібні Ікони, Фоторамки, Подарункові набори - напряму від виробника працюємо по Опт/Дроп/Роздріб
    1 point
  4. Доброго дня. Виявлено проблему зі швидкістю роботи вашого модуля. Причина, немає індексів для полів таблиць. Таблиця: oc_hpmrr_links Колонка Тип id int(11) Автоматичне збільшення parent_id int(10) unsigned product_id int(10) unsigned sort int(10) unsigned NULL [1] grsort int(10) unsigned NULL [1] image varchar(255) NULL Індекси PRIMARY id UNIQUE product_id, parent_id Приклад SQL запиту який виконується SELECT p.product_id, hl.sort, text as val FROM oc_hpmrr_links hl LEFT JOIN oc_product p ON hl.product_id = p.product_id LEFT JOIN oc_product_attribute pa ON p.product_id = pa.product_id WHERE parent_id = '640393' AND attribute_id = '159' AND language_id = '4' AND status = 1 У вашій таблиці є унікальний індекс по полях (product_id, parent_id). Ваш SQL запит фільтрує за parent_id, що є другою частиною цього індексу. Оскільки parent_id не є першою колонкою в індексі, MySQL не зможе використовувати цей індекс ефективно для вашого запиту. Рекомендації для покращення. Створіть окремий індекс для parent_id: CREATE INDEX idx_parent_id ON oc_hpmrr_links(parent_id); Так само, проблеми виявлені з іншими полями і таблицями, рекомендації: CREATE INDEX idx_sort ON oc_hpmrr_links(sort); CREATE INDEX idx_grsort ON oc_hpmrr_links(grsort); CREATE INDEX idx_serie_id ON oc_hpmrr_product_index(serie_id); CREATE INDEX idx_status ON oc_hpmrr_type(status); Рекомендації для покращення виконання SQL запитів для полів із числовим типом. На прикладі таблиці oc_hpmrr_links. Тип даних: parent_id має тип int(10) unsigned, що означає беззнаковий цілочисловий тип. Значення в запиті використовується '640393' в лапках, що робить його рядковим значенням. Проблема: коли ви використовуєте рядкове значення ('640393') для порівняння з цілочисловим полем (parent_id), MySQL змушений виконувати неявне перетворення типів. Це може призвести до зниження продуктивності, тому що MySQL повинен конвертувати кожне значення parent_id в рядок для порівняння або конвертувати '640393' в число для кожного рядка. Насправді це глобальна проблема всього коду OpenCart та сторонніх модулів, коли для числових полів беруть у лапки значення, можливо проблема не така гостра, але все ж, якщо робити, то з розумом! Ці поради виявляться корисними для всіх розробників модулів OpenCart, допомагаючи створювати ефективні рішення для користувачів і тішити їх вашою якістю наданого рішення. Гарного дня!
    1 point
×
×
  • 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.