GZIP સંકોચન શું છે?
GZIP RFC 1952 ભ્વારા વ્યાખ્યાયિત નિષ્કષતિ-રહિત સંકોચન ફાઇલ-ફોર્મેટ છે. તે DEFLATE ગણિત-ક્રમ (RFC 1951) દ્વારા ઉત્પન્ન પેલોડ ઘેરે છે — જે પુનરાવર્તી ડેટાને સંકુચિત બાઇટ-પ્રવાહમાં સંકોચવા LZ77 બેક-સંદર્ભોને Huffman coding સાથે જોડે છે.
GZIP સંકોચન કેવી રીતે કામ કરે છે?
ઇનપુટ native CompressionStream('gzip') API વડે સંપવૂર્ણ તમારા બ્રાઉભરમાં પ્રક્રિયાત થાય છે. ઉચ્ચ-સ્તરીય પગલાં:
- ટૂલ તમારા ટેક્સ્ટ અથવા ફાઇલને બાઇટ્સની નદીમાં ફેરવે છે (ટેક્સ્ટ ઇનપુટ માટે UTF-8).
- એ બાઇટ્સને
CompressionStreamમારફતે પસાર કરવામાં આવે છે, જેgzipફોર્મેટ માટે કૉન્ફિગર કરેલ હોય છે. - બ્રાઉઝર DEFLATE લાગુ કરે છે: એક સ્લાઇડિંગ-વિન્ડો LZ77 પાસ પુનરાવર્તિત ક્રમો શોધે છે, અને Huffman કોડિંગ સામાન્ય પ્રતીકોને ટૂંકા કોડ સોંપે છે.
- DEFLATE પેલોડની આસપાસ એક 10-બાઇટ gzip હેડર અને એક 8-બાઇટ ફૂટર (મૂળ ડેટાનો CRC32 તથા મૂળ લંબાઈ મોડ્યુલો 2^32) વીંટાળવામાં આવે છે, જેનાથી એક પ્રમાણભૂત .gz કન્ટેનર બને છે.
- ટેક્સ્ટ ઇનપુટ માટે પરિણામ Base64 અથવા hex તરીકે દર્શાવાય છે, દ્વિઅંકી ઇનપુટ માટે ડાઉનલોડયોગ્ય .gz ફાઇલ તરીકે આપવામાં આવે છે.
GZIP compress કેમ?
- નાના પેલોડ: ટેક્સ્ટ, JSON, HTML, CSS અને સ્રોત-સંકેત સામાન્યરીતે મળૂ કદના નાના ભાગમાં સંકુચિત થાય છે.
- ઉદ્યોગ-માનક: GZIP ને વ્યાવહારિક રીતે પ્રત્યેક HTTP સર્વર, CDN, બ્રાઉભર, સંગ્રાહ-ટૂલ, અને programming ભાષાની માનક library સમજે છે.
- ગોપનીયતા: સંકોચન સંપૂર્ણતણ તમારા બ્રાઉભરમાં થાય છે. ઇનપુટ ક્યારેય અમારા સર્વર સુધી પહોંચતો નથી.
- રાઉન્ડ-ટ્રિપ માટે તૈયાર: આઉટપુટ
gunzipCLI સાથે, HTTPContent-Encoding: gzipસાથે, અને Python, Node.js, Go, Java કે Rust માંના કોઈ પણ RFC 1952 રીડર સાથે વિસંકોચાય છે.
GZIP સંકોચનના સામાન્ય ઉપયોગો કયા છે?
GZIP નો ઉપયોગ સમગ્ર વેબ પર અને કમાન્ડ-લાઇન ટૂલિંગમાં થાય છે:
- HTTP સ્થાનાંતરણ: web servers પ્રતિસાદોને GZIP વડે સંકુચિત કરે છે — જેથી પૃષ્ઠો નેટવર્ક પર વધુ ઝડપથી લોડ થાય.
- નોંધ-સંગ્રહ (log archival): દીર્ઘકાલિક server logs ડિસ્ક વપરાશ ઘટાડવા .gz ફાઇલો તરીકે સંગ્રહિત થાય છે.
- બેકઅપ અને બંડલ: tarballs (.tar.gz) પોરદાગિક વિતરણ માટે સંપળના નિર્દેશિકા વૃક્ષ સંકુચિત કરે છે.
GZIP સંકોચનનું ઉદાહરણ કેવું દેખાય છે?
અનેક પુનરાવર્તી ફીલ્ડનાં નામવાળો 1 KBનો JSON દસ્તાવેજ સામાન્યરીતે ~200–300 bytesમાં સંકુચિત થાય — ચાર થી પાંચ ગણો કદ-ઘટાડો. મોટી ટેક્સ્ટ નોંધ વધુગી વખતે 90% અથવા વધુ સંકુચિત થાય. પહેલેથી સંકુચિત (JPEG, PNG, MP4, ZIP) ઇનપુટ વધુ નાનૂં ન થાય અને GZIP framingને કારણે થોડાં bytes વધી શકે.
આ GZIP કમ્પ્રેસર સીધું તમારા બ્રાઉઝરમાં જ પ્રમાણભૂત RFC 1952 આઉટપુટ બનાવે છે. તમે પ્રસારણ પહેલાં કોઈ પેલોડ સંકોચતા હો કે સંગ્રહ માટે કોઈ .gz ફાઇલ બનાવતા હો, પરિણામ નેટવર્ક પરના દરેક GZIP-સમજદાર ટૂલ સાથે સુસંગત રહે છે.