MS2, mSearch2 и 25 000 товаров
Всем привет!
Есть задача разработать книжный каталог со стартовой численностью 25 000+ наименований. Вопрос: потянет ли MS2 такое количество товаров? Не будет ли тормозить? Сможет ли mSearch2 быстро фильтровать категории, в которых содержится по несколько тысяч наименований?
И второй вопрос. Есть ли где-то успешные реализации электронных товаров на ms2 (программы, документы и пр). И если есть — поделитесь, пожалуйста, ссылками.
Стоит выбор платформы для реализации, и появилась дилемма: сделать все на родном и любимом MODX, либо искать другую платформу.
Всем спасибо за ответы.
Есть задача разработать книжный каталог со стартовой численностью 25 000+ наименований. Вопрос: потянет ли MS2 такое количество товаров? Не будет ли тормозить? Сможет ли mSearch2 быстро фильтровать категории, в которых содержится по несколько тысяч наименований?
И второй вопрос. Есть ли где-то успешные реализации электронных товаров на ms2 (программы, документы и пр). И если есть — поделитесь, пожалуйста, ссылками.
Стоит выбор платформы для реализации, и появилась дилемма: сделать все на родном и любимом MODX, либо искать другую платформу.
Всем спасибо за ответы.
Комментарии: 24
Авторизуйтесь или зарегистрируйтесь, чтобы оставлять комментарии.
Fi1osofХотел было показать еще www.dg-yug.ru (там 75 000 статей, и как раз там я делал семантический поиск, котторый войдет в ближайший скорый релиз ShopModxBox), да только теперь он тормозить жутко стал. Судя по всему я могу сейчас кинуть тень сомнения, но переделали его как раз на office, mfilter, hybridAuth и т.п. До того, как сайт испортили, поиск выполнялся 1-2 сек по всем статьям (там порядка 10 500 000 индекс-записей). Чуть позже я разверну копию сайта, чтобы подтвердить свои слова. Сейчас поиск выполняется более 10 секунд. К слову о поиске: искать, например, «Пропала собака в Сочи». Сейчас он находит 1000+ страниц результатов. В первой же статье есть Сочи, но нет и близко собака и пропала (пропажа и т.п.).
Вообще про историю с этим сайтом я напишу чуть позже. Это яркий пример того, как бывает, когда клиент хочет съэкономить, думая, что можно сменить подрядчика на подешевле, когда все уже готово. Забывают, что готовое сломать не долго. А ведь раньше сайт открывался менее чем за 0.1 сек. Он и сейчас примерно за столько же открывается, да только это из кеша. На горячую 3+ сек открывается. Это при том, что еще и комментарии убрали (а у нас они были не кешируемыми).
В общем, дело не только в выбранном инструменте, но и кто работает с ним.
Fi1osofВо-первых, кеш-провайдер переводится на memCached или типа того. Как раз для быстрого сброса кеша. По опыту скажу, что даже на сотне тысяч документов кеш будет сбрасываться мгновенно.
Во-вторых, дело не только в объеме и сбросе кеша, а в самой генерации кеша. Ведь MODX проходится по всем документам, чтобы набить их в кеш. Хотите больше информации по кешированию — крайне советую к прочтению modxclub.ru/blog/139.html
Для борьбы с этим мы используем описанный в статье cacheOptimizer. Правда после обновления самого MODX-а его так же придется переустанавливать, но это не долго. Может руки доберутся и я все-таки отправлю пуллреквест в ядро MODX, хотя сомневаюсь, что его примут. Но без этого крупные проекты на MODX просто не запустить.
В минишопе тоже как бы товары хранятся отдельно.
Fi1osofА вот про хранение товаров в отдельной таблице шопкипера никогда не слышал. Только что в отдельном контексте хранится. Но может что новое и появилось. Или там так же отдельно только параметры документов, и вы это тоже называете отдельным хранением товаров?
Fi1osofВашим решением тоже не приходилось пользоваться, верстальщику с ним тяжко.
А автору могу посоветовать только поставить разные компоненты и забить их данными (не руками конечно), тогда и будет ясно что справляется, а что нет.
Fi1osofВерстальщику с ним не сложно, если он там верстает, а не программирует. Потому что что сложного верстать код в Смарти, тем более имея исходные данные в массивах? О плюсах использования сторонних шаблонизаторов на замену нативному MODX-ому довольно много написано здесь.
А вот если вы пытаетесь программировать, а не просто компоновать готовые модули, то тут да, верстальщику это сложно. И об этом сразу говорилось, что ShopModxBox имеет довольно высокий порог вхождения. Но в топике ничего не говорилось про пороги вхождения, в топике спрашивалось про возможности создания магазина на 25 000 товаров на MODX. ShopModxBox это может легко, даже без установки cacheOptimizer.
Fi1osofFi1osofУ меня есть магаз на MS2+mSearch2+Office и еще там кое-чего разного понаставлено, все это крутится на дешевом виртуальном хостинге (у не самого быстрого Мастерхоста) и работает хорошо. Но и товаров там сотни три или чуть больше, так что это сложно считать показателем.
Fi1osofПоэтому, даже если вы перенесли на офигенный хостинг, то проведя нормальную работу с сайтом можно увидеть серьезную разницу в нагрузке на сервер, особенно если есть средства измерить ее.
А вот такие общие фразы «я делал, было много всего, у меня все летало как ветер...» без пруфов — как бы мало имеет ценности.
Время на запросы к БД 0.4206 s
Запросов к БД 473
Время работы PHP скриптов 3.3148 s
Время генерации страницы 3.7355 s
Фильтрация работает в пределах секунды. И shopkeeper тут вообще не причём, т.к. это всего лишь корзина и не более. Хранение товаров производится штатными средствами modx, а вывод с помощью сниппетов pdoTools. Никаких особых средств или чего-то нестандартного я не использовал, сам не ожидал, что так получится, думал будет медленнее. Правда под нагрузкой как будет работать пока знаю.
Fi1osof473 запроса — это очень много. 3.7 секунд — тоже много. Я ни в чем не обвиняю, просто говорю, что надо стараться не допускать таких показателей :)
Также могу порекомендовать Django, на проекте с 1500к товаров страницы генерируются за ~50мс
Fi1osofГенерятся, или из кеша отдаются?
P.S. 1к в день — посещалка ни о чем, если говорить о нагрузке. Вопрос сколько онлайн юзеров выдерживает? Мы на dg-yug.ru тестировали 2000 юзеров онлайн, сервер положить не смогли. Отчет: joxi.ru/Dr8Ke8OIYgKlA6
Но это было до того, как его
испортилиобновили. Сейчас скорее всего и сотню не выдержит.Подскажите спецификации сервера, на котором все это крутится (если не секрет).
Django — он же на питоне и для питона? Это пока не вариант, мне бы с MODX/PHP разобраться :)
Fi1osof