GZIP कम्प्रेशन म्हणजे काय?
GZIP हे RFC 1952 द्वारे परिभाषित लॉसलेस कम्प्रेशन फाइल फॉर्मॅट आहे. हे DEFLATE अल्गोरिदम (RFC 1951) द्वारे तयार केलेले payload गुंडाळते, जे LZ77 back-references आणि Huffman coding एकत्र करून पुनरावृत्ती डेटा एका कॉम्पॅक्ट byte stream मध्ये संकुचित करते.
GZIP कम्प्रेशन कसे कार्य करते?
तुमचे इनपुट नेटिव्ह CompressionStream('gzip') API वापरून पूर्णपणे तुमच्या ब्राउझरमध्ये प्रक्रिया केले जाते. उच्च-स्तरीय टप्पे:
- साधन तुमचा मजकूर किंवा फाइल bytes च्या stream मध्ये रूपांतरित करते (मजकूर इनपुटसाठी UTF-8).
- ते bytes
gzipफॉर्मॅटसाठी कॉन्फिगर केलेल्याCompressionStreamमधून दिले जातात. - ब्राउझर DEFLATE लागू करतो: sliding-window LZ77 pass पुनरावृत्ती sequences शोधतो, आणि Huffman coding सामान्य symbols ला लहान codes नियुक्त करते.
- DEFLATE payload भोवती 10-byte gzip header आणि 8-byte footer गुंडाळले जाते, एक मानक .gz container तयार करते.
- निकाल मजकूर इनपुटसाठी Base64 किंवा hex म्हणून रेंडर केला जातो, किंवा बायनरी इनपुटसाठी downloadable .gz फाइल म्हणून दिला जातो.
GZIP ने का संकुचित करायचे?
- लहान payloads: मजकूर, JSON, HTML, CSS आणि source code सामान्यतः त्यांच्या मूळ आकाराच्या अंशापर्यंत संकुचित होतात.
- उद्योग मानक: GZIP जवळजवळ प्रत्येक HTTP सर्व्हर, CDN, ब्राउझर, archive साधन आणि प्रोग्रामिंग भाषा मानक लायब्ररीद्वारे समजली जाते.
- गोपनीयता: कम्प्रेशन पूर्णपणे तुमच्या ब्राउझरमध्ये होते. इनपुट कधीही आमच्या सर्व्हरपर्यंत पोहोचत नाही.
- Round-trip तयार: आउटपुट
gunzipCLI सह, HTTPContent-Encoding: gzipसह, आणि Python, Node.js, Go, Java, किंवा Rust मध्ये कोणत्याही RFC 1952 reader सह विस्तारित होते.
GZIP कम्प्रेशनचे सामान्य उपयोग काय आहेत?
GZIP वेब आणि कमांड-लाइन tooling मध्ये वापरले जाते:
- HTTP transfer: वेब सर्व्हर GZIP ने प्रतिसाद संकुचित करतात जेणेकरून पाने नेटवर्कवर जलद लोड होतात.
- Log archival: दीर्घकालीन सर्व्हर logs डिस्क वापर कमी करण्यासाठी .gz फाइल्स म्हणून संग्रहित केले जातात.
- Backups आणि bundles: tarballs (.tar.gz) पोर्टेबल वितरणासाठी संपूर्ण directory trees संकुचित करतात.
GZIP कम्प्रेशन उदाहरण कसे दिसते?
अनेक पुनरावृत्ती field names असलेला 1 KB JSON document सामान्यतः सुमारे 200–300 bytes पर्यंत संकुचित होतो — चार ते पाचपट आकार कपात. मोठे मजकूर logs अनेकदा 90% किंवा त्याहून अधिक संकुचित होतात. आधीच संकुचित इनपुट (JPEG, PNG, MP4, ZIP) आणखी संकुचित होणार नाहीत आणि काही bytes GZIP framing ने वाढू शकतात.
हा GZIP कॉम्प्रेसर थेट तुमच्या ब्राउझरमध्ये मानक RFC 1952 आउटपुट तयार करतो. तुम्ही प्रसारणापूर्वी payload संकुचित करत असलात किंवा archival साठी .gz फाइल तयार करत असलात, निकाल नेटवर्कवरील प्रत्येक GZIP-जागरूक साधनासह interoperates करतो.