Главная
Форум
Контакты
Купить
Поддержи проект
Поиск
Искать:
Расширенный поиск
[Закрыть]
Правила форума
Войти
Регистрация
Russian
English
HandyCache форум
Главная категория
»
Дополнения, плагины
»
GE.lua - расширение HC для кэширование Google Earth
Имя пользователя:
1 час
1 день
1 неделя
1 месяц
Навсегда
Пароль:
Страниц:
1
...
4
5
[
6
]
7
8
9
Вниз
« предыдущая тема
следующая тема »
Отправить эту тему
Печать
Автор
Тема: GE.lua - расширение HC для кэширование Google Earth (Прочитано 98769 раз)
0 Пользователей и 2 Гостей смотрят эту тему.
Михаил
Модератор
Репутация: +337/-14
Offline
Сообщений: 5513
Re: HandyCache + GE.lua (кэширование GoogleEarth)
«
Ответ #100 :
22 июня 2009, 22:38:55 »
Цитировать
Попытка закэшировать авторизацию?
Да. Это все закомментировано.
Цитировать
И ещё заметил, одиночный файл (q2-0-q.204) есть в кэше, но HC его всё равно загружает из инета, а скрипт при этом пишет, что "GE-из кэша"
Предположу, что в НС отключено Настройки/Кэш/Управление/Игнорировать no-cache. Если так, то надо включить. Из скрипта я этим параметром управлять не могу.
Цитировать
Уже ж вроде всё обсудили и обошли эти грабли?
Граблей нет. Если клинит, давай посмотрим подробней...
Сообщить модератору
Записан
zed
Постоялец
Репутация: +4/-0
Offline
Сообщений: 141
Re: HandyCache + GE.lua (кэширование GoogleEarth)
«
Ответ #101 :
22 июня 2009, 22:48:30 »
Цитировать
Цитировать
Попытка закэшировать авторизацию?
Да. Это все закомментировано.
Это понятно, но нафиг оно вообще в скрипте если не работает? Показать, что были мысли на эту тему?
Цитировать
Цитировать
И ещё заметил, одиночный файл (q2-0-q.204) есть в кэше, но HC его всё равно загружает из инета, а скрипт при этом пишет, что "GE-из кэша"
Предположу, что в НС отключено Настройки/Кэш/Управление/Игнорировать no-cache. Если так, то надо включить. Из скрипта я этим параметром управлять не могу.
Да, включение опции no-cache избавило от "глюка". Надо бы в шапку скрипта этот нюанс добавить.
Цитировать
Цитировать
Уже ж вроде всё обсудили и обошли эти грабли?
Граблей нет. Если клинит, давай посмотрим подробней...
А что собственно смотреть? Единственная модификация скрипта (Connection:Close) - и гугл не ждёт по 30 сек после каждого запроса "из кэша"
Сообщить модератору
Записан
Михаил
Модератор
Репутация: +337/-14
Offline
Сообщений: 5513
Re: HandyCache + GE.lua (кэширование GoogleEarth)
«
Ответ #102 :
22 июня 2009, 23:01:57 »
Цитировать
Надо бы в шапку скрипта этот нюанс добавить.
Добавил.
Цитировать
А что собственно смотреть? Единственная модификация скрипта (Connection:Close) - и гугл не ждёт по 30 сек после каждого запроса "из кэша"
У меня такого нет. Причину того, что у тебя GE виснет, пока не пойму...
Попробуй отключить в НС чтение из кэша, затем запустить Гуглу, дать ей прогрузиться, потом выйти из Гуглы и снова включить чтение из кэша.
Сообщить модератору
Записан
zed
Постоялец
Репутация: +4/-0
Offline
Сообщений: 141
Re: HandyCache + GE.lua (кэширование GoogleEarth)
«
Ответ #103 :
22 июня 2009, 23:17:18 »
Цитировать
У меня такого нет. Причину того, что у тебя GE виснет, пока не пойму...
Причина - другое железо, другая винда и другой набор софта/дров в системе. Видимо, это и вносит свою лепту.
Цитировать
Попробуй отключить в НС чтение из кэша, затем запустить Гуглу, дать ей прогрузиться, потом выйти из Гуглы и снова включить чтение из кэша.
А разве это не равносильно тому, что я удаляю кэш HC - т.е. если он и пытается что-то оттуда прочесть, то безуспешно? Такое уже делал не раз.
Да и вообще, не вижу смысла заострять внимание на этом вопросе. Решение есть, я себе эту часть в скрипт дописал - у меня заработало. Если нет желания вносить это в скрипт - хозяин барин. А если у кого-то ещё будут траблы, то они выйдут на эту тему (надеюсь).
Сообщить модератору
Записан
Михаил
Модератор
Репутация: +337/-14
Offline
Сообщений: 5513
Re: HandyCache + GE.lua (кэширование GoogleEarth)
«
Ответ #104 :
22 июня 2009, 23:27:40 »
Цитировать
Причина - другое железо, другая винда и другой набор софта/дров в системе. Видимо, это и вносит свою лепту.
Нет.
Цитировать
Решение есть, я себе эту часть в скрипт дописал - у меня заработало.
ОК. Для информации сообщаю, что скрипт, использующий Connection: close, ест лишних 5-8% процессорного времени (на моем двухъядерном). Это происходит из-за постоянного создания/закрытия потоков и всего, что с ними связано (виртуальных LUA-машин и т.п.). Одновременно такой скрипт качает из сети ощутимо медленнее за счет необходимости устанавливать с сервером большое количество соединений.
Сообщить модератору
Записан
zed
Постоялец
Репутация: +4/-0
Offline
Сообщений: 141
Re: HandyCache + GE.lua (кэширование GoogleEarth)
«
Ответ #105 :
22 июня 2009, 23:43:43 »
Цитировать
Для информации сообщаю, что скрипт, использующий Connection: close, ест лишних 5-8% процессорного времени (на моем двухъядерном).
да ну? А на моём двухъядерном HC вообще не занимает больше 3% процессорного времени. И это с Connection:Close... И то, это в основном когда идёт подгрузка из инета, а так 0..1,5%. Или это мой двухъядерник круче?
Сообщить модератору
Записан
Михаил
Модератор
Репутация: +337/-14
Offline
Сообщений: 5513
Re: HandyCache + GE.lua (кэширование GoogleEarth)
«
Ответ #106 :
23 июня 2009, 07:25:59 »
Да, у меня отсталый. Если ему приходится работать с 1 потоком вместо 100, то работает быстрей и ест меньше ресурсов.
Во время активной работы (вращение глобуса по методике
Parasite
) использование ЦПУ колеблется от 0 до 11% (в случае с Connection: close от 0 до 18%).
Сообщить модератору
Записан
Parasite
Пользователь
Репутация: +1/-0
Offline
Сообщений: 66
Re: HandyCache + GE.lua (кэширование GoogleEarth)
«
Ответ #107 :
23 июня 2009, 14:52:11 »
Цитата: Михаил от 22 июня 2009, 20:44:32
Версия 0.06 от 22.06.2009
+ Лог ошибок (файл GE.log). Если он появится в папке со скриптом, подскажите мне, плиз
* Учитывается состояние опции НС "Разрешить чтение из кэша"
* Изменен текст сообщений в колонке "Правила" монитора
- Слегка улучшено использование памяти
Скрипт в его чистом виде - опять вешает клиента. Править ручками на тему Connection:Close (и тогда ОК).
Версия HC.182 - затык с проксированием HTTPS (secure-запросы не воспринимаются проксей, не появляются в мониторе и не обрабатываются, итог - Timeout).
HC.183 - вроде опять заработало.
Цитата: zed от 22 июня 2009, 23:17:18
Причина - другое железо, другая винда и другой набор софта/дров в системе. Видимо, это и вносит свою лепту.
Причина в другом сетевом конфиге: у Михаила, вероятно, что-то убивает коннекты по окончании передачи контента(?). Это может делать файрвол, гейт, проксик, провайдер и далее по восходящей.
У других этого может и не быть.
Цитата: zed от 22 июня 2009, 23:43:43
да ну? А на моём двухъядерном HC вообще не занимает больше 3% процессорного времени. И это с Connection:Close... И то, это в основном когда идёт подгрузка из инета, а так 0..1,5%. Или это мой двухъядерник круче?
Восьмипроцессорник Xeon с 24Гб рамы (из них под винду - 4Гб). Разницы в скорости двух скриптов не замечено даже при запуске пяти ГЕ в один HC.
"Основные" (1.5-2% от каждого) тормоза - от собственно скроллинга ГЕ-глобуса и анизотропной фильтрации графики на максимуме (в каждом из ГЕ).
Добавлено: 23 Июня 2009, 14:24:59
Цитата: Михаил от 23 июня 2009, 07:25:59
Во время активной работы (вращение глобуса по методике
Parasite
) использование ЦПУ колеблется от 0 до 11% (в случае с Connection: close от 0 до 18%).
Это
общее
использование на всё - или использование именно HC?
В ГЕ само вращение глобуса кушает вполне вменяемо (особенно если кучу слоев включить и софт-рендер заюзать, оййй....).
Сообщить модератору
Записан
Михаил
Модератор
Репутация: +337/-14
Offline
Сообщений: 5513
Re: HandyCache + GE.lua (кэширование GoogleEarth)
«
Ответ #108 :
23 июня 2009, 19:48:31 »
Цитировать
что-то убивает коннекты по окончании передачи контента(?)
Нет. Коннект один раз установился, и по этому соединению идет хоть тысяча запросов. Для проверки включал GE вращаться на 1ч: раз и навсегда установились 4 соединения, по которым прошли все несколько тысяч запросов.
Цитировать
Это общее использование на всё - или использование именно HC?
Только НС. Взгляд из Process Explorer. Гугл вращается со средней скоростью. Все берется из кэша.
Сообщить модератору
Записан
Михаил
Модератор
Репутация: +337/-14
Offline
Сообщений: 5513
Re: HandyCache + GE.lua (кэширование GoogleEarth)
«
Ответ #109 :
23 июня 2009, 22:04:10 »
zed, Parasite
Похоже, догадался, в чем у вас дело, хоть и не хотите помогать...
Вместо Connection: close впишите Connection: Keep-alive
Причина проблем скорее всего в том, что клиент настроен на использование протокола HTTP 1.0 и будет поддерживать постоянные соединения только при взятии из кэша НС (и то только если указать Connection: Keep-alive) . При скачивании из сети соединение будет рваться/возобновляться после каждого запроса.
Чтобы полностью перейти на постоянные соединения, надо в Свойствах обозревателя IE/Дополнительно поставить обе галки на использовании HTTP 1.1
Сообщить модератору
Записан
Parasite
Пользователь
Репутация: +1/-0
Offline
Сообщений: 66
Re: HandyCache + GE.lua (кэширование GoogleEarth)
«
Ответ #110 :
23 июня 2009, 22:37:17 »
Цитата: Михаил от 23 июня 2009, 22:04:10
Вместо Connection: close впишите Connection: Keep-alive
Так я ж вроде 2 страницы назад сказал, что глючит не от того или другого конкретно, а от отсутствия прямого указания вообще. Keep-Alive тоже должно работать. Наверное (в связке с HC не проверял - Close вполне решило проблему на раз, дальше не рыл).
Цитата: Михаил от 23 июня 2009, 22:04:10
в Свойствах обозревателя IE/Дополнительно поставить обе галки на использовании HTTP 1.1
Так стоят-ссс, еще со времен настройки сети в винде. Правда, дело осложняется тем что у меня винда не нативна на машине, а в песочнице. Впрочем, голый-то ГЕ - прекрасно работает.
Попробую поиграться в обе стороны с настройками, и поставить парочку ГЕ на ночь для теста.
Но вот сама идея менять что-то в системных настройках ради работоспособности отдельно взятого скрипта мне как-то не очень нравится. Ведь в любом случае будут юзеры, не разувшие глаза и не сделавшие этого\не разобравшиеся в написанном, и вопящие о глюках. Тысячи их.
Имхо, лучше бы таки ограничиться именно скриптом, на крайний случай - прихватить и HC, но имхо не далее. Зато всё будет подконтрольно разработчику, и только ему.
Решать, разумеется, не мне.
Господа, а как насчет этого поста -
http://handycache.ru/component/option,com_smf/Itemid,10/topic,2364.msg18977/#msg18977
? У кого-нибудь есть идеи?
Сообщить модератору
Записан
zed
Постоялец
Репутация: +4/-0
Offline
Сообщений: 141
Re: HandyCache + GE.lua (кэширование GoogleEarth)
«
Ответ #111 :
23 июня 2009, 23:17:17 »
Цитата: Михаил от 23 июня 2009, 22:04:10
Чтобы полностью перейти на постоянные соединения, надо в Свойствах обозревателя IE/Дополнительно поставить обе галки на использовании HTTP 1.1
У меня галка "Использовать HTTP 1.1" стояла, а вот "Использовать HTTP 1.1 через прокси-соединения" - нет. Включение этой галки решило вопрос клина гугла. Убрал из скрипта Connection:Close - полёт нормальный.
Михаил
, респект! Таки докапался в чём сабака зарыта
P.S. Только что поставил на виртуалку чистую винду (не ту сборку что у меня в системе, а другую), так вот, там ситуация с Connection:Close повторилась один в один. Т.е. пока не поставил галку "Использовать HTTP 1.1 через прокси-соединения" по-умолчанию настроенная система, работать со скриптом отказывалась, что не есть хорошо. Согласен с
Parasite
в том, что " лучше бы таки ограничиться именно скриптом... но не далее".
«
Последнее редактирование: 23 июня 2009, 23:27:33 от zed
»
Сообщить модератору
Записан
Михаил
Модератор
Репутация: +337/-14
Offline
Сообщений: 5513
Re: HandyCache + GE.lua (кэширование GoogleEarth)
«
Ответ #112 :
23 июня 2009, 23:34:48 »
Цитировать
Но вот сама идея менять что-то в системных настройках ради работоспособности отдельно взятого скрипта мне как-то не очень нравится.
Не обязательно менять системные настройки. Пишется Connection: Keep-alive в скрипте (со следующей сборки так и будет делаться), и скрипт работает при любых настройках. Только при настройках HTTP1.1 работает эффективней.
Цитировать
У кого-нибудь есть идеи?
Скриптом такое проделать можно. А в чем замысел?
Сообщить модератору
Записан
zed
Постоялец
Репутация: +4/-0
Offline
Сообщений: 141
Re: HandyCache + GE.lua (кэширование GoogleEarth)
«
Ответ #113 :
23 июня 2009, 23:48:53 »
Цитата: Михаил от 23 июня 2009, 23:34:48
Не обязательно менять системные настройки. Пишется Connection: Keep-alive в скрипте (со следующей сборки так и будет делаться), и скрипт работает при любых настройках. Только при настройках HTTP1.1 работает эффективней.
Ага, а в шапку скрипту инфу о том, как сделать его наиболее эффективным
Цитата: Михаил от 23 июня 2009, 23:34:48
Цитировать
У кого-нибудь есть идеи?
Скриптом такое проделать можно. А в чем замысел?
Замысел в том, чтобы не затирался dbRoot, хотелось бы, знаете ли, оставить его "на память", авось когда и пригодится. Коллекция дбрутов будет доступна
тут.
А можно скриптом добавлять к имени номер не по порядку, а тот, что записан в седьмом байте файла? И не плохо бы, рядом со вновь скачанным дбрутом ложить текстовичёк с датой из заголовка Last-Modified (или к имени самого дбрута добавлять эту инфу). Для статистики, так сказать.
«
Последнее редактирование: 23 июня 2009, 23:57:49 от zed
»
Сообщить модератору
Записан
Михаил
Модератор
Репутация: +337/-14
Offline
Сообщений: 5513
Re: HandyCache + GE.lua (кэширование GoogleEarth)
«
Ответ #114 :
24 июня 2009, 00:06:03 »
Цитировать
Замысел в том, чтобы не затирался dbRoot, хотелось бы, знаете ли, оставить его "на память", авось когда и пригодится.
Это не замысел, это как раз просьба, что и была высказана в том посте. А для чего так делать? Что это дает для целей кэширования или еще для каких?
Сообщить модератору
Записан
Parasite
Пользователь
Репутация: +1/-0
Offline
Сообщений: 66
Re: HandyCache + GE.lua (кэширование GoogleEarth)
«
Ответ #115 :
24 июня 2009, 07:58:31 »
Цитата: Михаил от 23 июня 2009, 23:34:48
Не обязательно менять системные настройки. Пишется Connection: Keep-alive в скрипте (со следующей сборки так и будет делаться), и скрипт работает при любых настройках.
Так в этом же и был цимус: принудительно указывать в скрипте состояние коннекта. Close ли, Alive ли....лично мне более ближе Close (траху меньше на nix-системах - подвисшие сокеты не надо ручками отслеживать и давить).
Докладаюсь:
1. Вставка в скрипт Connection: Keep-alive вместо Connection: Close: всё работает как и предсказывалось ранее, никакой визуальной разницы не видно в т.ч. и на файрволе (ну, кроме изменившейся этой строчки).
2. Пляска в разные стороны с двумя вышеуказанными галочками (в скрипте - Connection: Keep-alive): всё работает, никакой визуальной разницы не видно.
3. Пляска в разные стороны с двумя вышеуказанными галочками (в скрипте - Connection: Close): всё работает, никакой визуальной разницы не видно.
4. Пляска в разные стороны с двумя вышеуказанными галочками (в скрипте - оторвано указание про Connection вообще, то есть скрипт в его первоначальном виде от Михаила): клиент виснет за время 5...15 минут при ЛЮБОЙ комбинации галочек, как и указано в первом посте этой ветки.
Да, кстати - при Keep-Alive у меня не получается "Коннект один раз установился, и по этому соединению идет хоть тысяча запросов"© ни при какой комбинации настроек. Михаил, не могли бы дать свой дамп этой ситуации со сниффера? Погляжу, в чем разница...
Добавлено: 24 Июня 2009, 07:45:29
Цитата: Михаил от 24 июня 2009, 00:06:03
Цитировать
Замысел в том, чтобы не затирался dbRoot, хотелось бы, знаете ли, оставить его "на память", авось когда и пригодится.
Это не замысел, это как раз просьба
Совершенно верно.
Цитата: Михаил от 24 июня 2009, 00:06:03
А для чего так делать? Что это дает для целей кэширования или еще для каких?
Это позволяет иметь "в коллекции" все дбруты согласно их версий. Сугубо для истории - в плане кэширования это не дает ровным счетом ничего, ну разве что задачи "взять дбрут версии N и подсунуть в кэш, чтобы клиенту отдавался именно он вместо текущего гуглевого".
В дбрутах помимо всего прочего описываются параметры доступных для клиента слоев, где каждый слой может иметь кучу условий для показа в разных версиях ГЕ, да и устаревшие версии клиента хотят как правило дбрут не выше определенной версии оного (например, для третьего это дбрут где-то 134...150 версии, тогда как сейчас на гугле 204я версия) - а в противном случае старичку рвет крышу....
Короче, эту фичу с дбрутом очень желательно бы иметь.
Добавлено: 24 Июня 2009, 07:55:18
Цитата: Михаил от 22 июня 2009, 22:38:55
Цитировать
Попытка закэшировать авторизацию?
Да. Это все закомментировано.
Если будете использовать ГЕ.ЛОКАЛ - то можете раскомментировать.
ГЕ.ЛОКАЛ прекраснейше жрет кэшированные ответы авторизации гугля, чем сама необходимость логина на сервера Гугля отпадает и ГЕ становится полностью локальным и при том - всё еще работоспособным.
Сообщить модератору
Записан
Михаил
Модератор
Репутация: +337/-14
Offline
Сообщений: 5513
Re: HandyCache + GE.lua (кэширование GoogleEarth)
«
Ответ #116 :
25 июня 2009, 11:47:53 »
Цитата: Parasite от 24 июня 2009, 07:58:31
Так в этом же и был цимус: принудительно указывать в скрипте состояние коннекта. Close ли, Alive ли....
Не в этом. НС должен был закрыть соединение, но этого не делал. Похоже, ошибка НС.
mai62
Запрос HTTP 1.0. Скрипт формирует ответ без заголовка Connection (Proxy-Connection). При таком раскладе НС, похоже, не закрывает соединение после передачи ответа, и оно подвисает.
Сообщить модератору
Записан
Parasite
Пользователь
Репутация: +1/-0
Offline
Сообщений: 66
Re: HandyCache + GE.lua (кэширование GoogleEarth)
«
Ответ #117 :
25 июня 2009, 13:05:54 »
Цитата: Михаил от 25 июня 2009, 11:47:53
Не в этом. НС должен был закрыть соединение, но этого не делал. Похоже, ошибка НС.
Не знаю, Вам виднее.
Скажу лишь, что у меня сабж в 100% повторяем и без HC
(клиент->(апач+перлскрипт)->сервер ГЕ, получаем висняки сокетов если Перлом принудительно не формировать Сonection:Close при отдаче контента в клиент, причем висняк будет бесконечным и очень скоро настает переполнение очереди.
Solaris 10, Апач 1.3.35 (емнимс). Proxy-Connection тоже не формирую.
«
Последнее редактирование: 25 июня 2009, 13:12:50 от Parasite
»
Сообщить модератору
Записан
mai62
Автор HC
Репутация: +226/-4
Offline
Сообщений: 6383
Re: HandyCache + GE.lua (кэширование GoogleEarth)
«
Ответ #118 :
25 июня 2009, 15:33:16 »
Михаил
Цитировать
Запрос HTTP 1.0. Скрипт формирует ответ без заголовка Connection (Proxy-Connection). При таком раскладе НС, похоже, не закрывает соединение после передачи ответа, и оно подвисает.
А если в запросе HTTP 1.0, а в ответе HTTP 1.1, то на кого ориентироваться? И что было в поле Connection в запросе? Не проще в ответе явно написать?
Сообщить модератору
Записан
Parasite
Пользователь
Репутация: +1/-0
Offline
Сообщений: 66
Re: HandyCache + GE.lua (кэширование GoogleEarth)
«
Ответ #119 :
25 июня 2009, 16:25:05 »
Цитата: mai62 от 25 июня 2009, 15:33:16
И что было в поле Connection в запросе? Не проще в ответе явно написать?
Клиент всегда просит 1.1\KeepAlive.
Сообщить модератору
Записан
Страниц:
1
...
4
5
[
6
]
7
8
9
Вверх
Отправить эту тему
Печать
« предыдущая тема
следующая тема »
Перейти в:
Пожалуйста, выберите назначение:
-----------------------------
Главная категория
-----------------------------
=> Общие вопросы
=> Новые предложения
=> Дополнения, плагины
=> Сжатие трафика
=> English forum
=> Indonesian forum
-----------------------------
Гостевая
-----------------------------
=> Гостевая
-----------------------------
Дела домашние
-----------------------------
=> Сайт и форум HandyCache
=> Курилка
© 2006-2014 HandyCache Team. Все права защищены.
Загружается...