arutyunov
@arutyunov
Mooza.ru — Делаем сайты

Генератор наборов по нескольким параметрам. Какие инструменты использовать?

Задача
Сгенерировать набор из 5-10 позиций по нескольким параметрам (a, b и c).
Сам сайт написан на PHP (Yii2), все позиции лежат в БД (MySQL). Генератор — это некий сервис, который расположен на сайте.

Например, пользователь указывает допустимые значения для параметров:
a: 150-200
b: 50-70
c: 200-240

И даны позиции, у которых указаны эти параметры. Например, товар1 — a: 10, b: 3, c: 35.

Надо подобрать 5-10 позиций (в зависимости от того, сколько укажет пользователь), чтобы итоговая сумма по параметрам укладывалась в заданные пределы.

Решение в лоб
В принципе, обычными циклами с проверками это можно сделать. Однако, это может весьма нагружать сервер, а также медленно работать, если каждый раз дергать базу для получения нового товара. А если выгружать все позиции для перебора их в PHP, то скрипт будет отжирать много памяти.
Позиций планируется на данный момент около 1 тыс, в дальнейшем — больше. Также позиции товаров будут собираться в наборы, которые также могут выдаваться в результате работы генератора.

Суть вопроса
Интересует, какие технологии можно задействовать, чтобы для пользователя генератор отрабатывал за 3-5 секунд, выдавая необходимые комбинации.
Возможно, это некая типичная задача, у которой есть несколько типовых решений — что стоит гуглить в таком случае?

И еще...
PS. В генераторе помимо указанных будет еще несколько условий.
  • Вопрос задан
  • 218 просмотров
Пригласить эксперта
Ответы на вопрос 1
dimonchik2013
@dimonchik2013
non progredi est regredi
sphinxsearch
facet

это по-взрослому

на коленке вроде на Постгрес тоже можно залабать
Ответ написан
Комментировать
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы