Struchkov Mark
eacf800157
All checks were successful
continuous-integration/drone/push Build is passing
47 lines
4.2 KiB
Markdown
47 lines
4.2 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]]
|
||
- [[../devops/nginx/GZIP сжатие в Nginx|GZIP сжатие в Nginx]]
|
||
|
||
***
|
||
## Мета информация
|
||
**Область**:: [[../../meta/zero/00 Разработка|00 Разработка]]
|
||
**Родитель**:: [[../fundamental/Сжатие данных|Сжатие данных]]
|
||
**Источник**::
|
||
**Создана**:: [[2024-09-14]]
|
||
**Автор**::
|
||
### Дополнительные материалы
|
||
-
|
||
### Дочерние заметки
|
||
<!-- QueryToSerialize: LIST FROM [[]] WHERE contains(Родитель, this.file.link) or contains(parents, this.file.link) -->
|
||
<!-- SerializedQuery: LIST FROM [[]] WHERE contains(Родитель, this.file.link) or contains(parents, this.file.link) -->
|
||
- [[Реализация GZIP в Java]]
|
||
- [[GZIP сжатие в Nginx]]
|
||
<!-- SerializedQuery END -->
|
||
|