Настоящий Флеймер
Зарегистрирован: 16 August 2006
Сообщения: 1510
Примеры кода: 0
|
Re: Реентерабельность хандлеров |
05 December 2007 14:43 |
|
|
|
|
Делайте службу, которая будет заниматься загрузкой. Да, кстати это тоже идея. Может этот вариант и лучше. Я сделал так. Паук - это ответвленный из глобал-асах поток. Я их делаю все время. Этот поток в своем потоке рекурсивно обходит сайт источник, скачивает, парсит странички (делает из них фишинговые странички) - и укладывает их в кеш.
Все-все-все ссылки в фишинговой страничке - это просто вызовы хандлера. Даже CSS - для которого сделан враппер - более быстрого парсинга, чем для просто HTML. Замены ссылок URL(' ') - пример парсинга CSS - на скринчике. Это уже GHOST-css, который достали из своего кеша.
При парсинге, в кеш также укладываются будущие ссылки, которые НАДО скачать будет позже. Маркеры будущих скачиваемых страничек.
Теперь хандлер. Он должен и без паука работать по идее. Ну на страничке ж может быть и 1000 рисунков. Те докачивать он должен САМ. Это время конечно. И парсинг тоже не быстрый чтоб из оригинальной странички сделать Ghost-страничку... И в базу укладка не быстрая - особенно для ДЛИНННЫХ страничек. Хотя скорее всего мои вчерашние заморочки с НЕБЫСТРОЙ укладкой просто временной блокировкой базы были вызваны... Надо лочить укладку в базу и тестировать скорость. Ща сижу и пытаюсь распихать по хандлеру SyncLock - посмотрю что будет...
Насчет ВРЕМЕННО НЕДОСТУПЕН - это идея. Только не по 10 секунд, конечно, а например 1 сек. Тогда можно КОЕ ЧТО из хандлера делать асинхронно. Это было бы преотлично.
Но... заморочка в том, что хандлер тут используется НЕ ДЛЯ РИСУНКОВ, как обычно, а как ДВИЖОК. Те ОН И HTML-выплевывает в поток браузера и Ява-скрипты. Те он тут - фактически как замена стандартного ASP2-конвеера используется. И что будет с фишинговым сайтом - если у него временно недоступна следующая целевая страничка, которую вызывал юзер своим тычком по ссылке? Но для бинарников асинхронность - это отличное решение...
К сообщению приложен файл (см. оригинал).
|
|