Я управляю несколькими магазинами Magento CE и ускоряю их кэшированием, однако корзина и оформление заказа все еще остаются медленными. У кого-нибудь есть опыт или советы по ускорению этих страниц?
Возможно, за счет оптимизации базы данных?
Некоторые запросы были выполнены при сохранении заказа из оформления заказа, которые отображаются в журнале медленных запросов на сервере, и база данных кажется узким местом.
configuration
performance
Сандер Мангель
источник
источник
Ответы:
Исходя из личного опыта, отключите модуль Mage_Rss, который заставляет «очищать кеш» 4 раза в процессе извлечения - очень дорого, если вы используете кеш файловой системы, вероятно, все еще дорого, если вы используете базу данных или memcached.
Только для CE Отключить Mage_Downloadable по тем же причинам, если вы не используете загружаемый продукт, это ускорит оформление заказа и действия корзины, если в корзине несколько товаров, поскольку есть такие наблюдатели,
checkout_type_onepage_save_order_after
которые умножают время ответа на количество элементов в корзинеПодключите xhprof / xhgui и выполните профилирование.
источник
Module "Enterprise_PricePermissions" requires module "Mage_Downloadable
Оба эти изменения окажут МАССИВНОЕ влияние на производительность, поскольку это предотвратило очистку кэшей Magento и повторную индексацию при каждом выполнении заказа.
Тем не менее, это может привести к тому, что в результате контент может устареть - уровень запасов и т. Д.
источник
Если вы хотите решить это экспериментальным путем, есть расширение от первого хакатона magento в Мюнхене, немецкий:
https://github.com/magento-hackathon/MongoDB-OrderTransactions
Идея заключалась в том, что они помещают заказы в очередь в mongo db, если mysql-сервер свободен для их обратной записи. Но я не знаю, насколько этот проект готов. Афайк работает над всем письмом, но не надписью.
источник
Я не знаю вашу версию Magento CE, с которой вы боретесь. Но у меня были серьезные проблемы с производительностью моего CE 1.6.
Причина: неверные и отсутствующие индексы. Они были исправлены в CE 1.6.2.
Вы можете проверить, помогает ли это вам.
Я сократил время оформления заказа на 38 строк с 73 предметами в общей сложности с 123 до 4 секунд !!!!
Вот оно:
источник
Лучший способ ускорить работу с большими базами данных - это иметь базу данных на своем собственном сервере, оптимизированном для использования базы данных. С точки зрения кода можно немного улучшить что-либо в области оформления заказа (хотя некоторые типы продуктов, такие как Configurable, действительно могут затормозить процесс цитирования), поскольку очень мало можно безопасно кэшировать.
источник
Может быть, посмотрите на разделение чтения и записи в вашей БД. Вам понадобится почти немедленная настройка репликации, хотя это всегда беспокоило меня, хотя у других может быть больше информации о том, как лучше настроить.
источник