Physicist
Support Team
   
Репутация: +179/-0
Offline
Пол: 
Сообщений: 1154
Рябов Денис
|
 |
« : 02.06.2008, 10:19:55 » |
|
В Joomla!1.5 встроен полезный плагин System-Cache, который позволяет кешировать страницы целиком, при этом поддерживает ETag'и и «304 Not Modified». Во вложении ниже — существенно улучшенный аналог этого плагина для Joomla!1.0/Joostina. В результате использования этого плагина число запросов к БД можно сократить до одного (!). Не забудьте после установки опубликовать мамбот, сделать его первым в списке мамботов группы system (при использовании некоторых сторонних расширений могут возникать проблемы с отображением страниц из кеша, в этом случае необходимо поставить его последним), и загрузить настройки по-умолчанию. Релиз 1.2 можно скачать тут, релиз 1.4 — тут (там же приведены примеры ini-файлов настроек), релиз 1.5 — тут, релиз 1.6 — тут, релиз 1.7 — тут, релиз 1.8 — тут. Устаревшие релизы 1.0, 1.1 и 1.31 были удалены из вложений.
|
|
|
|
« Последнее редактирование: 29.09.2010, 13:49:09 от Physicist »
|
Записан
|
|
|
|
| |
vaganofff
Осваиваюсь на форуме
 
Репутация: +3/-1
Offline
Пол: 
Сообщений: 104
|
 |
« Ответ #1 : 10.06.2008, 10:56:10 » |
|
у меня действующий сайт, постоянно человек 50 онлайн сидит, страниц под 50 000 (стока яндекс нашел) вопрос: если установлю данный мамбот, а потом удалю, ничего не испорчю?
|
|
|
|
|
Записан
|
|
|
|
Physicist
Support Team
   
Репутация: +179/-0
Offline
Пол: 
Сообщений: 1154
Рябов Денис
|
 |
« Ответ #2 : 10.06.2008, 11:53:51 » |
|
вопрос: если установлю данный мамбот, а потом удалю, ничего не испорчю?
Нет, ничего не испортите. Разве что возможно придется вручную удалить из папки кэша (корень_сайта/cache) файлы, начинающиеся на page_ .
|
|
|
|
« Последнее редактирование: 07.07.2009, 22:01:33 от Physicist »
|
Записан
|
|
|
|
ghibon
Осваиваюсь на форуме
 
Репутация: +4/-0
Offline
Пол: 
Сообщений: 76
|
 |
« Ответ #3 : 10.06.2008, 12:21:00 » |
|
Спасибо!!! скажу вот что: по отношению к данному боту JAccelerator (и прочие подобные) работает просто криво. в свое время мне тот акселератор пришлось отключить, потому как к примеру SefServiceMap (карта сайта)страничка создавалась пустая, до первого обновления. сейчас вижу, что проблем рашена! Денис, отличная работа!
|
|
|
|
« Последнее редактирование: 10.06.2008, 12:29:50 от ghibon »
|
Записан
|
|
|
|
Garun
Давно я тут
  
Репутация: +15/-3
Offline
Пол: 
Сообщений: 374
|
 |
