Pull to refresh

Comments 24

Существует куча движков хуже, здесь все выглядит достаточно логично (по вашему описанию), а всего один недокументированный баг - ха, да этот вы с Битрикс или старым Drupal не сталкивались, видимо! Там просто зоопарк из жаб с гадюками вперемешку, и чтобы что-то работало, надо писать самому и с нуля.

Немного удивили жалобы про "модуль для Метрики" и "модуль для крона". Зачем делать что-то с ними из админки? Метрика не закидывается один раз и навсегда в основной шаблон страницы/header? Cron-ом надо иметь возможность рулить из движка корзины?

Да, очевидно, это древний монстр, но для систем того времени, видимо, довольно неплох.

Соглашусь, что для того времени это не плохо и да, оно логично, но слишком запутано.
Придя в эту CMS после MODX, стало как то не по себе. Конечно, спустя два месяца работы, уже привыкаешь, но много времени уходит по распихиванию шаблонов и скриптов по нужным директориям.
По поводу крона, тут немного другое решение было использовано, а именно, создан отдельный скрипт, без привязки к модулю, который выполняется по средством крон напрямую (просто синхрон БД и стороннего сервиса). Однако, модуль с Крон в админку можно поставить готовый. Для нашей редакции стоить он будет 7к рублей (100$). Зачем нужно из админки рулить кроном - честно, не знаю) Думаю, что раз модуль подобный имеется, были такие запросы у других компаний. Я такое ставить точно не хочу.

С метрикой всё сложнее: отрисовка тормозила из-за Вебвизора от Яндекса. Исправил путем допила, а именно, сделал отложенную загрузку скрипта.

Но в целом, оптимизации очень много еще предстоит.

То есть система, в целом, не такая уж и плохая?)

Более современные системы чуть логичнее изначально, зато у них под капотом такая куча всяких потрохов, что если что -- просто так не разберёшься.

Например, сайт (ой, приложение) не компилируется, потому что версия node.js не та, и версия npm не та, и версия node-sass не та, ах, нет, всё то, только версия g++ не та!

Такой шаткий "Дом, который построил Джек", сотни мегабайт зависимостей и не знаешь, какая из них грохнется следующей. В старых системах (ну, кроме безумной Битрикс) хотя бы ошибки искать проще.

А если вам не хватает скорости MyISAM на всего-то 50.000 товаров, то скорее всего, у вас плохо настроено кеширование.

Относительно оптимизации работы движка с серверной стороны обращайтесь zahid.host/ru поможем подскажем, наработан большой опыт в этом не легком деле :) Есть кейс на 3 млн товаров все работает на MyISAM, хотя лично я приверженец миграции более-менее крупных проектов в InnoDB. Относительно качества ядра поспорю, да сложно, особенно когда не было нормальной базовой документации что кстати было исправлено относительно недавно, но это скорее дань гонитвы за универсальностью, а вот работа с шаблонами соглашусь, лично у меня вызывает печаль. В целом на вкус и цвет все фломастеры разные, но как инструмент заработка денег он хорош, а боль админов-программистов-девопсов бизнес мало волнует, это расходы которые сравнимы в принципе с множеством других аналогов, все зависит уже от нюансов, поставленных целей и задач.
Я скорее соглашусь мнением автора статьи. Работал на этом движке больше одного года. Писал десятки модулей.

Давайте начнем из плюсов:
1. Быстрый старт для бизнеса
2. Удобная админка
Думаю, на этом все и заканчивается

Для разработчиков:
1. Движок не рассчитан на большое количество товаров из коробки. Если хочешь больше — нужно заниматься оптимизацией. Представьте, у вас на сайте 100'000 товаров, а уже каждые страницы грузятся по 10-20 секунд. А когда одновременно 100(сто) пользователей — сайт просто упадет. Существуют гора фреймворков наподобие Yii2, Laravel, которые могут запросто загрузить в миллисекунды. А вам, чтобы достичь этого результата придется очень попотеть, месяцами
2. База очень медленна. Так как каждый запрос тянет с собой sql добавки всех установленных модулей, которыми вы не будете пользоваться.
3. Построение шаблонов сделано через ж*у
4. Встречаются много багов
5. Структура кода так разбросана, что

А для бизнеса:
1. Текучка кадров, а именно, разработчиков. А обучать непопулярный движок займет не менее месяца
2. Медленная разработка
3. Медленный сайт, который часто падает
Даже сколько денег не вложи — готовых и быстрых решений нет. Придется медленно оптимизировать либо переходить на другие нормальные фреймворки

Заключение
Одним словом, CsCart — это корова для дойки владельцев движка. А те, кто говорят что у них многомиллионное количество товаров и это работает нормально — они прошли через всю эту ж*у и хотят заработать на вас, чтобы как-то компенсировать эту боль

MyISAM - сам по себе, довольно медленный движок и он не рассчитан на 50 000 (!) товаров

