плагин
Kohana 3 merging patch 0.2
Метки: Kohana | плагин
Дата: 17/03/2010 14:08:29
Подписаться на комментарии по RSS
Апдэйт патча, который сливает использованные классы Kohana 3 в один файл и тем самым ускоряет загрузку, даже со включенным акселератором.
Что нового:
- добавлена возможность кэширования классов в соответствии с роутами. При первой загрузке создается т.н. кэш-загрузчик (preloader), который включает несколько классов, после инклуда которых становится возможным вызвать Request::instance(). Загрузчик общий для всех роутов. Последующие же классы, более специфичные для роутов, могут быть сохранены в соответствующих файлах кэша. А могут и не быть -- если отключить соответствующую настройку, будет создаваться один большой универсальный файл кэша.
- более удобное задание настроек кэширования
- сброс кэша закачкой или созданием в каталоге файла со специальным названием
- рефакторинг кода
Kohana 3 merging patch
Метки: Kohana | плагин
Дата: 23/02/2010 11:31:21
Подписаться на комментарии по RSS
Начитавшись Дмитрия Котерова, решил сделать "примочку", ускоряющую работу Kohana 3 за счет объединения файлов фреймворка в один большой. Сначала хотел сделать скрипт, автоматически проходящий по всем директориям и сливающий все файлы в один, однако из-за неясностей в разрешении зависимостей решил сделать нечто подобное форумному топику, когда в один файл объединяются автозагружаемые скрипты. В общем, оно получилось, правда, может ломаться при работе со сторонними библиотеками, с кохановскими вроде все нормально (к сожалению, мой модуль CheatSheet тоже ломается). Установка предельно простая -- копируем файл в APPPATH/classes и прописываем в bootstrap.php строку define('MERGED_CACHE_FILENAME', 'имя-файла'); , я пишу ее перед spl_autoload_register(). Также должен быть включен родной системный кэш Коханы.
(in English see below)
Внутренние роуты в Kohana 3
Метки: Kohana | плагин
Дата: 31/01/2010 21:35:21
Подписаться на комментарии по RSS
Briefly in English (I'm going to translate this article a little bit later):
A modification of Kohana 3 Request and Route classes allows to hide some controllers/routes from "outside" interaction.
Задача
Разрешить доступ к некоторым контроллерам системы (Kohana 3) только изнутри системы.
Вариант решения
Простейший случай -- проверять в контроллере $this->request === Request::instance() и отказ в случае TRUE. Однако я бы хотел немного усложнить задачу: система вообще не должна знать про "скрытый" контроллер, если запрос осуществляется "извне". Зачем так? Это может быть полезно, в частности, при реализации Front Controller с общей аутентификацией, назначением прав и т.п. Конечно, не так сложно сделать это распределенно, но... тогда считайте рассказанное ниже моим экспериментом.
Kohana 3 CheatSheet module 0.3
Метки: Kohana | плагин
Дата: 11/01/2010 11:08:02
Подписаться на комментарии по RSS
Небольшое обновление моего небольшого модуля CheatSheet для Kohana 3
Что нового:
- ручной сброс кэша
- запрет каталогов для отображения классов
- кнопка "закрыть" в блоке подсказки (чтобы не требовалось снайперской подготовки)
A little Kohana 3 CheatSheet module update
Added:
- manual cache invalidation (by clicking a link at the page bottom)
- can set directories to ignore classes
- "close" button for easier description block closing
Скачать/Download v. 0.3 29 (zip ~ 32 KiB)
Googlitics 0.2 для MaxsiteCMS
Думаю, что можно называть релизом.
Что изменилось?
- Пофикшен баг с асинхронной загрузкой статистики. Таки это был баг у меня в скрипте, причем классический -- неинициализация переменной. Иногда срабатывало, видимо, потому, что некоторые браузеры игнорировали. Короче, сейчас это работает. И у меня включено.
- Исправлен баг с автоматической загрузкой, которая не срабатывала вообще из-за перемены мест уменьшаемого и вычитаемого. Сейчас все ОК, и добавил чтобы не обновляло автоматом только в течение дня. Кажется, так удобнее.
- Плагин модифицирован под MaxSite CMS 0.36 (изменился ajax-файл), поэтому всем, кто обновил ЦМС, надо обновить и плагин. Со старыми версиями ЦМС работать тоже будет.
- "Косметические" правки текстов, кода и т.п.
Скачать полную версию 0.2 35 (~110 KiB)
UPD Скачать инструкцию по установке 0.2 11 (~1 KiB)
Проблема с асинхронной статистикой
Метки: MaxSite | плагин
Дата: 17/12/2009 13:19:09
Подписаться на комментарии по RSS
Вот и всплыло :(
За вчера согласно статистике Google (в асинхронном режиме) количество посетителей составило 7 человек, тогда как традиционные счетчики дают порядка 50 (ну и обычно где-то около этого и бывает). За позавчера падение есть тоже, но не такое большое. Посему пойду читать мануал по асинхронным запросам, а статистику потестирую с разными настройками.
"До выяснения" плагин можно ставить, только не включайте асинхронный режим (по умолчанию он выключен). Я не уверен, что дело только в плагине, иначе все обнулилось бы и в статусе было бы видно, наверное.
Googlitics 0.2 бета для MaxSite CMS
Несмотря на сомнительные откровенные заявления гендиректора Google насчет приватности, польза от использования Google Analytics пока что превышает потенциальный вред. Поэтому продолжаю работу над плагином для MaxSite, сегодня у нас версия 0.2 бета. По результатам тестирования полет пока нормальный, поэтому решил выложить плагин для желающих попробовать.
Разработка Googlitics 0.2b
Метки: MaxSite | плагин
Дата: 14/12/2009 14:20:41
Подписаться на комментарии по RSS
Написал бета-версию плагина Googlitics, где улучшен интерфейс, добавлена защита статистики от любопытных глаз, а также дописан вариант асинхронного запроса статистики, недавно представленный Google. Сейчас плагин тестируется.
При разработке пришлось столкнуться с недостаточной гибкостью MaxSite, заключающейся в невозможность подключить плагин после всех уже подключенных. (Может это и есть где-то в недрах, но я не нашел). Из-за этого возможны проблемы с асинхронной работой аналитики, поскольку среди требований к ней есть "располагать код в самом конце секции head". А как я могу это сделать, если после Googlitics подключаются и пишут код в head еще несколько плагинов? Пишу это исключительно как пожелание для дальнейшего совершенствования системы.
Думал добавить еще аналитических данных, но решил, что, возможно, это будет в следующей версии вместе с рефакторингом кода.
Модуль Kohana 3 CheatSheet 0.2
Метки: Kohana | плагин
Дата: 05/11/2009 12:48:08
Подписаться на комментарии по RSS
Следующая версия плагина CheatSheet для фреймворка Kohana 3 -- 0.2. Основное изменение -- добавлен кэш, что уменьшило время генерации страницы более чем на порядок (где-то раз в 13, если быть более точным), а занимаемую память -- примерно на четверть. Инвалидация кэша не по времени, а по изменению данных. Кроме того, немного дополнен дизайн, убрана неприятная особенность, когда код мог вылазить за пределы своего блока. Рекомендую обновиться.
Файл справки в дистрибутиве README.ru
In English:
The next 0.2 version of CheatSheet module for Kohana 3 PHP framework is presented. The main change is data cache, that strongly increases performance (page generation time become about 10 times less, memory consumption about 1/4 less). Cache invalidates not on expiration time but on data changes. Some other design features fixed and added. I recommend to update.
For more info see README.en file in distributive.
Страница с информацией о модуле
Демонстрационная страница/Demo
Скачать/Download CheatSheet v. 0.2 56 (zipped ~32K)
Альфа-версия Googlitics 0.2
Я тут устыдился того, что совсем забыл про рожденный мною плагин Googlitics для MaxSite CMS. А между тем, много событий произошло за это время, например, Google открыл API для цивилизованной работы со статистикой. Более того, хорошие люди написали кучу кода для применения туда разных красивостей.
В общем, стыд как дым, выел глаза -- и я принялся за дело. В результате появилась версия 0.2 альфа, в которую добавлен механизм запроса и отображения статистики.