« Ответ #4 : 10.06.2008, 13:08:37 » |
|
Тееексссс... поставил... пропал диз напрочь, причем - только на главной (на главную назначен отдельный шаб)! А проектик - не шухры-мухры - Общественное объединение предпринимателей, панимаиш (топ-10 по запросу "малый бизнес")... уже начали юзеры камнями закидывать((( Чего я косянул? p.s. Бот отключил... ибо это не дело((( Прикрепляю для наглядности варианты html-кода при включенном и выключенном боте. Модули: mod_latestnews_extbyday mod_ml_smf_multi mod_jcomments mod_mostread mod_newsflash mod_mainmenu
|
|
|
|
« Последнее редактирование: 10.06.2008, 21:37:29 от Garun »
|
Записан
|
|
|
|
Physicist
Support Team
   
Репутация: +179/-0
Offline
Пол: 
Сообщений: 1154
Рябов Денис
|
 |
« Ответ #5 : 10.06.2008, 22:34:04 » |
|
Garun, проблема возникает из-за модуля mod_ml_smf_multi. Mitrich там, кстати, ошибся, написав <?php include ($mosConfig_live_site.'/modules/mod_ml_smf_multi/ml_smf.css'); ?> (естественно, тут должна быть переменная $mosConfig_absolute_path). Но проблема не в этом, а в том, что в подключаемом файле SSI.php из SMF имеется вот такая строка, которая вызывается всегда: ob_start('ob_sessrewrite'); Т.е. SSI.php по наивности считает, что до него никто включать буферизацию вывода не должен.  Зная такое эгоистическое поведение SMF, нужно просто в конце mod_ml_smf_multi.php закрывать по окончании работы модуля открытый в SSI.php буфер через <?php ob_end_flush(); ?>
|
|
|
|
|
Записан
|
|
|
|
Physicist
Support Team
   
Репутация: +179/-0
Offline
Пол: 
Сообщений: 1154
Рябов Денис
|
 |
« Ответ #6 : 11.06.2008, 23:29:19 » |
|
Вот версия 1.1Beta для тестирования. Добавлено: - настройки мамбота переведены на русский язык;
- парсинг вывода и правильная подстановка josSpoofValue при «нестандартных» вызовах josSpoofValue в модулях mod_poll, mod_login и компоненте com_login;
- решена проблема с голосованием в mod_poll;
- добавлена возможность очищать весь кеш при обращении к некоторым страницам (например, при голосовании или редактировании контента через фронтенд), такие страницы задаются указанием значения option или пары option|task;
- добавлена возможность задать страницы, которые не должны кешироваться (также задаются указанием значения option или пары option|task);
- добавлены запреты на кеширование: при смене шаблона в модуле TemplateChooser, при наличии в куках информации о «запомненном» пользователе.
После установки зайдите в настройки мамбота, опубликуйте его и кликните «Загрузить параметры по-умолчанию». Возможны проблемы со сторонними sef-компонентами. Просьба потестировать. Еще просьба просьба протестировать такую ситуацию: зайдите на страницу с формой логина (чтобы она попала в кеш), а потом очистите куки и попробуйте залогиниться на этой странице. PS. Окончательную версию ищите в последующих сообщениях.
|
|
|
|
« Последнее редактирование: 14.06.2008, 15:29:38 от Physicist »
|
Записан
|
|
|
|
Physicist
Support Team
   
Репутация: +179/-0
Offline
Пол: 
Сообщений: 1154
Рябов Денис
|
 |
« Ответ #7 : 12.06.2008, 15:10:52 » |
|
Я склоняюсь к такому решению: пользователь загружает в папку типа /mambots/system/cache/ настройки для компонентов в виде ini-файлов такого содержания: [*] save=clear
[com_banner] click=nocache
[com_contact] sendmail=nocache
[com_content] emailsend=nocache save=clear apply=clear apply_new=clear vote=clear
[com_poll] vote=clear
[com_registration] sendNewPass=nocache saveRegistration=nocache
[com_search] *=nocache
[com_user] saveUserEdit=nocache
[com_weblink] save=clear а в админке в настройках мамбота сделать ссылку «Загрузить расширенные настройки» (примерно как сейчас сделано «Загрузить параметры по-умолчанию»), при нажатии которой происходит парсинг всех ini-файлов в этой папке и сохранение настроек в БД. Такой вариант всех устраивает?
|
|
|
|
« Последнее редактирование: 13.06.2008, 16:03:43 от Physicist »
|
Записан
|
|
|
|
|
Alex Revo
|
 |
« Ответ #8 : 12.06.2008, 15:32:18 » |
|
Я готов поддержать и протестировать любой вариант. Пример для com_autobb во вложении.
|
|
|
|
|
Записан
|
|
|
|
Physicist
Support Team
   
Репутация: +179/-0
Offline
Пол: 
Сообщений: 1154
Рябов Денис
|
 |
« Ответ #9 : 12.06.2008, 21:11:31 » |
|
Вот очередной релиз. Добавлено:- возможность иметь ini-файлы настроек для каждого компонента или набора компонентов;
- соответственно, в настройках добавлена ссылка «Загрузить конфигурационные файлы из /mambots/system/cache/» — чтобы действие загруженных файлов вступило в силу, нужно обязательно кликнуть на этой ссылке;
- параметр «Загружать sef-компонент» в настройках — позволяет загружать sef-компонент в мамботе (до того как это попытается сделать Joomla), что позволяет получить параметры option и task из ссылок для дальнейшего анализа необходимости кэширования. Если возникают проблемы со сторонним sef-компонентом, просто отключите такую загрузку, но в этом случае, вероятнее всего, будут кэшироваться практически все страницы.
- режим «Загружать sef-компонент» должен нормально работать с sef-компонентами OpenSEF, sh404sef, JoomSEF и LiteSEF.
Во вложении: сам мамбот и ini-файл для компонента CommunityBuilder (не забудьте удалить расширение .txt перед закачкой файла на сервер). Для компонента AutoBB ini-файл выше приводил Alex Revo. [вложение удалено Администратором]
|
|
|
|
« Последнее редактирование: 15.06.2008, 00:29:26 от Physicist »
|
Записан
|
|
|
|
|
temniy
|
 |
« Ответ #10 : 13.06.2008, 15:12:13 » |
|
а ява-скрипты тоже кеширует? ЭдСенсы там всякие, напр...
|
|
|
|
|
Записан
|
|
|
|
Physicist
Support Team
   
Репутация: +179/-0
Offline
Пол: 
Сообщений: 1154
Рябов Денис
|
 |
« Ответ #11 : 13.06.2008, 15:21:01 » |
|
а ява-скрипты тоже кеширует? ЭдСенсы там всякие, напр...
Кэшируется целиком html-файл. Т.е. если java-скрипт вставлен в код страницы, то да — код будет закэширован, если вставлена ссылка на внешний java-скрипт — будет закэширована только ссылка. Результат работы скрипта не кэширутся, т.к. скрипт выполняется на стороне браузера. Т.е. в случае adsense, вставленного в код страницы, реклама будет показываться разная, а цветовая палитра будет одна и та же.
|
|
|
|
|
Записан
|
|
|
|
Sulpher
Support Team
   
Репутация: +293/-9
Offline
Пол: 
Сообщений: 1677
Миграция сайтов на Joomla 2.5
|
 |
« Ответ #12 : 13.06.2008, 19:35:19 » |
|
# возможность иметь ini-файлы настроек для каждого компонента или набора компонентов; # соответственно, в настройках добавлена ссылка «Загрузить конфигурационные файлы из /mambots/system/cache/» — чтобы действие загруженных файлов вступило в силу, нужно обязательно кликнуть на этой ссылке;
Достаточно ли автоматического создания .ini файлов при клике на данную ссылку или для каждого компонента нужно подгонять испортированные из кеша настройки мануально? На сайте используются следующие компоненты: - CB (.ini файл приведен выше); - CB rating; - CB advanced search; - uddeIM; - MyBlog; - Jom Comment; - Groupjive (компонент создания социальных групп); - YanC (система рассылок newsletter'ов).
|
|
|
|
« Последнее редактирование: 13.06.2008, 19:41:39 от Sulpher »
|
Записан
|
|
|
|
Physicist
Support Team
   
Репутация: +179/-0
Offline
Пол: 
Сообщений: 1154
Рябов Денис
|
 |
« Ответ #13 : 13.06.2008, 19:48:18 » |
|
Достаточно ли автоматического создания .ini файлов при клике на данную ссылку или для каждого компонента нужно подгонять испортированные из кеша настройки мануально?
Объясняю подробнее: для каждого компонента его автор или человек разбирающийся в работе компонента составляет файл, в котором указывает, - какие команды не должны кешироваться (например, в которых идет отправка почты, работа с куками, редирект на другую страницу, и т.д.),
- и при каких командах нужно очищать кэш (например, при изменении или удалении контента, и т.д.).
Если такая «тонкая» настройка Вам не нужна, можно просто запретить кэширование для компонента целиком, написав в ini-файле: [com_имякомпонента] *=nocache
|
|
|
|
« Последнее редактирование: 16.06.2008, 10:53:15 от Physicist »
|
Записан
|
|
|
|
Physicist
Support Team
   
Репутация: +179/-0
Offline
Пол: 
Сообщений: 1154
Рябов Денис
|
 |
« Ответ #14 : 15.06.2008, 00:44:18 » |
|
Версия 1.2Добавлено: - Возможность настройки кэширования для компонентов, использующих не переменную task для указания действия, а другую (подробнее см. ниже).
- Можно выводить временя генерации страницы, и запросы к БД при включенной отладке сайта.
- Можно даже для кэшированных страниц вести учет числа просмотров содержимого.
- Определение option для главной страницы сайта, что позволяет настраивать кеширование и для главной страницы.
- Исправлена проблема с Joostina на главной странице.
Для настройки кэширования компонентов, использующих не переменную task для указания действия, а другую, например act, нужно указывать в настройках com_somecomponent|act.someaction вместо com_somecomponent|someaction Соответственно, в ini-файлах нужно будет писать, например [com_somecomponent] act.someaction=nocache act.someotheraction=clear Вопрос ко всем пользователям мамбота: каких еще функций/возможностей мамбота вам не хватает для счастливой жизни?
|
|
|
|
« Последнее редактирование: 15.06.2008, 08:59:53 от Physicist »
|
Записан
|
|
|
|
|
|
XYZ
Осваиваюсь на форуме
 
Репутация: +1/-0
Offline
Сообщений: 49
|
 |
« Ответ #16 : 13.08.2008, 15:44:22 » |
|
поставил бот, и не смог почеловечески его сконфигурить, из за того, что конфиг написан по русски. описание проблемы тут: http://joomlaforum.ru/index.php/topic,40058.0.html
PS. Там же описано и решение проблемы.
|
|
|
|
« Последнее редактирование: 16.10.2008, 17:46:26 от Physicist »
|
Записан
|
|
|
|
Physicist
Support Team
   
Репутация: +179/-0
Offline
Пол: 
Сообщений: 1154
Рябов Денис
|
 |
« Ответ #17 : 14.10.2008, 13:44:52 » |
|
Версия System-Cache 1.3 - исправлен глюк с модулями на главной страницей;
- используется свой алгоритм кэширования (вместо joomla'овского);
- страницы для каждого компонента кэшируются независимо, поэтому при редактировании контента в одном из компонентов нет необходимости очищать весь кэш (снижается нагрузка на сервер, т.к. приходится обновлять меньшее число страниц в кэше);
- если модифицировать файл /administrator/index2.php, то кэш компонентов будет автоматически очищаться при редактировании из админки;
- добавлена поддержка JoomSEF2.2.6 и JPromoter (требуется тестирование);
- добавлено кэширование JoomFish'овых страниц (до этого «языковые» страницы не всегда кэшировались);
- в кэше сохранется дата и время последней модификации страницы, которое отдается браузеру.
[вложение удалено Администратором]
|
|
|
|
« Последнее редактирование: 14.10.2008, 13:54:24 от Physicist »
|
Записан
|
|
|
|
|
lsk
|
 |
« Ответ #18 : 14.10.2008, 14:44:27 » |
|
Бот работает отлично, но есть проблема с кешем. Например при добавлении во фронтэнде топика на форуме FB или в доске объявлений не отображаются изменения, только после принудительной очистки кеша. А в форуме вообще вывелась строка с ошибкой на белом фоне. После очистки кеша все заработало. Пришлось отключить бот.
|
|
|
|
|
Записан
|
|
|
|
Physicist
Support Team
   
Репутация: +179/-0
Offline
Пол: 
Сообщений: 1154
Рябов Денис
|
 |
« Ответ #19 : 14.10.2008, 16:21:29 » |
|
Бот работает отлично, но есть проблема с кешем. Например при добавлении во фронтэнде топика на форуме FB или в доске объявлений не отображаются изменения, только после принудительной очистки кеша.
Видимо, Вы забыли загрузить настройки (кликните одну из ссылок в настройках мамбота), т.к. в настройках по-умолчанию и в файле ext.ini для форумов joomlaboard и fireboard кэширование вообще отключено.
|
|
|
|
« Последнее редактирование: 07.07.2009, 22:10:54 от Physicist »
|
Записан
|
|
|
|
Physicist
Support Team
   
Репутация: +179/-0
Offline
Пол: 
Сообщений: 1154
Рябов Денис
|
 |
« Ответ #20 : 16.10.2008, 15:49:42 » |
|
Версия SystemCache 1.31Добавлено: - решена проблема с OpenSEF'ом;
- решена проблема с gzip-сжатием;
- добавлена ссылка очистки кэша (сами файлы не удаляются — они лишь помечаются как устаревшие);
- в режиме отладки 304-ответ не генерируется (это позволяет просмотреть запросы, генерируемые при включенном кэшировании).
[вложение удалено Администратором]
|
|
|
|
« Последнее редактирование: 16.10.2008, 20:48:17 от Physicist »
|
Записан
|
|
|
|
lammer
Осваиваюсь на форуме
 
Репутация: +5/-0
Offline
Сообщений: 79
|
 |
« Ответ #21 : 20.10.2008, 22:38:24 » |
|
Посидел. Чуть-чуть подразобрался. Написал пару своих правил на фронт пейдж. Запретил кэширование для джумфиш при смене параметров языка. В принципе действительно отличная вещь. Что понравилось: нормально отработало на мультидоменной структуре. Напару с кэширующей серверной стороной делают Joomla на порядок "легче". Порадовало время генерации страницы: от 0.01 (без кэширования) до 0.002 СпаСиБо!:)
|
|
|
|
|
Записан
|
|
|
|
lammer
Осваиваюсь на форуме
 
Репутация: +5/-0
Offline
Сообщений: 79
|
 |
« Ответ #22 : 22.10.2008, 13:23:22 » |
|
да, кстати, взял apache bench для интереса и потестировал:
при 1 тысячи запросов на тысячу конкурентных:
обслужены - все
ab -n 1000 -c 1000 http://***/index.php?option=com_frontpage&Itemid=1 [1] 2241 apache-*** Copyright 1996 Adam Twiss, Zeus Technology Ltd, http://www.zeustech.net/ Copyright 2006 The Apache Software Foundation, http://www.apache.org/
Benchmarking *** (be patient) Completed 100 requests Completed 200 requests Completed 300 requests Completed 400 requests Completed 500 requests Completed 600 requests Completed 700 requests Completed 800 requests Completed 900 requests Finished 1000 requests
Server Software: Apache *** Server Hostname: *** Server Port: 80
Document Path: /index.php?option=com_frontpage Document Length: 22597 bytes
Concurrency Level: 1000 Time taken for tests: 27.141352 seconds Complete requests: 1000 Failed requests: 462 (Connect: 0, Length: 462, Exceptions: 0) Write errors: 0 Total transferred: 13068768 bytes HTML transferred: 12698650 bytes Requests per second: 36.84 [#/sec] (mean) Time per request: 27141.352 [ms] (mean) Time per request: 27.141 [ms] (mean, across all concurrent requests) Transfer rate: 470.21 [Kbytes/sec] received
Connection Times (ms) min mean[+/-sd] median max Connect: 0 44 23.9 45 85 Processing: 63 10713 8810.0 7140 27061 Waiting: 62 10711 8810.4 7138 27060 Total: 63 10757 8825.5 7196 27137
Percentage of the requests served within a certain time (ms) 50% 7196 66% 13062 75% 13587 80% 14126 90% 26247 95% 26576 98% 26919 99% 27050 100% 27137 (longest request)
Со стороны сервера: юмла сожрала 300 метров памяти при тесте, процессор в ступор не уходил... Т.е. по завершению теста могу сказать: Отличный компонент! Денис, огромное спасибо!:)
|
|
|
|
|
Записан
|
|
|
|
Physicist
Support Team
   
Репутация: +179/-0
Offline
Пол: 
Сообщений: 1154
Рябов Денис
|
 |
« Ответ #23 : 22.10.2008, 15:38:06 » |
|
System Cache 1.4Добавлено:1. Различать страницы по cookies:Некоторые шаблоны генерируют разный код в зависимости от установленных cookies (которые сами же и выставляют). Чтобы кэшировать такие страницы независимо, нужно в настройках мамбота в поле «Кэшировать независимо для cookie» перечислить (по одной на строку) те значения cookies, от которых зависит вид генерируемой страницы. Для некоторых шаблонов Rockettheme это будут c-colorstyle, c-fontstyle и c-widthstyle (или v-widthstyle и v-fontstyle — тут всё зависит от шаблона), для шаблонов от Joomlart это могут быть ScreenType, ColorCSS, FontSize и JATheme, и т.д. 2. Различать страницы по браузерам:Аналогично, некоторые шаблоны генерируют разный код в зависимости от браузера. Например для IE часто подключается корректор png-fix. Для того, чтобы обработать такую ситуацию особым образом, в настройках мамбота «Кэшировать независимо для браузеров» перечислите (по одной на строку) те части строки UserAgent'a, по которым идет определение браузера в шаблоне. Например, для того, чтобы отдельно кэшировать страницы, генерируемые для Internet Explorer 6.0, нужно вписать в это поле "MSIE 6.0" (без кавычек). 3. Число запросов к БД сведено к одному:Удалось убрать запрос на загрузку параметров мамбота (параметры теперь берутся из глобального объекта $_MAMBOTS). В итоге число запросов к БД сведено к одному. 4. Команда удаления всех файлов из кэша:В настройках мамбота добавлена команда удаления всех файлов из кэша. Также все команды вынесены в отдельную удобную панель. 5. Независимое кэширование страниц для http и https соединений:Редко кто использует https-соединение при просмотре сайта (да и не на всех хостингах это поддерживается), но тем не менее мамбот теперь правильно различает такие соединения и кэширует их независимо. К мамботу прилагаются настройки:- com_profiler.ini — для компонента CommunityBuilder (предварительный вариант — только frontend; для админки задана очистка кэша при любых действиях с компонентом).
- ext.ini — «универсальные» настройки, срабатывающие со многими компонентами.
- extaddons.ini — несколько правил для компонентов adsmanager, akocomment, jomcomment, easybook, exitpoll, openwiki, joomlaboard.
|
|
|
|
« Последнее редактирование: 26.10.2008, 21:22:15 от Physicist »
|
Записан
|
|
|
|
lammer
Осваиваюсь на форуме
 
Репутация: +5/-0
Offline
Сообщений: 79
|
 |
« Ответ #24 : 23.10.2008, 01:36:18 » |
|
В тесте принимали участие такие браузеры: Опера 9.27, 9.60, Firefox 3.03, IE 6.0,7.0. gzip - off, joomla cache - off Оговорюсь, прежде чем проводить очередной этап тестирования - кэш удалялся полностью. Проверялась папка визуально на сервере на "пустоту". Тест номер 1: На совместимость с джумфиш:Со всеми нормально, но: IE 6.0,7.0 - отличились. Они, не смотря на смену языков, продолжают отдавать страницу из кэша со старым языком. Ставился и отключался флаг в панели администрирования: использовать кэш браузера. (Перед установкой, снятием этого флага кэш удалялся. Все это никак не повлияло на общий результат. Глюк остался. То же самое - применение моих "псевдоправил", немного не верхных по логике. Тоже не помогает. (Написания правил вида com_frontpage|lang|nocache). Алгоритм теста: клик по нескольким страницам, информация внизу: "страница взята из кэша за 0.002". После этого - смена языка. Переход на точно закэшированные ранее страницы. Итог: язык на них остался прежним. Тест номер 2: параметры coockies:Здесь могу сказать одно - по результатам теста. Куки работают. Но! Можно ли предусмотреть по смене кукис - сброс кэшируемых для именно данного клиента страниц? Т.е. алгоритм: Если перечисленное куки изменило свое значение именно для данного клинета, страница есть в кеше, страницу из кэша удалить. Перегенерить заново. Итак: для всех страниц этого клиента. Я там у тебя видел генерится на основании введенных данных хэш - можно к нему добавить и обговорить в коде такое правило? Думаю - как раз хэши совпадать не будут после этого. У меня куки отвечают просто за размер шрифтов - отступов и прочего  . Странно, но куки jfcookie[lang] эксплорером не обработалось. Думаю, эксплорер возвращает полностью страницу из локального кэша. Это все к глюку о joomfish. удивил файрфокс. Сие чудо если поставить галочку "кэшировать в браузере" начинает внаглую врать о времени генерации. Это добавилось в 1.4 - в 1.3 такого не было. Но при этом! Я проверил по файлам: а) время кэширования и число закешированных файлов не изменяется б) время изменения закэширвоанных файлов не изменяется в) все берется из кэша - страница не перегенирируется вновь ж) стоит только убрать галочку "кэшировать браузером" и время генерации показывается верно - мол "взято из кэша за 0.002 с". Но кэш работает нормально. Просто файрфокс видимо кэширует страницу теперь полностью. Вместе с подвалом и надписью внизу о генерации. По поводу краш версии - еще буду тестировать. В последнем тесте на 50000 тыс запросов и 300 уников "слег" мускуль. Не выдержал нагрузки. Поэтому, посижу посмотрю настройки и во время тестирования соберу информацию и по нему. Но, во первых - уж очень зверские условия. В реальной жизни такое редко бывает. А во вторых: нужно еще раз проверить все настройки сервера + собрать более детальную информацию по майскьэль. Думаю, за завтра управлюсь. С тестом - помогу.
|
|
|
|
« Последнее редактирование: 23.10.2008, 01:47:09 от lammer »
|
Записан
|
|
|
|
Physicist
Support Team
   
Репутация: +179/-0
Offline
Пол: 
Сообщений: 1154
Рябов Денис
|
 |
« Ответ #25 : 23.10.2008, 11:01:16 » |
|
Тест номер 1: На совместимость с джумфиш:
Со всеми нормально, но: IE 6.0,7.0 - отличились. Они, не смотря на смену языков, продолжают отдавать страницу из кэша со старым языком. По-идее в JoomFish'е при смене языка меняется url - к нему добавляется &lang=новый_язык, поэтому такая страница должна кэшироваться отдельно (поэтому не совсем понятен смысл фразы «переход на точно закэшированные ранее страницы», ведь для другого языка другие url будут). Да и странно, что только с IE возникает проблема. Какая версия JoomFish'а использовалась (я собираюсь проверить 1.8.2)? Я там у тебя видел генерится на основании введенных данных хэш - можно к нему добавить и обговорить в коде такое правило? Думаю - как раз хэши совпадать не будут после этого.
Так там именно так и сделано: значения всех перечисленных в настройках cookies добавляются к строке, на основе которой генерируется хэш. удивил файрфокс. Сие чудо если поставить галочку "кэшировать в браузере" начинает внаглую врать о времени генерации. Это добавилось в 1.4 - в 1.3 такого не было.
В этом суть 304-ответа: Если страница не изменилась (время генерации не в счет), то браузеру отдается 304-ответ, который означает, что нужно показать страницу из кэша браузера. Просто при тестировании версии 1.31 выяснилось, что некоторые браузеры (я заметил это на IE), в запросе к времени последней модификации страницы (которая в кэше) дописывают ее размер, а мамбот такую ситуацию не обрабатывал. Теперь обрабатывается и такая ситуация, поэтому 304-ответ будет передаваться чаще. Кстати, если в админке включить режим отладки, то 304-ответ выдаваться не будет (как раз чтобы оценить время генерации). В последнем тесте на 50000 тыс запросов и 300 уников "слег" мускуль. Не выдержал нагрузки.
Для страниц в кэше выполняется только один (одинаковый для всех страниц) запрос SELECT ... FROM jos_mambots WHERE ... который должен кэшироваться mysql. Поэтому либо в mysql отключено кэширование, либо 50000 тыс запросов и 300 уников — это потолок для mysql.
|
|
|
|
|
Записан
|
|
|
|
Physicist
Support Team
   
Репутация: +179/-0
Offline
Пол: 
Сообщений: 1154
Рябов Денис
|
 |
« Ответ #26 : 23.10.2008, 13:13:48 » |
|
lammer, попробуй проверить работу с JoomFish при включенном sef. При отключенном, видимо, и правда нужно добавить в мамбот некоторую «эмуляцию» joomfish-бота.
Насчет куков: при кэшировании нет привязки к клиенту, есть привязка только к url. Если клиент один, то тут и кэшировать-то особо не нужно. Кэширование помогает когда есть толпа посетителей, ломящихся на одну и ту же страницу.
|
|
|
|
|
Записан
|
|
|
|
koN
Осваиваюсь на форуме
 
Репутация: +7/-0
Offline
Сообщений: 164
|
 |
« Ответ #27 : 29.10.2008, 19:56:39 » |
|
Не знаю, я в IE7 тестировал — всё работало нормально. Возможно, в этом браузере Вы авторизованы (отметили «Запомнить меня» при логине). Попробуйте очистить куки и проверить заново.
Не, авторизован я не был. Но Вы правы, виноваты кукисы  . После очистки бот заработал  . Вот ведь засада, сразу и не догадаешься... Спасибо +
|
|
|
|
|
Записан
|
|
|
|
Physicist
Support Team
   
Репутация: +179/-0
Offline
Пол: 
Сообщений: 1154
Рябов Денис
|
 |
« Ответ #28 : 27.11.2008, 19:49:43 » |
|
Почему мамбот, не кэширует и не берёт из кэша, после того как залогиниваешься на сайте.
Потому что для каждого залогиненного пользователя может быть свой, отличный от остальных, вид страниц. Например, может выводиться модуль статей пользователя, список его друзей в CB, да хотя бы имя пользователя в модуле авторизации. Поэтому для залогиненных пользователей кэширование можно использовать только встроенное, когда каждый компонент/модуль знает, должен он кэшироваться или нет, и что именно и с каким ключем нужно кэшировать.
|
|
|
|
|
Записан
|
|
|
|
Sulpher
Support Team
   
Репутация: +293/-9
Offline
Пол: 
Сообщений: 1677
Миграция сайтов на Joomla 2.5
|
 |
« Ответ #29 : 10.01.2009, 21:46:39 » |
|
Там есть 3 пустых поля, но до меня не доходит что туда писать? Насколько понимаю, там нужно прописывать индивидуальные настройки кеширования для используемых компонентов. например, для Community Builder или autoBB. Кстати, с включенным ЧПУ сайт перестаёт работать - генерируются ссылки типа page1.html, page2.html. Я долго не мог разобраться в чем проблема и грешил на ArtioJoomSEF и серверные настройки, а как оказалось, причина тому - мамбот кэширования.
|
|
|
|
|
Записан
|
|
|
|
|