+  HandyCache форум
|-+  Главная категория» Новые предложения» Придерживать параллельные закачки
Имя пользователя:
Пароль:
Страниц: [1] 2  Все   Вниз
  Отправить эту тему    Печать  
Автор Тема: Придерживать параллельные закачки  (Прочитано 28218 раз)
0 Пользователей и 1 Гость смотрят эту тему.
Qua
Новичок
*

Репутация: +1/-0
Offline Offline

Сообщений: 22



« : 22 января 2007, 15:07:46 »

Часто сталкиваюсь с такой проблемой. Она меня очччень раздррражает  Злой
Заключается в том, что если браузер или прога, работающие через HandyCache запрашивает одно и то же несколько раз, то HandyCache усердно начинает качать такие страницы, изображения и т.д. снова и снова.
 Почему бы не проверять адрес URL хотя бы.
Недопустимо закачивать один и тот же URL параллельно в пяти потоках!!!   Злой
Где экономия?  Непонимаю
Сообщить модератору   Записан

И др., и пр., и т.д., и т.п.
Сергей
Beta tester
*****

Репутация: +9/-2
Offline Offline

Сообщений: 621



« Ответ #1 : 22 января 2007, 16:12:07 »

Браузер не может запрашивать одно и то же параллельно. Скорее всего, он качает разные страницы, которые имеют одинаковый URL. Я встречал такое.
Вот пример
http://www.skylink.ru/info/tarifs.aspx?p=1&id=1&r=77
Там есть ссылки на группы тарифов. Каждая ссылка открывает один и тот-же URL.

А вот в ситуации, когда несколько клиентов одновременно начинают качать одно и то-же, надо бы качать один раз. Эта тема уже поднималась на Руборде.
« Последнее редактирование: 22 января 2007, 16:21:13 от Сергей » Сообщить модератору   Записан
Дем
Постоялец
***

Репутация: +6/-3
Offline Offline

Сообщений: 167



« Ответ #2 : 22 января 2007, 18:11:28 »

Цитировать
А вот в ситуации, когда несколько клиентов одновременно начинают качать одно и то-же, надо бы качать один раз. Эта тема уже поднималась на Руборде.
Многооконный браузер (а сейчас все такие) - он и есть "несколько клиентов"
Сообщить модератору   Записан
DenZzz
Модератор
*****

Репутация: +179/-11
Offline Offline

Сообщений: 5589



« Ответ #3 : 22 января 2007, 20:22:18 »

Qua

Подтверждаю, если с одного сайта открыть несколько окон IE (или вкладок в Макстоне), то одна и та же новая картинка будет параллельно качаться в несколько потоков (это видно в Мониторе HC). 
Аналогичная картина, если в сети сразу несколько пользователей одновременно ходят по одним и тем же сайтам!
 
Таким образом, если картинка на 500 кб и открывается 10 окон, то получим 4.5 Мб лишнего трафика! 
Поэтому придерживать дублирующие активные закачки одного и того же файла не помешало бы...

В ToDo это уже внесено, как: "Реализовать опцию "Придерживать параллельные закачки"...

Сообщить модератору   Записан
Сергей
Beta tester
*****

Репутация: +9/-2
Offline Offline

Сообщений: 621



« Ответ #4 : 23 января 2007, 08:45:21 »

Это еще один гвоздь в гроб IE Подмигивающий

А почему придерживать? Клиент не должен ждать пока другой докачает.
Сообщить модератору   Записан
Oneri
Новичок
*

Репутация: +2/-0
Offline Offline

Сообщений: 34


« Ответ #5 : 23 января 2007, 09:25:28 »

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

