|
|
|
| Потребовалось перенести на сервер большой объём информации. Поскольку мелкие файлы передаются долго, то я заархивировал каждую папку в самостоятельный архив, в результате чего получились архивные файлы по 350-400 метров, каждый из которых закачивается за пару минут.
И тут случайно обнаружилось, что архив на сервере не всегда восстанавливается полностью. Серверный скрипт для проверки не идет - то не хватает места, то не снимаемое ограничение по времени работы скрипта, то сбрасывает без объяснения причин.
Хочу просканировать из денвера, но скачивать каждую страницу - это долго и трафикоемко. Можно ли как-то проверить сам факт наличия страниц, не скачивая их полностю? | |
|
|
|
|
|
|
|
для: Владимир55
(01.02.2010 в 22:40)
| | Используйте сокеты ) | |
|
|
|
|
|
|
|
для: Владимир55
(01.02.2010 в 22:40)
| | для начала нужно сравнить crc32 файлов архива. Это мгновенный практически тест.
Вероятность того, что архив искажен, а crc32 у него совпала 1/4000000000.
Ну умножьте на число архивов. Все равно будет довольно мало.
Парсинг здесь настолько не при чем, что подмывает... | |
|
|
|
|
|
|
|
для: Trianon
(01.02.2010 в 23:58)
| | Это я сделал с самого начала. Только не crc32, а md5.
Архивы прошли нормально, но разархивирует их сервис, встроенный в ВДС. И я вижу, что папок меньше, чем посылалось. Тогда я повторил эту операцию и папок стало столько, сколько должно быть. Но неизвестно, есть ли недочеты в количестве файлов. | |
|
|
|
|
|
|
|
для: Владимир55
(02.02.2010 в 00:18)
| | md5 на несколько порядков более ресурсоемкая функция.
Я вообще обычно думаю, перед тем, как советовать :( | |
|
|
|
|
|
|
|
для: Trianon
(02.02.2010 в 00:19)
| | Ресурсов хватило - проверка уже произведена.
Вы полагаете, что нужно повторить ее с crc32? | |
|
|
|
|
|
|
|
для: Владимир55
(02.02.2010 в 00:22)
| | нет, конечно.
Но процесс распаковки , если его логгировать, и проверять код завершения - дает детерминированный результат.
Тогда я вообще не понимаю, в чем проблема.
Полагал, Вы решаете, как вычленить поломавшиеся архивы. | |
|
|
|
|
|
|
|
для: Trianon
(02.02.2010 в 00:24)
| | Что происходит в недрах ВДС, мне неведомо. Процесс разархивации длится довольно долго и браузер связи с панелью закрывается. Может, там все нормально. А может и нет. Как узнать? Опросить каждый файл и тем самым проверить его наличие.
Разве не так? | |
|
|
|
|
|
|
|
для: Владимир55
(02.02.2010 в 00:30)
| | процесс разархивации порождает вывод лога/отчета на экран.
Этот вывод можно (перенаправив) писать в файл.
А файлы логов качать/смотреть браузером.
Можно перенаправлять не в файл, а в поток браузеру.
Но это ... ~ ~ ~ | |
|
|
|
|
|
|
|
для: Trianon
(02.02.2010 в 00:32)
| | Нет этого в Панели ВДС.
Вообще ничего нет: процесс начат - процесс завершен. | |
|
|
|
|
|
|
|
для: Владимир55
(02.02.2010 в 00:30)
| | И я может и дилетант в общении с ВДС, но мне казалось, что по SSH-протоколу там открывается обычное консольное окно.
С обычной командной строкой.
Что хочешь , то и запускай. Куда хочешь, туда и смотри.
Хоть в недра, хоть в гланды, хоть в выхлопную трубу. | |
|
|
|
|
|
|
|
для: Trianon
(02.02.2010 в 00:37)
| | А, вот оно что!
По SSH наверняка можно практически всё, но я ограничиваюсь панелью. SSH избегаю из-за отсутствия русскоязычного интерфейса. Да и вообще - Панель проще. | |
|
|
|
|
|
|
|
для: Владимир55
(02.02.2010 в 00:40)
| | Но Вы же апологет применения php для любой нужды - можно же самому (из php) архиватор запускать, перенаправляя поток.
Правда, таки да, один раз нужно будет залезть в консоль и там найти, где размещен этот архиватор, и какие команды он кушает.
По-моему, овчинка стоит того, чтобы поступиться принципами.
Какой никакой, а скилл управляемого запуска из скриптов всяких полезных утилит появится. | |
|
|
|
|
|
|
|
для: Trianon
(02.02.2010 в 00:42)
| | Если бы я знал, что возникнет такая неопределенность, то, вероятно, предпринял бы какие-то меры.
Сейчас же я ищу способ просканировать наличие файлов, не скачивая их полностью. Если такого способа нет, то придется скачать... | |
|
|
|
|
|
|
|
для: Владимир55
(02.02.2010 в 00:51)
| | Мне нужно просто получить и проанализировать ответ сервера - есть файл или нет его. Вот как это сделать? | |
|
|
|
|
|
|
|
для: Владимир55
(02.02.2010 в 00:54)
| | запросом HEAD - задача по определению размера удаленного файла в одноименном разделе. | |
|
|
|
|
|
|
|
для: Trianon
(02.02.2010 в 01:19)
| | Что Вы имеете в виду? | |
|
|
|
|
|
|
|
для: Владимир55
(02.02.2010 в 01:31)
| | Раздел "Задачи" http://softtime.ru/info/task.php
Задача 13 - Определение размера файла на удалённом хосте (20.03.06) -
http://softtime.ru/info/task.php?id_article=83
Если Вас интересует мое решение - вот:
http://www.softtime.ru/forum/read.php?id_forum=7&id_theme=15132 | |
|
|
|
|
|
|
|
для: Trianon
(02.02.2010 в 01:37)
| | Виртуозно. | |
|
|
|
|
|
|
|
для: Владимир55
(02.02.2010 в 00:54)
| | У менеджера закачек TeleportPro существует именно такая функция как Вам нужно - закачка структуры сайта без заполнения ее данными. Закачка происходит очень быстро, правда есть ограничение на кол-во файлов (500), но ее можно преодолеть указывая каждый раз конкретную директорию. А вообще парсинг сайта это другая задача. | |
|
|
|