Если выбран путь создания сайта на CMS, то определиться с инструментом легко. CMS должна быть просто популярной. Для неё можно будет найти максимальное количество готовых решений. Будет легко найти специалиста популярного направления. На вопросы при разработке можно будет легко найти ответы. Самые популярные CMS написаны на языке PHP, который также является одним из самых популярных языков в веб-программировании. Уже много лет лидером является CMS WordPress. Скорее всего на нём и можно будет остановиться. WordPress обладает всеми присущими CMS качествами, имеет самую большую базу модулей, шаблонов и плагинов. Следующим по популярности можно выделить 1С-Битрикс, хотя его использование не всегда может быть логично. Но что, если вы решили разрабатывать с нуля? Какими качествами должен обладать язык программирования для сайта-агрегатора? Мы не будем рассматривать разработку на чистом языке без фреймворка. Фреймворк является каркасом сайта и уже содержит функции, которые в любом случае пришлось бы писать программисту. Поэтому выбор языка сводится к выбору фреймворка. Как и в случае с CMS, важнейшим качеством будет популярность, как языка, так и самого фреймфорка. Для сайта агрегатора также будет важна скорость разработки. В нашем случае лучше подойдет легковесный и гибкий фреймворк. Последним, но не менее важным, будет наличие специалистов по выбранной платформе. Для языка PHP лучшим выбором будут фреймворки Laravel, Yii. Для Python — Django, Flask. Ruby on Rails для Ruby и .NET тоже можно рассматривать как вариант, если есть разработчики под них.
Основная проблема, которую я с ходу вижу и в которую всё упрется, - это работа с атрибутами товаров. По ним надо осуществлять быстрый фасетнтый поиск, по ним надо сравнивать товары, фильтровать и пр. Легко и быстро можно работать с фиксированными наборами атрибутов. Но если количество типов товаров разнообразно и непредсказуемо, то придется что-то мутить с динамическими атрибутами - а лобовые решения сильно тормозные. Готовая CMS вряд ли подойдет: несколько тыщ товаров потянет, ну десятки тыщ... А если количество товаров будет измеряться миллионами? Так что придется на самописе изобретать нетривиальные решения. Всё остальное - мелочи.
Т.е. да, можно на какой-нибудь цмске или фреймворке быстро стартовать, написав типовое решение, и... на первых порах это будет работать... Но если проект выстрелит, придется всё переписывать с нуля.
С товарами сложнее, их действительно может быть запредельное количество.
Насчет количества товаров и атрибутов верно, если их будет миллион, то CMS скорее всего не подойдет. Насчет фреймворка - стартовать на нём нормально, опять таки если грамотно подойти к вопросу, проработать модель данных, выделить релевантные атрибуты товаров по которым будет происходить фильтрация и сортировка.
Для ускорения выдачи контента мы применяем кэширование по популярным группам атрибутов, используем комбинированные индексы в таблицах, подготовленные списки.
Успешный в данный момент, который развиваем 32top.ru Собрали 100 тысяч отзывов о стоматологиях. В техническом плане делали туристический vipgeo.ru в базе было несколько миллионов туров с которыми работали. Еще делали сайт посуточных квартир, но продали, сейчас могли бы занять место букинга))
Спасибо. Тоже развиваем агрегатор. Очень актуально. Подписался.
Приведите самый успешный ваш проект за 12 лет😀