Модуль Laravel для обновления цен, акций и отзывов на партнерском сайте

Я разрабатываю партнерский сайт для продуктов, похожих на www.dtashion.com но я сталкиваюсь с некоторыми проблемами в обновлении цены, запасов и обзоров для отдельного продукта в режиме реального времени. Я использую Laravel и MySQL в основном для разработки.

Мой подход:

  1. В настоящее время я получаю информацию о продукте с разных сайтов для разных типов продуктов. Каждый веб-сайт поддерживает различные способы предоставления сведений о продукте, например, в формате XML, формате RESTful API или простого сканирования данных своего веб-сайта.
  2. Я храню каждый продукт в одной таблице с флагом, представляющим соответствующий веб-сайт, например vendor_type = ‘FLIPKART’ или ‘AMAZON’ или ‘SNAPDEAL’ и так далее.

Мои вопросы:

  1. Мой подход правильный?
  2. Некоторые веб-сайты предоставляют данные в формате XML или в стиле RESTful, а для некоторых веб-сайтов мне приходится сканировать информацию о продукте. Теперь проблема в том, что сначала я могу узнать цену продукта, информацию о наличии товара и отзывы на его странице продукта или теге продукта, но потом, как я могу обновлять эти данные ежедневно?
  3. Каков наилучший подход с точки зрения скорости, задержки, оптимизации базы данных и т. Д.?

0

Решение

Что касается вашего 1-го и 3-го вопроса: вы не упомянули, как именно вы делаете свою работу, вы должны упомянуть ее, чтобы судить о ней, но, поскольку она работает, то это хорошая работа, которую вы всегда можете улучшить.

Что касается второго вопроса, вы можете достичь его с Планирование задач
в Ларавеле. Если бы я был тобой, я бы пошел на вариант очереди.

Раньше вы могли создавать записи Cron для каждой задачи, которую вам нужно было запланировать на вашем сервере. Однако, это может быстро стать проблемой, потому что ваше расписание задач больше не находится под контролем исходного кода, и вы должны подключиться к серверу по SSH, чтобы добавить дополнительные записи Cron.
Планировщик команд Laravel позволяет вам свободно и выразительно определять расписание команд в самом Laravel. При использовании планировщика на вашем сервере требуется только одна запись Cron.

Я надеюсь, что ответ будет полезен для вас, оставьте комментарий, если у вас остались вопросы.

0

Другие решения

Других решений пока нет …