Magento был эталоном для создания веб-сайта электронной коммерции. Но все меняется

Те, кто меня знает, прекрасно знают, что я не очень люблю Magento. Я работаю с Magento1 последние 6 лет и работал над веб-сайтами Magento2 с момента его публикации.

На мой взгляд, есть несколько технических причин, по которым Magento2 не работает, и я написал несколько статей на эту тему.



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

Причины

1 — Родные баги

В Magento 2 много ошибок, как в версии CE, так и в версии EE. Это легко увидеть на их GitHub.



magento/magento2
Все материалы, которые вы отправляете в Magento Inc. («Magento
) через GitHub, регулируются следующими положениями и условиями…github.com»



Многие из этих проблем на самом деле связаны с тем, что люди обращаются за поддержкой, но есть также много реальных проблем, которые повлияют на вашу электронную коммерцию. Например, эта ошибка # 3625, из-за которой цена в мини-корзине может отображаться неправильно. Ошибка была зарегистрирована в 2016 году и подтверждена в Magento 2.0. Эта ошибка все еще присутствует в magento 2.4.

Существуют также ошибки в способах оплаты, которые могут списывать неправильные суммы (см. #7977), а также ошибки расчетов (см. #8964), которые могут привести к тому, что клиенты не будут платить правильную цену. Это лишь несколько примеров среди многих.

Наконец, есть эти ошибки, которые игнорируются. Например, опция Максимальная скидка в правилах корзины не работает, начиная с Magento 2.1. Проблема (см. #9214) существует, но закрыта, так как исправлять ее не будут.

Что это значит для вас, владельца магазина?

  • Любая конфигурация или вклад должны быть предварительно протестированы на тестовом сервере. Я бы порекомендовал протестировать изменения конфигурации на тестовом сервере для большинства решений, но с Magento я также рекомендую тестировать вклады. Это занимает очень много времени.
  • Вам нужно будет найти обходные пути или установить модули, которые исправляют собственные ошибки, или ваши разработчики попытаются исправить эти собственные проблемы. Даже обходные пути потребуют времени.

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

2 — Производительность

Magento рекламирует Magento 2 как более быструю, чем Magento1. Во-первых, это неправильно. Magento 2 может быть в некоторых случаях быстрее, чем Magento 1. Принцип работы Magento заключается в том, что после отображения страницы ее содержимое кэшируется. Так что в следующий раз страница будет отображаться быстрее. Magento2 поддерживает Varnish, которого не было в Magento 1; это отлично подходит для производительности. Вот почему Magento рекламирует Magento2 как более быструю.

Проблема в том, что произойдет, если страница еще не в кеше? Страница очень медленная, на самом деле медленнее, чем Magento1. Также отметим, что некоторые страницы не могут быть в кеше, их содержимое меняется для каждого пользователя; эти страницы всегда будут медленными.

Другой аспект производительности находится на стороне клиента. Там также Magento очень медленный. На каждой странице загружено много Javascript и Css; HTML также очень тяжелый.

Можете ли вы улучшить ситуацию; да можно, но это будет дорого стоить.

  • Сначала Вам нужно посадить Magento на диету. Это означает удаление всех модулей, которые вы не используете. Это сложно, потому что большинство модулей необходимы, а поиск тех, которые можно удалить, не нарушая работу Magento, требует много времени. Вам также нужно будет потратить время на его проверку после каждого обновления.
  • Вам нужно создать тему из ничего. Необходимо удалить (путем переопределения) все собственные макеты и содержимое, чтобы начать с нуля. Это также означает, что вы потеряете часть гибкости, предлагаемой Magento, и установка каждого нового модуля будет более сложной.

Уже несколько лет Magento рекомендует приложения PWA. Это устраняет нагрузку на Magento на стороне клиента, но:

  • PWA все еще молод, и поэтому установка и обслуживание обходятся дорого.
  • PWA не исправляет медленный отклик Magento. API Magenot, который позволяет реализовать PWA, также очень медленный.

Все это означает, что вы не можете рассчитывать на идеальное SEO, так как производительность играет важную роль; это также означает, что вы потратите много времени на вопросы производительности и/или на создание приложения PWA.

3 — Хостинг

Magento раньше полагался на Mysql для поиска. Mysql не является поисковой системой. Он не может правильно исправлять опечатки и не может эффективно исправлять фасеты. Поэтому Magento добавила поддержку Elasticsearch. Это здорово, но они сделали Elasticsearch обязательным.

Magento также использует очереди для выполнения тяжелых операций. Например, импорт большого файла будет выполняться в фоновом режиме, чтобы администратор, выполнивший его, мог продолжить работу. Сначала это обрабатывалось с помощью Mysql. Mysql не предназначен для обработки очередей; это не эффективно. Таким образом, Magento добавила поддержку Rabbitmq, и это здорово, но они сделали RabbitMq обязательным.

Наличие поддержки Elasticsearch и RabbitMq отлично подходит, если у вас есть тысячи продуктов и если вы постоянно выполняете импорт и другие тяжелые операции. Но большинству магазинов не нужен RabbitMq; некоторым даже не нужен Elasticsearch.

Добавляя новые услуги, которые являются обязательными, Magento увеличивает стоимость хостинга. Magento также очень тяжелый, требует мощных серверов, что также увеличивает стоимость.

4 — Панель администратора / Бэк-офис

Из бэк-офиса Magento вы можете редактировать структуру вашего продукта, вы можете редактировать продукты, управлять потоком заказов, изменять конфигурации. Бэк-офис делает все, что от него ожидают.

Но это также очень медленно; если у вас есть несколько категорий, вам может потребоваться несколько минут, чтобы увидеть страницу. Если у вас есть сложные продукты, страница продукта может зависнуть при открытии вашего компьютера, а иногда даже привести к сбою вашего браузера.

Если у вас всего несколько продуктов и несколько заказов, это нормально; но если вы собираетесь управлять тысячами продуктов непосредственно в Magento, вы потеряете много времени.

5 — Ложная поддержка Enterprise Edition

Если вы думаете об использовании Magento Enterprise Edition, вы можете подумать, что вас не будут беспокоить некоторые проблемы Magento. Это может быть правдой, если вы используете Magento с нулевыми настройками. Но если вы добавите одно расширение, вам нужно будет доказать, что родной Magento имеет ту же проблему. Так что снова нужно будет потратить время.

Даже после того, как вы докажете им, что ошибка присутствует в нативном Magento, вам придется долго ждать исправления; если вы когда-нибудь получите один. И если вы в конечном итоге получите его, есть вероятность, что при следующем обновлении ваше исправление перестанет работать, а ошибка вернется. Как только это произойдет, вам нужно будет начать все сначала.

Итак, давайте проясним, если вы думаете о получении Enterprise Edition для их поддержки; ну по моему нет. Получите Enterprise Edition для его функций.

Вывод

Основная проблема заключается в том, что Magento потерял свою индивидуальность; раньше он был отличным решением для электронной коммерции для малого и среднего бизнеса.

Сегодня малый бизнес не может использовать Magento. 5 лет назад иметь посредственный веб-сайт было приемлемо; сегодня нет. Таким образом, малый бизнес не может позволить себе использовать Magento без множества компромиссов, что означает наличие посредственного веб-сайта. Это связано с тем, что у Magento много проблем из коробки.

Средние предприятия могут использовать Magento, но за большие деньги; и даже им придется идти на компромиссы.

Так кому же предназначен Magento? Крупный бизнес?. Нет, они не могут использовать Magento, потому что Magento плохо масштабируется. Если вы поместите 50 магазинов (языков) и 1 миллион товаров в Magento, это не выдержит. Правила ценообразования в корзине не сработают, бэк-офис не будет работать должным образом, импорт и экспорт не будут работать, и даже если это сработает, производительность всегда будет проблемой.

Итак, кто может использовать Magento? Ну, те, что находятся между крупным бизнесом и средним. Те, кто продает в Интернете достаточно, чтобы оправдать стоимость Magento, и которым требуется большинство функций Magento. Те, кто может идти на компромиссы, но не имеет бюджета на что-то, что стоило бы дороже, но работало бы лучше.

Magento2 пытался изменить сегменты; стремиться к более богатому рынку. Они сделали это, добавив новые функции, поддерживая новые стеки; но в нижней части они не предназначены для обработки. Эта неудачная попытка ухудшила Magento; это сделало Magento дорогим и еще более сложным, чем раньше.

Поскольку альтернативные решения растут и становятся проще в использовании как для владельцев магазинов, так и для разработчиков, с каждым днем ​​все меньше аргументов в пользу выбора Magento.

Спасибо за чтение