Очень и очень спорное мнение. Для SELECT Myisam даже побыстрее InnoDB

Если это read only база, то такое действительно может быть.
Но в реальности, при наличии обновления чего-нибудь используемого в запросе, и хоть какой-то конкурентности myisam упирается в свои блокировки уровня таблиц и его простота выходит боком. Сейчас практически нет причин этот движок использовать.
Его использование в cs-cart по умолчанию просто дикость по нынешним временам.
В CS-Cart ко всему прочему ещё троян сидит, если кому интересно: habr.com/ru/sandbox/154454
Кстати, у кого есть инвайт для автора статьи, не жалейте.

Какая-то заказуха. Больше похоже,что они всего лишь на собственный север отправляют данные для конверсии в PDF.

А как это называется, когда Ваши ПД отправляются на левый сервак?
Меня пригласили работать в сеть интернет-магазинов...
И только я начал представлять как грамотно организовать сеть интернет-магазинов, как сразу:
Оба интернет-магазина....
Не сеть, а струна, получается. И то, лишь при условии, что они связаны друг с другом.
П.с.: в целом пост полезный получился. Спасибо!
Согласен, смысловая ошибка с моей стороны) На самом деле — это сеть. Просто два сайта с разной категорией товаров и у каждого свои магазины по городу (один — вейп, другой — интим).
Пришло время включиться в обсуждение непосредственно разработчикам CS-Cart :)

В CS-Cart у нас фокус на клиентов и фидбек от них. Мы смотрим, какие есть потребности у бизнеса, без понимания целей не делаем вообще ничего. Каждый бизнес специфичен, но мы в CMS реализуем самые распространенные сценарии; пилить побольше плюшечек и настроечек мы не хотим, мы делаем цельный массовый продукт. Интеграция продукта под конкретный бизнес преследует другие цели, поэтому и модули под конкретные сценарие платные. Для бизнеса цена «скрепки» не так важна, если скрепка — часть механизма с многотысячным месячным оборотом.

В статье упоминается плохая документация. Документацию мы пишем в первую очередь для клиентов, чтобы им было легко разобраться в продукте, а потом уже для разработчиков. Помимо текстовой документации у нас есть видео-уроки, а в прошлом годы мы начали проводить вебинары, чтобы помочь новым разработчикам освоить CS-Cart.

Структура CMS и модулей в ней выглядит запутанной на первый взгляд, но она осваивается один раз и потом используется. Видел и положительные отзывы, и критику, и там, и там рациональные зерна есть. It just works, в текущей мажорной версии продукта менять ее мы не планируем. Если что-то работает не так, как описано в документации, можно запостить баг-репорт: forum.cs-cart.ru/c/bug-tracker. Если ошибка есть, то мы ее починим, а если нет — поможем разобраться с проблемой.

Активным разработчикам мы даем доступ в репозиторий CS-Cart, там они в рамках pull request'ов могут добавлять хуки для разработки модулей, чинить специфичные ошибки, с которыми не сталкивались клиенты, предлагать изменения в архитектуре.

Как верно замечают другие комментаторы, CMS разрабатывается с 2005-го года. За это время были и мажорные изменения, и минорные — и структура платформы менялась, и фокус в разработке новой функциональности в сторону ООП смещался. Некоторый код живет еще с 2005-го года, просто потому что он работает. Отчасти из-за этого в платформе есть узкие места по производительности, мы о них в курсе, но взять и переписать все не всегда можем. За 16 лет под платформу написано много модулей, которые работают с определенной структурой данных, архитектурой и API CMS. Рефакторинг по производительности выльется в потерю обратной совместимости и создаст огромную нагрузку на разработчиков, а клиентов может оставить без рабочих магазинов на неопределенный срок. Customer is king, потому на такой риск мы не идем. Когда есть возможность повысить производительность и сохранить совместимость, мы это делаем, например, в декабре 2020-го года были улучшения по фильтрам и странице товара.

Вообще производительность — вопрос сложный; вижу, что в статье фигурирует «зоопарк модулей». Без профилирования и выяснения конкретных мест, где и какие запросы тормозят (и запросы ли), я бы говорить ничего не стал. При чем тут MyISAM и связывание данных в нем, я не совсем понял. 50,000 — отнюдь не аномальная номенклатура, CS-Cart справляется с ней, а клиенты, которые инвестируют в хостинг с настройкой под себя, живут и с большими каталогами — видел магазины с 250,000 и более товаров. Повторюсь — каждый случай проседания по производительности нужно смотреть в отдельном магазине с его окружением, модулями, данными в БД и так далее.

