Невозможно оформить заказ с большим количеством товаров (более 200) в корзине - Magento 1.4.2 - PullRequest
2 голосов
/ 01 марта 2011

Я создал сайт B2B, работающий на сообществе Magento 1.4.2. Иногда покупатели пытаются оформить заказ с большим количеством товаров в корзине - до 250! Мои проблемы двояки:

  1. Когда в корзине столько товаров, простая навигация по сайту становится крайне медленной для пользователя.
  2. При оформлении заказа OnePage, когда им удается отправить заказ, они получают всплывающее окно javascript, в котором просто указано «undefined», и остаются на странице оформления заказа на одной странице.

Есть ли у кого-нибудь подобный опыт в решении этого вопроса?

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

Ответы [ 2 ]

5 голосов
/ 01 марта 2011

Я столкнулся с похожими проблемами с версией Magento для предприятий. Вы можете попробовать отключить боковую панель корзины покупок, если вы этого еще не сделали, это должно помочь сайту ускорить просмотр. Мы изменили боковую панель, чтобы при наличии более 25 элементов она не пыталась загружать продукты, что очень помогло.

Что касается второй ошибки, если вы используете Firebug и Firefox при прохождении процесса заказа, вы должны получить больше информации об ошибке, чем "undefined", что поможет выяснить, что там происходит.

Вы также можете попробовать увеличить memory_limit для php.ini, в итоге мы установили нашу 256MB, что решило большинство ошибок памяти для нашего сайта.

0 голосов
/ 27 августа 2013

Я не знаю структуру БД в CE 1.4, но у меня были серьезные проблемы с производительностью в моем CE 1.6.
Причина: неверные и отсутствующие индексы. Они были зафиксированы в CE 1.6.2
Вы можете проверить, поможет ли это вам.
Я сократил время оформления заказа на 38 строк с 73 предметами в общей сложности с 123 до 4 секунд !!!!

Вот оно:

/*!40014 SET @OLD_FOREIGN_KEY_CHECKS=@@FOREIGN_KEY_CHECKS, FOREIGN_KEY_CHECKS=0 */;

/* Foreign Keys must be dropped in the target to ensure that requires changes can be done*/

ALTER TABLE `core_url_rewrite` 
DROP FOREIGN KEY `FK_CORE_URL_REWRITE_CTGR_ID_CAT_CTGR_ENTT_ENTT_ID`  , 
DROP FOREIGN KEY `FK_CORE_URL_REWRITE_STORE_ID_CORE_STORE_STORE_ID`  ;


/* Alter table in target */
ALTER TABLE `catalog_category_entity_varchar` 
DROP KEY `MAGMI_CCEV_OPTIMIZATION_IDX` ;


/* Alter table in target */
ALTER TABLE `catalog_product_bundle_stock_index` 
DROP KEY `PRIMARY`, ADD PRIMARY KEY(`entity_id`,`website_id`,`stock_id`,`option_id`) ;


/* Alter table in target */
ALTER TABLE `catalog_product_entity_media_gallery` 
DROP KEY `MAGMI_CPEM_OPTIMIZATION_IDX` ;


/* Alter table in target */
ALTER TABLE `core_url_rewrite` 
CHANGE `id_path` `id_path` varchar(255)  COLLATE utf8_general_ci NULL COMMENT 'Id Path' after `store_id` , 
CHANGE `request_path` `request_path` varchar(255)  COLLATE utf8_general_ci NULL COMMENT 'Request Path' after `id_path` , 
CHANGE `target_path` `target_path` varchar(255)  COLLATE utf8_general_ci NULL COMMENT 'Target Path' after `request_path` , 
CHANGE `is_system` `is_system` smallint(5) unsigned   NULL DEFAULT 1 COMMENT 'Defines is Rewrite System' after `target_path` , 
CHANGE `options` `options` varchar(255)  COLLATE utf8_general_ci NULL COMMENT 'Options' after `is_system` , 
CHANGE `description` `description` varchar(255)  COLLATE utf8_general_ci NULL COMMENT 'Deascription' after `options` , 
CHANGE `category_id` `category_id` int(10) unsigned   NULL COMMENT 'Category Id' after `description` , 
CHANGE `product_id` `product_id` int(10) unsigned   NULL COMMENT 'Product Id' after `category_id` , 
ADD KEY `FK_CORE_URL_REWRITE_PRODUCT_ID_CATALOG_CATEGORY_ENTITY_ENTITY_ID`(`product_id`) , 
DROP KEY `FK_CORE_URL_REWRITE_PRODUCT_ID_CATALOG_PRODUCT_ENTITY_ENTITY_ID` , 
ADD CONSTRAINT `FK_CORE_URL_REWRITE_PRODUCT_ID_CATALOG_CATEGORY_ENTITY_ENTITY_ID` 
FOREIGN KEY (`product_id`) REFERENCES `catalog_product_entity` (`entity_id`) ON DELETE CASCADE ON UPDATE CASCADE , 
DROP FOREIGN KEY `FK_CORE_URL_REWRITE_PRODUCT_ID_CATALOG_PRODUCT_ENTITY_ENTITY_ID`  ;


/* Alter table in target */
ALTER TABLE `eav_attribute` 
DROP KEY `MAGMI_EA_CODE_OPTIMIZATION_IDX` ;


/* Alter table in target */
ALTER TABLE `eav_attribute_option_value` 
DROP KEY `MAGMI_EAOV_OPTIMIZATION_IDX` ;


/* The foreign keys that were dropped are now re-created*/

ALTER TABLE `core_url_rewrite` 
ADD CONSTRAINT `FK_CORE_URL_REWRITE_CTGR_ID_CAT_CTGR_ENTT_ENTT_ID` 
FOREIGN KEY (`category_id`) REFERENCES `catalog_category_entity` (`entity_id`) ON DELETE CASCADE ON UPDATE CASCADE , 
ADD CONSTRAINT `FK_CORE_URL_REWRITE_STORE_ID_CORE_STORE_STORE_ID` 
FOREIGN KEY (`store_id`) REFERENCES `core_store` (`store_id`) ON DELETE CASCADE ON UPDATE CASCADE ;

/*!40014 SET FOREIGN_KEY_CHECKS=@OLD_FOREIGN_KEY_CHECKS */;
...