GZIP siqish nima?
GZIP — bu RFC 1952 tomonidan belgilangan yo'qotishsiz fayl siqish formatidir. U DEFLATE algoritmi (RFC 1951) tomonidan ishlab chiqarilgan yukni o'rab oladi; bu algoritm takrorlanuvchi ma'lumotlarni kompakt bayt oqimiga siqish uchun LZ77 orqa havolalarini Huffman kodlash bilan birlashtiradi.
GZIP siqish qanday ishlaydi?
Sizning kiritmangiz mahalliy CompressionStream('gzip') API yordamida butunlay brauzeringizda qayta ishlanadi. Yuqori darajadagi qadamlar:
- Vosita matningiz yoki faylingizni bayt oqimiga aylantiradi (matn kiritmasi uchun UTF-8).
- Bu baytlar
gzipformatiga sozlanganCompressionStreamorqali o'tkaziladi. - Brauzer DEFLATE qo'llaydi: surilma oynali LZ77 o'tishi takrorlanuvchi ketma-ketliklarni topadi va Huffman kodlash umumiy belgilarga qisqaroq kodlarni belgilaydi.
- DEFLATE yuki atrofiga 10 baytlik gzip sarlavhasi va 8 baytlik footer (asl ma'lumotning CRC32'si va asl uzunlik 2^32 ga bo'linganda qoldiq) o'raladi, natijada standart .gz konteyner hosil bo'ladi.
- Natija matn kiritmalari uchun Base64 yoki o'n oltilik shaklda ko'rsatiladi yoki ikkilik kiritmalar uchun yuklab olinadigan .gz fayl sifatida taklif qilinadi.
Nima uchun GZIP bilan siqish kerak?
- Kichikroq yuklar: matn, JSON, HTML, CSS va manba kodi odatda asl o'lchamining ulushiga qisqaradi.
- Sanoat standarti: GZIP deyarli har qanday HTTP server, CDN, brauzer, arxivlash vositasi va dasturlash tili standart kutubxonasi tomonidan tushuniladi.
- Maxfiylik: siqish to'liq brauzeringizda sodir bo'ladi. Kiritma hech qachon serverlarimizga yetib bormaydi.
- Ikki tomonlama tayyor: chiqish
gunzipCLI bilan, HTTPContent-Encoding: gzipbilan va Python, Node.js, Go, Java yoki Rust'dagi har qanday RFC 1952 o'quvchisi bilan ochiladi.
GZIP siqishning keng tarqalgan qo‘llanilishlari qanday?
GZIP butun web bo'ylab va buyruq qatori vositalarida qo'llaniladi:
- HTTP uzatish: veb-serverlar javoblarni GZIP bilan siqib, sahifalar tarmoq orqali tezroq yuklanadi.
- Loglarni arxivlash: uzoq muddatli server loglari disk ishlatishni kamaytirish uchun .gz fayllar sifatida saqlanadi.
- Zaxiralash va paketlar: tarballlar (.tar.gz) ko'chma tarqatish uchun butun katalog daraxtlarini siqadi.
GZIP siqish misoli qanday ko‘rinadi?
Ko'p takrorlanadigan maydon nomlari bo'lgan 1 KB JSON hujjati odatda taxminan 200–300 baytga siqiladi — to'rt-besh barobar o'lcham kamayishi. Katta matn loglari ko'pincha 90% yoki undan ko'proqqa siqiladi. Allaqachon siqilgan kiritmalar (JPEG, PNG, MP4, ZIP) bundan keyin qisqarmaydi va GZIP ramkalash tufayli bir necha baytga o'sishi mumkin.
Ushbu GZIP siquvchi standart RFC 1952 chiqishini to'g'ridan-to'g'ri brauzeringizda ishlab chiqaradi. Uzatishdan oldin yukni kichraytirayapsizmi yoki arxivlash uchun .gz fayl yaratayapsizmi, natija tarmoqdagi har qanday GZIP-ga moslashgan vosita bilan birga ishlaydi.