Второй вариант: при появлении выше показанной ситуации отдаем файл из кеша и по таймеру (ну нарпример раз в секунду проверяем новые (поступившие) байты и отдаем их клиенту и так до окончания загрузки файла,  т.е. в данном случае весь файл берется из кеша.

Вариант с придержкой закачки тоже реален т.к. при плохом канале новый экземпляр файла никак не закачается быстрее того что уже качается  Улыбка так  что  для конечного пользователя все равно будет ускорение ПОЛНОЙ загрузки файла (да да порно будет появлятся сразу а не постепенно Улыбка )

Тут не учтены трудности при многопоточной закачки, но думаю для качалки перезапросить файл труда не составит
Сообщить модератору   Записан
Сергей
Beta tester
*****

Репутация: +9/-2
Offline Offline

Сообщений: 621



« Ответ #6 : 23 января 2007, 09:58:48 »

Oneri
Цитировать
проверяла не качается ли он уже
еще надо проверять ситуации, когда по одному URL качаются разные данные.
Цитировать
отдавать первый кусок файла из кеша
не из кэща а из некоторого буфера. Т.к. в кэш может и не сохраняться.
Сообщить модератору   Записан
Oneri
Новичок
*

Репутация: +2/-0
Offline Offline

Сообщений: 34


« Ответ #7 : 23 января 2007, 11:14:49 »

еще надо проверять ситуации, когда по одному URL качаются разные данные.
Тогда как минимум надо обрабатывать заголовки Грустный

Как решение данной проблемы мне кажется надо добавить в белый список новую колонку с исключением опции оптимизации одновременной закачки

Цитировать
отдавать первый кусок файла из кеша
не из кэща а из некоторого буфера. Т.к. в кэш может и не сохраняться.

В данном случае буфер не имеет смысла:
1. Перерасход памяти (а если качается большой файл) как пример файл качается из браузера и качалки через НС
2. Насколько я понимаю что в данном случае пользователя интересует получение актуальных данных и смысла в буфере здесь нет. 
Сообщить модератору   Записан
Сергей
Beta tester
*****

Репутация: +9/-2
Offline Offline

Сообщений: 621



« Ответ #8 : 23 января 2007, 12:29:43 »

Буфер на диске, разумеется.
Сообщить модератору   Записан
DenZzz
Модератор
*****

Репутация: +179/-11
Offline Offline

Сообщений: 5589



« Ответ #9 : 23 января 2007, 16:14:22 »

еще надо проверять ситуации, когда по одному URL качаются разные данные.
Тогда как минимум надо обрабатывать заголовки Грустный

Как решение данной проблемы мне кажется надо добавить в белый список новую колонку с исключением опции оптимизации одновременной закачки

Еще один вариант - не качать параллельно только те URL, на которые может сработать список "Не обновлять".

Логика проста: если бы закачки были не параллельные, а последовательные одна за другой, то второй, третий и т.д. раз файл взялся бы из кэша! Тогда зачем его качать параллельно!

Если же мы знаем, что по одному URL могут быть разные данные (динамический контент), то ему не место в списке "Не обновлять" - просто исключаем его из списка (или в "Белом списке" пишем соответствующее правило).
« Последнее редактирование: 23 января 2007, 16:19:11 от DenZzz » Сообщить модератору   Записан
Сергей
Beta tester
*****

Репутация: +9/-2
Offline Offline

Сообщений: 621



« Ответ #10 : 23 января 2007, 16:32:38 »

Цитировать
Если же мы знаем, что по одному URL могут быть разные данные (динамический контент)
Проблема в том, что контент статический.
Сообщить модератору   Записан
DenZzz
Модератор
*****

Репутация: +179/-11
Offline Offline

Сообщений: 5589



« Ответ #11 : 23 января 2007, 16:39:26 »

Сергей

Цитировать
Это еще один гвоздь в гроб IE

Это проблема касается не только IE !

Представь в локальной сети 10 пользователей в Опере ходят через HC одновременно по одному фотоальбому в Инете! Вероятность, что все 10 одновременно наткнуться на одну и туже 3х-мегабайтную фотку велика! И Опера им ничем не поможет - все десять пользователей начнут параллельно качать эту фотку, забив под завязку и без того медленный канал на длительное время! Подмигивающий

Цитировать
Проблема в том, что контент статический.

Контент статический, а данные каждый раз разные? Так бывает?
Сообщить модератору   Записан
Rick
Администратор
*****

Репутация: +15/-1
Offline Offline

Сообщений: 868


WWW
« Ответ #12 : 23 января 2007, 17:39:07 »

Это проблема касается не только IE !
Представь в локальной сети 10 пользователей...
В локальной сети кроме общего кэша никто не поможет Улыбка

А вот как говорил Дем:
Многооконный браузер (а сейчас все такие) - он и есть "несколько клиентов"
У Оперы в этом случае все в порядке: один файл, запрошенный из нескольких окон, качается единожды - для всех "клиентов".
Сообщить модератору   Записан
Сергей
Beta tester
*****

Репутация: +9/-2
Offline Offline

Сообщений: 621



« Ответ #13 : 23 января 2007, 17:51:34 »

DenZzz
Цитировать
Контент статический, а данные каждый раз разные? Так бывает?
Да. Я привел пример выше.

Цитировать
Представь в локальной сети 10 пользователей в Опере ходят через HC одновременно по одному фотоальбому в Инете!
Я в курсе. Тут виноват будет HC.
Просто не ожидал такого странного поведения от IE.

Проблема есть. Хотелось бы ее решить.
Сообщить модератору   Записан
Сергей
Beta tester
*****

Репутация: +9/-2
Offline Offline

Сообщений: 621



« Ответ #14 : 23 января 2007, 17:55:46 »

Цитировать
У Оперы в этом случае все в порядке: один файл, запрошенный из нескольких окон, качается единожды - для всех "клиентов".

Почему бы в HC не реализовать подобное? Понимаю что сложно. Но ведь сделали норвежцы? Чем мы хуже?
Сообщить модератору   Записан
Oneri
Новичок
*

Репутация: +2/-0
Offline Offline

Сообщений: 34


« Ответ #15 : 23 января 2007, 18:07:47 »

Цитировать
У Оперы в этом случае все в порядке: один файл, запрошенный из нескольких окон, качается единожды - для всех "клиентов".

Почему бы в HC не реализовать подобное? Понимаю что сложно. Но ведь сделали норвежцы? Чем мы хуже?

В опере данную фичу реализовать достаточно легко т.к. сам браузер полностью контролирует поцесс загрузки используя очередь, а НС не знает что у него запросят дальше и в какое время.

Сообщить модератору   Записан
DenZzz
Модератор
*****

Репутация: +179/-11
Offline Offline

Сообщений: 5589



« Ответ #16 : 23 января 2007, 20:29:58 »

В опере данную фичу реализовать достаточно легко т.к. сам браузер полностью контролирует поцесс загрузки используя очередь, а НС не знает что у него запросят дальше и в какое время.

Не вижу принципиальной разницы! Как будто Опера сама знает, по какой ссылке дальше кликнет пользователь или какую закладку откроет! Подмигивающий
У HC тоже есть очередь активных закачек, которой он может управлять по своему усмотрению!
Сообщить модератору   Записан
Qua
Новичок
*

Репутация: +1/-0
Offline Offline

Сообщений: 22



« Ответ #17 : 24 января 2007, 01:23:43 »

Тот мой пост, что вы видите самым первым - просто наболело, далее трезво.  Подмигивающий

Объясню шире - может прояснит чего...

Преамбула:
Я часто пользуюсь различными картографическими сервисами NASA, MS Local.Live, GoogleMaps, поделками вроде Яndex.Карты и другими. Причем, к одному и тому же сервису обращаюсь разными прогами (мне действительно так удобнее - разные по возможностям компы, да и цели). Пользуюсь всем этим непременно в связке с Ханжой Кешкой (HandyCache служит чем-то вроде универсального и понятно устроенного единого кеша), с которым худо-бедно наплевать на несовместимость всех этих софтин.  Прикольно

Проблема:
Единственное что меня сильно огорчает (см. выше) при работе HC - многочисленные повторения закачки одних и тех же ресурсов. Это хорошо видно в нижней части "Монитора" - одновременно в несколько потоков качается один и тот же URL. Хроническая "болезнь" практически всех картографических прог.
Собственно, на одном компе (домашнем) эта проблема не очень-то заметна, на других (привет из прошлого) - дюже достаёт. Паразитный трафик! В такой нужный момент, на таком хилом канале.

Просьба:
Я понимаю, что виноват не столько HC, сколько проги - запрашивают один и тот же ресурс по нескольку раз... Но, ведь можно наверное реализовать проверку - загружается ли запрашиваемая страница в данный момент (если URL закачивается, то не повторять загрузки, а игнорировать запрос или взять из кэша).

То, что подчеркнуто и есть новое предложение.

Вопрос со статическим контентом и разными данными принципиально не настраиваемый?

P.S. Трезво тоже не то, надеюсь основную мысль донёс.
А, в целом, Кешка - мой лучший друг для связи с миром!  Веселый
Сообщить модератору   Записан

И др., и пр., и т.д., и т.п.
NothingAnother
Beta tester
*****

Репутация: +7/-2
Offline Offline

Сообщений: 434

Spoiler


« Ответ #18 : 24 января 2007, 07:50:06 »

Вопрос со статическим контентом и разными данными принципиально не настраиваемый?
Прежде всего надо определиться с терминами. Если контент (иначе - содержимое) статичен, то о каких различных данных можно говорить?! Это просто два различных представления (человеческое и машинное) одного и того же понятия. Уточни свой вопрос так, чтобы это можно было понять не на уровне "наверное, он имел в виду..."
Сообщить модератору   Записан

Мы тоже не всего читали Шнитке!..
© В. Вишневский
DenZzz
Модератор
*****

Репутация: +179/-11
Offline Offline

Сообщений: 5589



« Ответ #19 : 24 января 2007, 08:10:46 »

Qua

Цитировать
Вопрос со статическим контентом и разными данными принципиально не настраиваемый?

Собственно, выше уже предложили, как можно вручную исключить динамический контент из сферы действия предлагаемой опции, - через список "Не обновлять" или "Белый список".
Сообщить модератору   Записан
Страниц: [1] 2  Все   Вверх
  Отправить эту тему    Печать  

 
Перейти в: