The OpenNET Project / Index page

[ новости /+++ | форум | wiki | теги | ]

форумы  помощь  поиск  регистрация  майллист  вход/выход  слежка  RSS
"Tar-архивы, отдача директории, отдача по частям и прочее"
Вариант для распечатки  
Пред. тема | След. тема 
Форум WEB технологии (Apache, http-серверы)
Изначальное сообщение [ Отслеживать ]

"Tar-архивы, отдача директории, отдача по частям и прочее"  +/
Сообщение от kuraga (ok) on 28-Дек-11, 15:20 
Не знаю, как это делают... Есть файлы на диске. Надо их "скачать из браузера". Ну, обычно мы делаем tar-архив, и его отдаем. Но это удвоение места на диске! А не делают этот tar "на лету", отдавая нужный кусочек, потом следующий... А?
Ответить | Правка | Cообщить модератору

Оглавление

Сообщения по теме [Сортировка по времени | RSS]


1. "Tar-архивы, отдача директории, отдача по частям и прочее"  +/
Сообщение от Zl0 (ok) on 28-Дек-11, 20:21 
> Не знаю, как это делают... Есть файлы на диске. Надо их "скачать
> из браузера". Ну, обычно мы делаем tar-архив, и его отдаем. Но
> это удвоение места на диске! А не делают этот tar "на
> лету", отдавая нужный кусочек, потом следующий... А?

Что вам мешает написать на любом cgi скрипт который будет готовить временный тар для скачивания из тех файлов которые вам нужны?

Ответить | Правка | ^ к родителю #0 | Наверх | Cообщить модератору

2. "Tar-архивы, отдача директории, отдача по частям и прочее"  +/
Сообщение от kuraga (ok) on 28-Дек-11, 20:29 
>> Не знаю, как это делают... Есть файлы на диске. Надо их "скачать
>> из браузера". Ну, обычно мы делаем tar-архив, и его отдаем. Но
>> это удвоение места на диске! А не делают этот tar "на
>> лету", отдавая нужный кусочек, потом следующий... А?
> Что вам мешает написать на любом cgi скрипт который будет готовить временный
> тар для скачивания из тех файлов которые вам нужны?

Так в этом и вопрос! Верно ли, что TAR(FILE1) + TAR(FILE2) == TAR({FILE1,FILE2}) ? (A+B - конкатенация.)

Есть большая дира, и пользователь должен иметь возможность качать ее тар с любого блока (байта). И если связь оборвется, на диске не должно оставаться данных (большого их куска), которые он не скачал.

Ответить | Правка | ^ к родителю #1 | Наверх | Cообщить модератору

5. "Tar-архивы, отдача директории, отдача по частям и прочее"  +/
Сообщение от Square (ok) on 29-Дек-11, 08:51 
>[оверквотинг удален]
>>> из браузера". Ну, обычно мы делаем tar-архив, и его отдаем. Но
>>> это удвоение места на диске! А не делают этот tar "на
>>> лету", отдавая нужный кусочек, потом следующий... А?
>> Что вам мешает написать на любом cgi скрипт который будет готовить временный
>> тар для скачивания из тех файлов которые вам нужны?
> Так в этом и вопрос! Верно ли, что TAR(FILE1) + TAR(FILE2) ==
> TAR({FILE1,FILE2}) ? (A+B - конкатенация.)
> Есть большая дира, и пользователь должен иметь возможность качать ее тар с
> любого блока (байта). И если связь оборвется, на диске не должно
> оставаться данных (большого их куска), которые он не скачал.

Ну, вы можете формировать тар нужных каталогов на лету и отдавать его сразу пользователю без образования временных файлов. правда тогда докачки не будет.
Но вообще это плохая идея - в ответ на запрос пользователя нагружать систему созданием больших временных файлов. Плохо сказывается на производительности. Отдавать пользователю просто статический контент лежащий на диске - намного дешевле.

Ответить | Правка | ^ к родителю #2 | Наверх | Cообщить модератору

3. "Tar-архивы, отдача директории, отдача по частям и прочее"  +/
Сообщение от Etch on 29-Дек-11, 01:17 
Это вполне реально сделать, можно даже докачку реализовать если знать размер всех файлов и их порядок в архиве. Поищите в инете описание формата tar-архивов, он очень простой.
Ответить | Правка | ^ к родителю #0 | Наверх | Cообщить модератору

4. "Tar-архивы, отдача директории, отдача по частям и прочее"  +/
Сообщение от Andrey Mitrofanov on 29-Дек-11, 07:21 
> tar-архивов, он очень простой.

И разнообразный! B) http://www.gnu.org/software/tar/manual/html_node/Formats.html

Ответить | Правка | ^ к родителю #3 | Наверх | Cообщить модератору

6. "Tar-архивы, отдача директории, отдача по частям и прочее"  +/
Сообщение от Etch on 29-Дек-11, 09:30 
>> tar-архивов, он очень простой.
> И разнообразный! B) http://www.gnu.org/software/tar/manual/html_node/Formats.html

Для данной задачи нужно реализовать только один из форматов, лишь бы скачавший смог его распаковать.

Ответить | Правка | ^ к родителю #4 | Наверх | Cообщить модератору

7. "Tar-архивы, отдача директории, отдача по частям и прочее"  +/
Сообщение от kuraga (ok) on 29-Дек-11, 12:17 
> Это вполне реально сделать, можно даже докачку реализовать если знать размер всех
> файлов и их порядок в архиве. Поищите в инете описание формата
> tar-архивов, он очень простой.

Да, просто хотел услышать размышления вокруг моей идеи.

Tar делится на фиксированные блоки, в одном блоке не более одного файла. То есть, если фиксировать порядок файлов и их размер, то все тип-топ.

P.S. Только по формату не понял, где указывается ПУТЬ (не имя) файла и номер блока, номер относительного текущего пакуемого файла.

Ответить | Правка | ^ к родителю #3 | Наверх | Cообщить модератору

Архив | Удалить

Рекомендовать для помещения в FAQ | Индекс форумов | Темы | Пред. тема | След. тема




Спонсоры:
Inferno Solutions
Hosting by Hoster.ru
Хостинг:

Закладки на сайте
Проследить за страницей
Created 1996-2021 by Maxim Chirkov
Добавить, Поддержать, Вебмастеру