Вопрос по обновлению количества товаров.
CommerceMl отрабатывает очень медленно. Обновления цен и остатков на 1 продавца 2500 товаров идет около 10 минут.
Можно ли просто напрямую в базу данных записать количество по позициям в таблицу cscart_products, в поле amount по product_id?
Или есть подводные камни в данном варианте?
На базе данных mysql 8 скорость будет примерно в 10 раз выше для многих запросов, стоит протестировать, плюс hdd необходимо поставить скоростной для надёжности PHP поствьте восьмой.
В принципе, можно, но сначала надо убедиться, что у вас не задействованы таблицы ult_product_…, как минимум для цен. Но можно воспользоваться и стандартной функцией изменения количества товара.
чаще всего это и самый медленный участок, я не так давно в свой контроллер вместо прямой записи в базу поставил функцию изменения количества товара, соответственно, с отправкой уведомлений, и скорость обработки 2 тысяч товаров выросла с 20 секунд до 3 минут.
Ну он может замедлять только если реальные подписки, а так это всего лишь 1 запрос в базу на наличие подписок, только конечно если у вас там на хуки не повесился кто нибудь.
Если у вас Вариации и настройка меня основную вариацию в случаи ее отсутствия, то напрямую в базу если будете делать надо будет потом после перестройку делать вариаций.
А какая стандартная функция для изменения количества товара?
Просто у меня есть нюанс )
product_code у многих товаров совпадают (для нас это артикул в 1с). Получаются много товаров разных продавцов с одним и тем же product_code.
Поэтому обновления по product_code я сделать не могу и именно по этому не подходит стандартный импорт и другие сторонние модули.
Настройки модуля вариации посмотрите, если у вас там стоит смена главной вариации при ее отсутствии, то прямая запись в таблицу по кол-ву вам не подходит.
Одна из фич - это замена стандартного обмена с 1с в части остатков и цен, не вы первый жалуетесь на такое. Для одного из клиентов мы делали адаптацию модуля под 1с обмен, файл переваривается спокойно и гораздо быстрее, чем CommercML
Я смотрел этот модуль. И связывался с техподдержкой RetailFactory.
Как я уже писал выше “product_code у многих товаров совпадают (для нас это артикул в 1с). Получаются много товаров разных продавцов с одним и тем же product_code.
Поэтому обновления по product_code я сделать не могу и именно по этому не подходит стандартный импорт и другие сторонние модули.”