ShopCMS - 2 часть

Всем привет.

Интересует вопрос: ShopCSM + memcache = возможно ? Никак не найду как прикрутить его. Нагрузка при 5к товаров просто бешенная, запросов незнаю сколько, т.к. отладочная инфа показывает все по нолям, кстати почему так ? и как исправить, тюн мускуля не дал ожидаемых результатов.

Видел еще какой-то патч толкают за 35уе

Есть такое в пабле или сугубо приват решение.

Вообще какие советы по оптимизации у вас имеются ?

ps: вроде туды пишу, если нет, скажите куды и перенесем.
 
т.к. отладочная инфа показывает все по нолям, кстати почему так ? и как исправить
У меня такое было, когда я менял дефолтный шаблон. В частности проверь что у тебя вызывается файл user.js, и в нем есть функция:
Код:
function doLStat(forse) {
        JsHttpRequest.query(
            'index.php', forse,
            // Function is called when an answer arrives.
            function(result, errors) {
                doStat(result);
            },
            true  // do not caching
        );
}
А так же в шаблоне присутствует код:
Код:
{* панель отладочной информации *}
{if $smarty.const.CONF_DISPLAY_INFO eq 1 and $isadmin eq "yes"}
<table cellspacing="0" cellpadding="0" width="100%" class="print">
  <tr class="mid">
    <td style="background: url('data/admin/fonbot.gif'); height: 23px;"><img src="data/admin/sep.gif" alt=""></td>
    <td width="100%" style="background: url('data/admin/fonbot.gif'); height: 23px;">
      <table cellspacing="0" cellpadding="0" width="100%">
	    <tr class="mid">
	      <td style="padding-bottom: 2px;" nowrap="nowrap" class="stat">&nbsp;&nbsp;{$smarty.const.STRING_EXE_DATA}:&nbsp;<span id="tgenexe">0.000</span>&nbsp;{$smarty.const.TIME_SEK}</td>
	      <td nowrap="nowrap"><img src="data/admin/sep2.gif" alt=""></td>
	      <td style="padding-bottom: 2px;" nowrap="nowrap" class="stat">{$smarty.const.STRING_PREEXE_DATA}:&nbsp;<span id="tgencompile">0.000</span>&nbsp;{$smarty.const.TIME_SEK}</td>
	      <td nowrap="nowrap"><img src="data/admin/sep2.gif" alt=""></td>
	      <td style="padding-bottom: 2px;" nowrap="nowrap" class="stat">{$smarty.const.BD_DO_TIME}:&nbsp;<span id="tgendb">0.000</span>&nbsp;{$smarty.const.TIME_SEK}</td>
	      <td nowrap="nowrap"><img src="data/admin/sep2.gif" alt=""></td>
	      <td style="padding-bottom: 2px;" nowrap="nowrap" class="stat">{$smarty.const.STRING_ALL_EXETIME}:&nbsp;<span id="tgenall">0.000</span>&nbsp;{$smarty.const.TIME_SEK}</td>
	      <td nowrap="nowrap"><img src="data/admin/sep2.gif" alt=""></td>
	      <td width="95%" style="padding-bottom: 2px;" nowrap="nowrap" class="stat">{$smarty.const.STRING_DO_COUNT}:&nbsp;<span id="tgensql">0</span></td>
		</tr>
      </table>
	</td> 
  </tr>
</table>
<script type="text/javascript">doLStat('do=stat');</script>
По поводу производительности. Привожу замеры с отключенным кэшем и включенным.
Открывается категория с 339 товарами, у каждого товара 10 характеристик.
Конечно запросов к БД много и выполняются они довольно долго, но шаблоны компилируются на порядок дольше.
Я так думаю, использование Smarty в ИМ с высокой нагрузкой недопустимо. Любой шаблонизатор сильно тормозит систему.
Поэтому только чистый php.

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

Я думаю что можно начать с оптимизации шаблонов: выкинуть из них все что не используется в текущем магазине: if, section и тп увеличивают время загрузки. Шаблоны универсальны, и в них много лишнего. Если вы например используете ajax корзину, незачем для каждого товара проверять это. Оставьте только код ajax корзины.
Таких мест много.
Кроме того, думаю что отключение псевдостатических ссылок также скажется на улучшении производительности. Но для уже работающего магазина это конечно не вариант.
 

Вложения

  • no_cache.gif
    no_cache.gif
    6,3 KB · Просмотры: 12
  • cache.gif
    cache.gif
    5,9 KB · Просмотры: 12
Кто-нибудь делал так, чтобы обсуждение товаров располагалось на странице товара?
 
Быстрая регистрация

Кто знает, как добавить и удалить поля при быстрой регистрации, когда оформляют заказ. Фамилия мне не нужна, вместо нее телефон нужен, просто поменял надпись на телефон, но в письме все равно фамилия.
 
Есть вот такой вопрос: как сделать, чтоб в корзине у продукта не добавлялись в скобках выбранные характеристики?
На 4-ой странице в этой теме failometr давал ответ, но что-то ничего не получилось.
Все эти четыре строки закомментировала, а в заказе (и в корзине, и в админке, и на почте) всё равно вылезают в скобках все дополнительные характеристики.
Может, можно еще что-то сделать?
Дополнительные характеристики в самом заказе явно лишние и сильно мешаются, а удалять их совсем тоже нельзя, они полезны покупателям при выборе товара.
 
поделитесь,пожалуйста,нуленой версией 3.1.2
 
Есть два вида поставщиков. Те,что есть в моем городе и из других городов. Нужно на сайте сделать отображение наличия товара ЕСТЬ - для городских и ПОСТАВКА 1-3 ДНЯ - для иногородних.
Как такое сделать?
Товар на сайте обновляется через csv файл (через программу обработки прайс-листов). В каталоге отображается только товар, который есть в наличии. Создать файл импорта с нужными параметрами могу. Как отобразить наличие на сайте?
 
Есть два вида поставщиков. Те,что есть в моем городе и из других городов. Нужно на сайте сделать отображение наличия товара ЕСТЬ - для городских и ПОСТАВКА 1-3 ДНЯ - для иногородних.
Как такое сделать?
Товар на сайте обновляется через csv файл (через программу обработки прайс-листов). В каталоге отображается только товар, который есть в наличии. Создать файл импорта с нужными параметрами могу. Как отобразить наличие на сайте?
В стандартной версии движка никак. Нужно добавить поле "поставщик" в свойствах товара. И в шаблоне уже выводить текст в соответствии со значением. Или можно в характеристики добавить хар-ку "Срок доставки" например. но первый вариант мне кажется правильнее. Нужен программист в общем.
 
Может кто видел решение, чтоб при новых комментах в обсуждении товара отсылать уведомление на email.
А также интересует модерация, изменение комментов.
 
Может кто видел решение, чтоб при новых комментах в обсуждении товара отсылать уведомление на email.
А также интересует модерация, изменение комментов.
Тоже бы не отказался от подобного функционала. Может программисту закажу своему когда-нибудь, если уже такого никто не придумал.
 
Назад
Сверху