Здравствуйте, у меня магазин где я пытался работать с более чем 30000 товаров, долгое время думал что закралась какая-то проблема в мой магазин и поэтому он работает так медленно, в конце концов я решил его пересоздать на Джумле 3.3, потратив кучу времени на установку и настройку, думал что всё будет работать быстро, и работало, пока я не начал импортировать товар, с каждой тысячей я получал + 1 секунду в загрузке, и очень удивился, когда в новом магазине всё стало работать по старому.
Хостер очень ругался на мой старый магазин, заставил меня взять VPS сервер, подключил CDN кеширование, + обычное кеширование и т.п... всё это в какой-то степени помогло, но другие магазины минимум выигрывали в 2-3 раза по скорости всё равно. Я попросил тестирование у хостера, чтоб они помогли определить какой модуль или компонент становиться причиной тормозов, мне сказали что причина com_jshopping, я тогда не придал этому нужное значение, но пересоздавая свой магазин я понял что проблема действительно в самом компоненте.
Я попытался разобраться в самой сути и провёл 60 часов тестов, кучу раз обнулял базу из бекапа, и импортировал товар при помощи Addon Universal CSV Import. Я конечно не специалист, но что я смог наблюдать изложу ниже...
При большом кол-ве, такое ощущение что при переходе по страницам сайта компонент втыкает несколько секунд как будто куда-то лезет за какой то информацией, при этом это может длиться 10 и более сек, при большом кол-ве. Я так понимаю что проблема в самом алгоритме, толи он сперва все запросы собирает, а потом только в базу лезет, толи пока все запросы из базы не запросит отображать ничего не начинает, что-то в этом роде. Кроме того даже если мы переходим на страницу где нет товара вообще, например материал, сильно это нас не спасает и разница в увеличении скорости примерно 20% (тоесть не 10, а 8 секунд :)).
Addon Universal CSV Import и Export также не работают нормально с большим объёмом данных, нормально с 1000, максимум до 5000, но это если очень повезёт, на практике очень часто бывают ошибки, а если нужно сразу что-то сделать с 10000 позиций - то вообще не работает. Похоже что основная проблема связана с не возможностью выставления времени выполнения скрипта, такая же проблема и в аддоне Resize Products.
В целом у меня стало складываться ощущение что Joomshopping вообще заточен на магазины до 1000 товаров, а как же быть, если человек захочет сделать что-то вроде этого rozetka.com.ua или Amazon.com не ужели это не возможно на ЖШ?
Мне нужен ну хотя бы вот такой магазин http://hitonline.ua. у них несколько десятков тысяч товаров, а по ощущению грузиться меньше секунды.
По тестам на сайте http://tools.pingdom.com сайт hitonline.ua через 0.7 секунды начинает грузить 158 запросов, общий вес 3,7мб, общее время 4.76 сек. По ощущению сайт грузиться менее 1 секунды.
Мой тестовый сайт http://riffmusic.com.ua/riffmusic/magazine/category/view/17.html, на ЖШ, имея 29 категорий, около десятка производителей и около 3000 товаров, показал вот такие результаты - после 27 сек втыкания, он стал грузить 58 запросов, общий вес 2,8мб, общее время 33,05 сек :) Что-то нужно решать наверное.... Главная страница тест-сайта http://riffmusic.com.ua/riffmusic/ при 108 запросах, и весе 4.2мб поставила рекорд... втыкала 45сек, при общем времени 56,32сек.
Очень хотелось бы чтобы как-то доработать компонент чтобы средние и большие магазины могли хоть более менее работать. Что скажете?
Joomla: Любая
JoomShopping: Любая
PHP: 5.3
Website Url: http://riffmusic.com.ua/riffmusic/magazine/category/view/17.html?start=360
JoomShopping: Любая
PHP: 5.3
Website Url: http://riffmusic.com.ua/riffmusic/magazine/category/view/17.html?start=360