Нужно написать ускоритель DialUp-а. простой прокси уже дан.
Главная проблема в том, как проверить нет ли уже запрашиваемого сайта в кэше программы (и, что тоже вызывает неболшое затруднение-ускоритель должен быть независимым от браузера).
Мне не нужен код, а просто идея как это сделать.
Re: Плиз помогите с проектом. Каким образом можно сделать?
Здравствуйте, tatarinNSK, Вы писали:
NSK>Нужно написать ускоритель DialUp-а. простой прокси уже дан. NSK>Главная проблема в том, как проверить нет ли уже запрашиваемого сайта в кэше программы (и, что тоже вызывает неболшое затруднение-ускоритель должен быть независимым от браузера). NSK>Мне не нужен код, а просто идея как это сделать.
Главная идея — это собственная реализация прокси-сервера.
Для примера можно посмотреть на squid и другие аналоги
идея же заключается в следующем:
1. прокси слушает на выбранном порте запросы от браузера,
2. смотрит, есль ли запрашиваемый ресурс в собственном кеше,
3. если нет ресурса в кеше, то:
a. запрашивает ресурс извне,
b. кладет его к себе в кеш,
c. отдает браузеру ресурс,
4. если ресурс есть в кеше, то:
a. если истек период кеширования ресурса, то см. пункт 3,
b. забирает ресурс из собственного кеша,
c. отдает браузеру ресурс,
Естественно, браузер должен быть настроен на работу через этот прокси.
Я так понимаю ты пишешь что-то вроде трафик компрессора (как например www.toolnet.net)?
Если нужен перехват в любом случае (независимо от желания клиента) — надо писать некий аналог firewall-а который будет перехватывать запросы браузера, и возвращать ему нужный контент.
Если перехват добровольный — то просто нужно написать аналог прокси сервера, который будет крутиться на компьютере пользователя, и который пользователь будет у себя в настройках браузера указывать как прокси сервер.
Решать когда обращаться к прокси серверу, а когда брать страничку из своего браузерного кэша — браузер отлично умеет и сам, и тут ему лучше не мешать
Как это все крутится вживую можешь посмотреть на том же самом www.toolnet.net
NSK>stasukas, спасибо! NSK>но проблема в том, что соответствующий прокси уже дан, а кэш должен сохраняться у пользователя на машине NSK>(как в Firefox`e).
NSK>сейчас меня мучает только один вопрос: как перехватить запрос клиента (какой сайт выбрал, что кликнул на сайте...);-система не зависит от браузера;
NSK>пожалуйста, подскажите кто чем может — очень нужно!
... << RSDN@Home 1.1.4 stable rev. 510>>
Re[3]: Плиз помогите с проектом. Каким образом можно сделать
Здравствуйте, tatarinNSK, Вы писали:
NSK>но проблема в том, что соответствующий прокси уже дан, а кэш должен сохраняться у пользователя на машине NSK>(как в Firefox`e).
Можно поставить кеширующий прокси на локальную машину и настроить его пользоваться дополнительным внешним прокси (при необходимости).
NSK>сейчас меня мучает только один вопрос: как перехватить запрос клиента (какой сайт выбрал, что кликнул на сайте...);-система не зависит от браузера;
Все, что надо я описал в предыдущем посте. Ковырять надо оттуда
... << RSDN@Home 1.2.0 alpha rev. 619>>
Now playing: Armin van Buuren — A State Of Trance 2004 (CD2)
Re[4]: Плиз помогите с проектом. Каким образом можно сделать
Нет, все-таки тема не закрыта
тут небольшое уточнение: ускорение может быть отключено клиентом. Как внешний прокси об этом узнает?
т.е. когда я запрашиваю сайт и картинки уже есть в кэше, то внешнему как-то надо подать команду, что скачивать без картинок. как это сделать. Еще нужно сжатие текста и тоже отключаемое.
В общем, как проинформировать внешний(как я понимаю, внутренний просто отключается) прокси о состоянии вкл\выкл?
Re[3]: Плиз помогите с проектом. Каким образом можно сделать
От:
Аноним
Дата:
09.12.05 15:32
Оценка:
Здравствуйте, tatarinNSK, Вы писали:
NSK>Нет, все-таки тема не закрыта NSK>тут небольшое уточнение: ускорение может быть отключено клиентом. Как внешний прокси об этом узнает? NSK>т.е. когда я запрашиваю сайт и картинки уже есть в кэше, то внешнему как-то надо подать команду, что скачивать без картинок. как это сделать. Еще нужно сжатие текста и тоже отключаемое. NSK>В общем, как проинформировать внешний(как я понимаю, внутренний просто отключается) прокси о состоянии вкл\выкл?
страница качаются отдельно, картинки отдельно (отдельными GET запросами). Посему если картинка уже есть то просто не делай GET для нее а сразу отдавай из кеша. И RFC почитай
Re[4]: Плиз помогите с проектом. Каким образом можно сделать
даже стыдно еще один вопрос задавать
но придеться-нужно добавить сжимание текста в реальном времени на внешнем прокси и его разархивирование наа внутреннем ребят, очень надо, плиз помогите, а то до понедельника точно не успею