| Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате |
| Форум программистов > C/C++: Системное программирование и WinAPI > Архивация (сжатие) файлов на компах в сети. |
| Автор: alexander13 10.11.2011, 01:09 |
| Всем привет, нужна консультация. Не прошу писать код. Вот какая идея: есть 2 программки: клиент и сервер, есть локальная сеть, на всех компах сети установлена программа клиент, которая берет кусок файла архивирует его по алгоритму bzip2 и выдает на сервер массив байт, который последовательно записывается в выходной файл. Интересно мнение людей которые писали уже архиваторы или сталкивались с алгоритмами сжатия данных, такое вообще реально?. Вот прикинул как работает: 1. Сервер получает файл, который надо архивировать, он его разбивает на куски (блоки) n-ой длины (зависит от того сколько машин в сети). 2. После каждый блок помечается индексом следования и отправляется на клиентскую программку (локальная машина), которая входной файл будет архивировать. 3. на выходе клиентского приложения получаем массив байт и номер (очередность записи в финальный файл - итог архивации) и посылаем этот массив на сервер. 4. Сервер берет и обрабатывает, составляет общий массив байт (с учетом номера, который указывает следования клиентских массивов) и записывает в файл с расширением .bz2 (к примеру). Может кто, может помочь с материалом (где почитать, что почитать p.s. Всем спасибо, и да я в курсе, что такой подход будет меньше сжимать информации, за то машина (сервер) будет минимально загружаться и вообще этот топик создан, потому что мне интересно. Всем еще раз спасибо |