39 lines
3.8 KiB
Markdown
39 lines
3.8 KiB
Markdown
|
---
|
|||
|
aliases:
|
|||
|
tags:
|
|||
|
- maturity/🌱
|
|||
|
date: 2024-09-14
|
|||
|
zero-link:
|
|||
|
- "[[../../meta/zero/00 Разработка|00 Разработка]]"
|
|||
|
parents:
|
|||
|
- "[[../fundamental/Сжатие данных|Сжатие данных]]"
|
|||
|
linked:
|
|||
|
---
|
|||
|
GZIP (GNU ZIP) — это формат сжатия данных и программное обеспечение, разработанное для сжатия и распаковки файлов. GZIP был создан в 1992 году Жан-Лу Гейли и Марком Адлером как замена более ранних программ сжатия данных, таких как Compress. GZIP основан на алгоритме DEFLATE, который сочетает в себе методы LZ77 (Lempel-Ziv 1977) и кодирование Хаффмана для эффективного сжатия данных.
|
|||
|
|
|||
|
**Основные характеристики GZIP:**
|
|||
|
- **Эффективное сжатие**: GZIP обеспечивает высокую степень сжатия данных, что позволяет значительно уменьшить размер файлов, особенно текстовых.
|
|||
|
- **Скорость**: GZIP работает быстро и является эффективным как для сжатия, так и для распаковки данных.
|
|||
|
- **Поддержка различных форматов**: GZIP сжимает данные в формате .gz, но не сохраняет структуру файлов и директорий (для этого используются архиваторы вроде tar).
|
|||
|
- **Универсальность**: GZIP широко поддерживается в Unix-подобных системах (Linux, BSD), а также доступен на Windows и других платформах.
|
|||
|
- **Использование заголовков**: GZIP добавляет к сжатому файлу заголовок, который содержит метаданные, такие как имя оригинального файла, временная метка и контрольная сумма CRC32 для проверки целостности данных.
|
|||
|
|
|||
|
**Применения GZIP:**
|
|||
|
- **Сжатие файлов**: Используется для сжатия отдельных файлов, что экономит место на диске и уменьшает время передачи данных.
|
|||
|
- **Веб-технологии**: GZIP часто используется для сжатия веб-контента (HTML, CSS, JavaScript) перед отправкой с сервера на клиент, что ускоряет загрузку веб-страниц.
|
|||
|
- **Архивирование**: В Unix-подобных системах GZIP часто используется вместе с утилитой tar для создания архивов (tar.gz или .tgz), которые содержат несколько файлов и директорий.
|
|||
|
- **Протоколы передачи данных**: Протоколы, такие как HTTP и FTP, поддерживают сжатие GZIP для уменьшения объема передаваемых данных.
|
|||
|
|
|||
|
**Реализации:**
|
|||
|
- [[../../../../_inbox/Реализация GZIP в Java|Реализация GZIP в Java]]
|
|||
|
- [[../../../../_inbox/GZIP сжатие в Nginx|GZIP сжатие в Nginx]]
|
|||
|
|
|||
|
***
|
|||
|
## Мета информация
|
|||
|
**Область**:: [[../../meta/zero/00 Разработка|00 Разработка]]
|
|||
|
**Родитель**:: [[../fundamental/Сжатие данных|Сжатие данных]]
|
|||
|
**Источник**::
|
|||
|
**Создана**:: [[2024-09-14]]
|
|||
|
**Автор**::
|
|||
|
### Дополнительные материалы
|
|||
|
-
|