Разделы

  
 

CacheAccelerator 1.1-rc1 для REVO

Обнаружил переделку старой версии CacheAccelerator для Evo. Решил доработать ее функционал. За переделку старой версии спасибо Andchir.
Тестировалось на MODx Revolution 2.2.1-pl.

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


( Читать дальше )

EVO phpthumb Можно ли генерить картинки напрямую, не через image.php?

Использую Phpthumb для генерации картинок. И такое ощущение, что он все равно тянет картинки не напрямую, а через image.php. То есть не из прямого кэша. Практически всегда при перезагрузке картинки «подвисают».
К тому-же, при такой конструкции они не кэшируются в броузере.

Есть ли еще какое-то решение для генерации картинок типа Phpthumbof в Рево. Пробовал Phpthumbof для EVO — не работает.

Обрабатываю картинку так:
<img src="[*logo:phpthumb=`w=150&h=100&aoe=0&far=1&q=100`*]">


на выходе типа этого:
<img src="/klub/image.php?src=assets/images/project-letnaya-shkola/s-logo.png&w=100&h=100&far=1&aoe=0&hash=bef395c86b7d825159e0e57ed8dc7f67" alt="логотип проекта">


Может, что-то не так делаю?
  • 0
  • 18 апреля 2012, 16:50
  • dgbomb
  • 17

[Решено] getPage + Gallery

Кэшируется страница с пагинацией снипета Gallery. Вызов следующий
[[!getPage? 
  &element=`Gallery` 
  &limit=`18`
  &album=`8`
  &totalVar=`gallery.total`
  &thumbTpl=`Fotokonkurs` 
  &thumbWidth=`150` 
  &thumbHeight=`150` 
  &cache=`0`
  &cache_expires=`0`
  &pageNavVar=`page.nav`
]]
[[!+page.nav]]

В результате по всем ссылкам (.../?page=2 и .../?page=1) одно и тоже содержимое. У всех снипетов вызов некэшируемый, саму страницу тоже делал некешируемой. Если вручную выставить &start=`18` работает. Помогите разобраться??? Версия gallery 1.4.0 rc1, getPage 1.2.2. pl

Немного о Memcached [[!REVO]]

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

( Читать дальше )

[Revo] UpdateProfile — профиль пользователя обновляется только после чистки кэша [Решено]

Применяю на сайте сниппет UpdateProfile. Получается вот что: при внесении изменений в профиль они появляются только после чистки кэша через админку.
Так же если изменить профиль пользователя через админку, он изменится также после чистки кэша.

Вроде бы это даже официально зарегистрированный баг bugs.modx.com/issues/5655

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

Подскажите, может кто сталкивался с этой проблемой и решил ее?
А может знаете способ чистить кэш только у одного юзера?

UPD: Сниппет вызывается так [[!UpdateProfile]]. Отключил кэширование страницы, сниппета, чанков, плейсхолдеров — не помогает.

ошибка парсинга (кэш в EVO 1.0.5)

периодически вылетает парсер с ошибкой:
PHP error debug
  Error: 	include_once() [function.include-once]: Unable to allocate memory for pool.	 
  Error type/ Nr.: 	Warning - 2	 
  File: 	/home/******/www/site2/public_html/manager/includes/document.parser.class.inc.php	 
  Line: 	225	 
  Line 225 source: 	$included= include_once (MODX_BASE_PATH . 'assets/cache/siteCache.idx.php'); 


не могу понять отчего, может кто подскажет…
  • 0
  • 30 октября 2011, 21:15
  • infoman
  • 6

[REVO] Кэширование

Кэширование — чудная штука, особенно для высоконагруженных проектов, что весма оправдовало себя когда пользовался EVO, но что-то пошло не так после перехода на REVO.

Написал уже на REVO порядка 10 сайтов и тут пошла жара, почти на всех одна и таже проблема — в какой-то момент вместо сайта показывается пустая белая страница и так продалжается до тех пор, пока не почистишь кэш сайта. Начал копать хотяб причину, почему так происходит, пока пришел к выводу, что из за каких-либо проблем на хостинге, страничка неможет собратся без ошибок и в итоге ничего не показывает… и именно в таком состоянии кэшируется и показывается всем последующим пользователям.

текущие решения
1. отключение кэша. (отключил на 2х, пока проблем не возникло)
совсем не вариант… сделал такое на мало нагруженных сайтах.
2. поставил ограничения на кэш по времени (60 секунд)
Казалось бы все хорошо, но почему-то 60 секунд не срабатывало и сайт продолжал висеть в «белом» состоянии до очистки руками в админке.

Вообщем-то для меня проблема не является до конца решенной. Настройки в основном такие:


может подскажете что я делаю нетак и какбы можно хотябы сократить время висения в «белом»?
  • 0
  • 23 октября 2011, 16:04
  • ksupipr
  • 8

Вопрос по кэшированию

Добрый день.
Есть сниппет, допустим, пагинация. вызов следующий:
[[!pagination? &id=`[[*id]]` &alias=`[[*alias]]` ]]
. Внутри сниппета я проверяю текущую страницу, $_GET['page']. В таком случае мне необходимо вызывать этот сниппет без кэширования.
Есть ли возможность из шаблона или чанка вызвать сниппет, с входным параметром $_GET['page'], т.е. что то вроде:
[[pagination? &id=`[[*id]]` &alias=`[[*alias]]` &start=`[[*mox.request.get.page]]` ]]
?
  • 0
  • 13 июля 2011, 12:58
  • kinder
  • 2

Работа с кэшем через API

Всем известно что первый шаг для увеличения производительности — это кэширование. MODx умеет кэшировать странички и сниппеты, но это все далеко не всегда применимо. Есть всякие CacheAccelerator, но иногда хочется простого и ясного способоа работы с кэшем при написании собственного сниппета.

Я немного полазил в ядре и углядел вот такой вот файл:
/manager/media/rss/rss_cache.inc

Собственно, это не что иное, как класс кэширования. Вполне нормальный, рабочий и универсальный не смотря на 'rss' в пути и названии.

Чтобы понять как им пользоваться и как он работает — напишем тестовый сниппет.



( Читать дальше )
  • +4
  • 5 апреля 2011, 15:10
  • ifman
  • 11

Как быть с большим количеством ресурсов?

Всем привет! У меня вот какой вопрос. В базу modx внешним скриптом было спарсено 40000 записей. Мне нужно ими оперировать стандартными средствами modx. Все они залиты в таблицу content, проще говоря получилось 40000 документов. Но при поптыке отредатировать какой нибудт документ, админка вываливается в белый экран.

Ясно дело что проблема в кэше, потому как он пытается всю карту сайта сбросить в кэш файл, который сразу вырастает до необъятных размеров.

Если удалить кэш файлы админка снова откроется.

Нельзя ли как то вообще отключить кэширование? Или есть другой способ, кроме как вынести все документы в другю таблицу и писать кучу подулей для вывода и редактирования инфы
  • +1
  • 9 ноября 2010, 01:49
  • Igor59
  • 7