синхронизировать товары с поставщиком через RESTful API

Ошибки при использовании модулей, установке и использовании опенкарта
Fixxxer
Сообщения: 2
Зарегистрирован: 18.06.2025

синхронизировать товары с поставщиком через RESTful API

Непрочитанное сообщение Fixxxer »

Всех приветствую. Делаем модуль c помощью ChatGPT, позволяющий синхронизировать товары с поставщиком через RESTful API. Запросы GET, POST, ответы JSON. Добились синхронизации категорий со вложенностью и производителей, но после этого падает фронт (сам сайт) с сообщением "PHP Fatal error:  Allowed memory size of 536870912 bytes exhausted (tried to allocate 266240 bytes) in /var/www/vhosts/---/storage/modification/system/library/seopro.php on line 433".  При отключенном Seo Pro все работает.     

 Что можно придумать?

Используем  ocStore   Liveopencart 3.0.3.9, php 8.1, шаблон Простор 1.3.1
Аватара пользователя
nikifalex
Разработчик дополнений
Сообщения: 367
Зарегистрирован: 17.03.2022
Откуда: Россия
Поблагодарил: 8 раз
Спасибо: 45 раз
Контактная информация:

Re: ocStore Liveopencart 3.0.3.9

Непрочитанное сообщение nikifalex »

Fixxxer писал(а): 18 июн 2025, 16:51 Всех приветствую. Делаем модуль c помощью ChatGPT, позволяющий синхронизировать товары с поставщиком через RESTful API. Запросы GET, POST, ответы JSON. Добились синхронизации категорий со вложенностью и производителей, но после этого падает фронт (сам сайт) с сообщением "PHP Fatal error:  Allowed memory size of 536870912 bytes exhausted (tried to allocate 266240 bytes) in /var/www/vhosts/---/storage/modification/system/library/seopro.php on line 433".  При отключенном Seo Pro все работает.     

 Что можно придумать?

Используем  ocStore   Liveopencart 3.0.3.9, php 8.1, шаблон Простор 1.3.1

отказаться от помощи chatGPT и нанять специалиста.
усовершенствую сайты, чиню всякое.
Аватара пользователя
DEVAGENCY
Разработчик дополнений
Сообщения: 65
Зарегистрирован: 03.04.2022
Откуда: Moscow
Мои дополнения: devagency
Поблагодарил: 15 раз
Спасибо: 12 раз
Контактная информация:

Re: ocStore Liveopencart 3.0.3.9

Непрочитанное сообщение DEVAGENCY »

Fixxxer писал(а): 18 июн 2025, 16:51 Allowed memory size

Погуглить по настройкам веб сервера, погуглить про очереди и/или разбивать обработку на кусочки, у вас видимо много категорий и при обработке их веб сервером он упирается в лимиты указанные в настройках и благополучно падает. А так да, согласен с предыдущим товарищем.
Сказать "Спасибо" - деньги пойдут на развитие форума Liveopencart!
Телеграм — @devagency
Fixxxer
Сообщения: 2
Зарегистрирован: 18.06.2025

Re: синхронизировать товары с поставщиком через RESTful API

Непрочитанное сообщение Fixxxer »

DEVAGENCY писал(а): 18 июн 2025, 20:06
Fixxxer писал(а): 18 июн 2025, 16:51 Allowed memory size

Погуглить по настройкам веб сервера, погуглить про очереди и/или разбивать обработку на кусочки, у вас видимо много категорий и при обработке их веб сервером он упирается в лимиты указанные в настройках и благополучно падает. А так да, согласен с предыдущим товарищем.

С выключенным SEO PRO ничего не падает. Могли бы поподробнее расписать свой совет, если не затруднит?
Аватара пользователя
Tom
Разработчик дополнений
Сообщения: 200
Зарегистрирован: 10.03.2022
Откуда: Казахстан - Алматы
Поблагодарил: 10 раз
Спасибо: 82 раз

Re: синхронизировать товары с поставщиком через RESTful API

Непрочитанное сообщение Tom »

Проблема ваша связана с сео урлами. В моей практике было таких пару раз. Сами эти урлы имеют несколько признаков , таких как принадлежность к магазину (store_id) , языку (language_id) итд. Имея в магазине примерно 20-30 тыс товаров, тем или иным способом при разных ошибках было сгенерировано более миллиона сеоурлов, которые в свою очередь сам опенкарт пытается закешировать. Обьемы большие, мощности сервера низкие. Ну или даже возникает некая бесконечная операция. В итоге то что у вас сейчас.
Откройте таблицу oc_seo_url и проверьте эту догадку.
Если там действительно есть проблема, то тот же чат жпт легко вам составит запросы на поиск дублей, урлов без указания айди магазина и/или языка.
Можете полностью очистить эту таблицу и создать по новой урлы любым генератором, можете с помощью gpt  поудалять дубли или те значения где не указан айди языка и магазина.
Ответить