Так как же и производительность улучшить, и архитектуру поменять? У нас уже есть ряд клиентов и партнеров, которым важна производительность и простота интеграции CS-Cart с другими бизнес-системами, поэтому с этого года мы разрабатываем следующую мажорную версию CMS. Подход у нее принципиально другой: мы фокусируемся на производительности, масштабируемости и взаимодействии бэкенда и фронтенда через API. Чтобы не изобретать велосипедов, используем Laravel и ReactJS. Если кому интересно приложить руку к созданию CS-Cart V, мы ищем разработчиков с большим опытом разработки модульных систем и пониманием того, как жить с большими нагрузками: www.cs-cart.ru/php-architect-laravel-expert.html

Так получается, что вы сами говорите о том, что за 16 лет вы не хотите ничего менять, ну, потому что оно работает и так.

С одной стороны да, святая заповедь любого технаря, но при этом Cs-cart постоянно обновляет свой функционал, но зачем она это делает, если есть активные разработчики, которые делают модулю, наверняка, могут делать целые сборки модулей. Почему бы Cs-cart не сосредоточиться на самом ядре и структуре и позволить верным разработчикам самим пилить функционал, а покупатель уже сам решит, что ему из этого нужно.

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

Инвестировать в хостинг (даже знаю в какой)? Так cs-cart и так сама по себе тянет деньги буквально за все, если рядом нет разраба, готового в вашей структуре разобраться.

В общем, очень сомнительные плюсы. Единственное, что cs cart и правда повзволяет крайне быстро стартовать. Только денег занести надо.

mschekotov,
В CS-Cart у нас фокус на клиентов и фидбек от них. Мы смотрим, какие есть потребности у бизнеса, без понимания целей не делаем вообще ничего.

Давно я так не смеялся! Вы не слушаете клиентов, это подтверждают сотни постов на форуме. Вы делаете что-то вообще не понятно кому нужное и все не до конца. Мультисклада — по сути нет, мультивалютности нет, интеграции с CRM нет, 1C — тоже самое. Есть только громкое название, что оно есть, но оно работает не до конца.
Сделали одну итерацию, собрали фидбек, внесли изменения. В релизе выкатываем доработанную функциональность.

А скриншот на события 20-дневной давности ссылается.
Одну итерацию, вы серьезно??? За шесть лет, что я владею этим недопродуктом таких итераций просто десятки, не нужно тут очковтирательством заниматься и лгать, тут не официальный форум, где неугодные посты затирают!!!
А зачем вы владеете «недопродуктом» уже 6 лет? Есть полно альтернатив, та же Magento или Shopify. Автор статьи наемный рабочий, а вы, как я понимаю, владелец бизнеса и вольны выбирать тот инструмент, который подходит лично вам.

А по поводу функциональности, которую все никак не завезут, надо понимать, что продукт разрабатывается не только для России. Подозреваю, что международная версия имеет большой перевес по количеству проданных лицензий. Соответственно и учитываются интересы большинства. Например, вам крайне необходимы мультисклад и мультивалютность. Реализовать эту функциональность в рамках обособленных аддонах, без внесения правок в ядро, крайне проблематичная задача, да и дорогая по трудозатратам на поддержку. А мне эта функциональность не нужна, как и большинству владельцев CS-Cart. Так почему же большинство должно платить производительностью и сроками доработки нужных большинству фишек за фишки, нужные лично вам? Для таких случаев у CS-Cart есть множество партнеров, предоставляющих услуги клиентской разработки. Просто закажите разработку нужной вам функциональности.
6 лет назад я его выбрал, потому что он был нормальный, сейчас — это дно. Так, что пока идут продажи смысл мне покупать другую лицензию? И идут они из-за маркетинга, а не из-за движка! Я его просто больше не обновляю и не вижу изменений в лучшую сторону. Но, вы видимо работаете в команде разрабов и топите за супер движок и т.п. Мое мнение я высказал, на форуме всех кто высказывает подобное банят, а сообщения стирают. Тут хер у них получится так сделать))). Больше я не вижу смысла доказывать что-либо. Всего доброго!

Например: был у меня кейс, когда обращаясь к контроллеру через AJAX функцию, встроенную в класс CMS JS упорно не хотела работать с моим контроллером, хотя сделано всё было четко по документации.

А можно поподробнее? Или ссылочку на ветку форума? Пользуюсь CS-Cart уже 9 лет и еще не встречал таких проблем.

у меня сложилось впечатление, что CMS и её стандартные модули специально не доведены до нормального состояния

Здесь бы спросить, а какая CMS (хоть одна) доведена до нормального состояния по мнению всех её пользователей. Боюсь, даже сайт на статических файлах, и то — кому-то покажется "не доведенным до нормального состояния", мало ли...


Пишите свой движок! Лучше не станет (все равно, наверняка на все 100% идеально даже для себя не сделаете), но корить других причин не будет. Шутка юмора, конечно — понимаю, что обидно, да еще за деньги, да еще, когда разработчики CMS явно гребут "не туда", но… Разве что искать альтернативу, либо её же делать, форкнув самый удобный лично Вам движок.

Sign up to leave a comment.

Articles