GZIP சுருக்கம் என்றால் என்ன?
GZIP என்பது RFC 1952 ஆல் வரையறுக்கப்பட்ட ஒரு இழப்பற்ற சுருக்க கோப்பு வடிவம். இது DEFLATE அல்காரிதம் (RFC 1951) தயாரித்த payload ஐ மடிக்கிறது, இது LZ77 மீண்டும்-குறிப்புகளை Huffman குறியாக்கத்துடன் இணைத்து மீண்டும் மீண்டும் வரும் தரவை சுருக்குகிறது.
GZIP சுருக்கம் எவ்வாறு வேலை செய்கிறது?
உங்கள் உள்ளீடு நேட்டிவ் CompressionStream('gzip') API ஐப் பயன்படுத்தி முற்றிலும் உங்கள் உலாவியில் செயலாக்கப்படுகிறது. உயர்-நிலை படிகள்:
- கருவி உங்கள் உரை அல்லது கோப்பை பைட்டுகளின் ஸ்ட்ரீமாக மாற்றுகிறது (உரை உள்ளீட்டிற்கு UTF-8).
- அந்த பைட்டுகள்
gzipவடிவத்திற்கு கட்டமைக்கப்பட்டCompressionStreamமூலம் கொடுக்கப்படுகின்றன. - உலாவி DEFLATE பயன்படுத்துகிறது: ஒரு sliding-window LZ77 pass மீண்டும் வரும் வரிசைகளை கண்டுபிடிக்கிறது, மற்றும் Huffman குறியாக்கம் பொதுவான குறியீடுகளுக்கு குறுகிய குறியீடுகளை ஒதுக்குகிறது.
- 10-பைட் gzip தலைப்பு மற்றும் 8-பைட் அடிக்குறிப்பு (அசல் தரவின் CRC32 மற்றும் அசல் நீளம் modulo 2^32) DEFLATE payload ஐ சுற்றி மடிக்கப்படுகின்றன, ஒரு தரநிலை .gz கொள்கலனை உருவாக்குகின்றன.
- முடிவு உரை உள்ளீட்டிற்கு Base64 அல்லது ஹெக்ஸ் ஆக வழங்கப்படுகிறது, அல்லது பைனரி உள்ளீட்டிற்கு பதிவிறக்கத்தக்க .gz கோப்பாக வழங்கப்படுகிறது.
ஏன் GZIP மூலம் சுருக்குவது?
- சிறிய payload கள்: உரை, JSON, HTML, CSS, மற்றும் மூல குறியீடு பொதுவாக அவற்றின் அசல் அளவின் ஒரு பகுதிக்கு சுருங்குகின்றன.
- தொழில் தரநிலை: GZIP ஐ கிட்டத்தட்ட ஒவ்வொரு HTTP சேவையகமும், CDN, உலாவி, காப்பக கருவி, மற்றும் நிரலாக்க மொழி நிலையான நூலகம் புரிந்துகொள்கிறது.
- தனியுரிமை: சுருக்கம் முற்றிலும் உங்கள் உலாவியில் நடக்கிறது. உள்ளீடு எங்கள் சேவையகங்களை அடைவதில்லை.
- சுற்று-பயண தயார்: வெளியீடு
gunzipCLI, HTTPContent-Encoding: gzip, மற்றும் Python, Node.js, Go, Java அல்லது Rust இல் எந்த RFC 1952 வாசகனுடனும் சிறப்பாக வேலை செய்கிறது.
GZIP சுருக்கத்தின் பொதுவான பயன்பாடுகள் என்ன?
GZIP இணையத்திலும் கமாண்ட்-லைன் கருவிகளிலும் பயன்படுத்தப்படுகிறது:
- HTTP பரிமாற்றம்: வலை சேவையகங்கள் பக்கங்கள் நெட்வொர்க் மூலம் வேகமாக ஏற்றப்படுமாறு GZIP மூலம் பதில்களை சுருக்குகின்றன.
- பதிவு காப்பகம்: நீண்ட காலம் வாழும் சேவையக பதிவுகள் வட்டு பயன்பாட்டை குறைக்க .gz கோப்புகளாக சேமிக்கப்படுகின்றன.
- காப்புப்பிரதிகள் மற்றும் தொகுப்புகள்: tarballs (.tar.gz) போர்ட்டபிள் விநியோகத்திற்கு முழு கோப்பகப் பகுதிகளை சுருக்குகின்றன.
GZIP சுருக்க எடுத்துக்காட்டு எப்படி இருக்கும்?
பல மீண்டும் வரும் புல பெயர்களுடன் ஒரு 1 KB JSON ஆவணம் பொதுவாக சுமார் 200–300 பைட்டுகளாக சுருங்குகிறது — நான்கு முதல் ஐந்து மடங்கு அளவு குறைப்பு. பெரிய உரை பதிவுகள் பெரும்பாலும் 90% அல்லது அதிகமாக சுருங்குகின்றன. ஏற்கனவே சுருக்கப்பட்ட உள்ளீடுகள் (JPEG, PNG, MP4, ZIP) மேலும் சுருங்காது.
இந்த GZIP சுருக்கி தரநிலை RFC 1952 வெளியீட்டை நேரடியாக உங்கள் உலாவியில் உருவாக்குகிறது. நீங்கள் பரிமாற்றத்திற்கு முன்பு ஒரு payload ஐ சுருக்குகிறீர்களோ அல்லது காப்பகத்திற்கு ஒரு .gz கோப்பை உருவாக்குகிறீர்களோ, முடிவு நெட்வொர்க்கில் ஒவ்வொரு GZIP-விழிப்புடைய கருவியுடனும் ஒன்றிணைகிறது.