تتيح أنواع عديدة من ملفات وتطبيقات Gzip المتوفرة حاليًا ضغط محتوى HTTP قبل إرساله إلى المستخدم، وتُستخدم جميعها على أنظمة Unix والأنظمة الشبيهة بها. ونتيجةً لهذه العملية، وُجد أن حجم الملف يتقلص بنسبة تصل إلى 80%، مما يُؤدي إلى تسريع تحميل الصفحات، وتقليل استهلاك النطاق الترددي، وخفض تكاليف بروتوكول SSL.
يمكن استخدام الضغط قبل مغادرة المحتوى للخادم لتقليل حجم الملف، وبالتالي معالجة هذه المشكلة. توجد طريقة ضغط قياسية تُسمى Gzip، وهي شائعة الاستخدام في خوادم الويب والمتصفحات والتطبيقات الأخرى لضغط المحتوى وفك ضغطه بسلاسة أثناء نقله عبر الإنترنت. يمكن لخوارزمية ضغط Gzip تقليل حجم ملفات JavaScript وCSS وHTML بنسبة تصل إلى 90%، وتُستخدم هذه الخوارزمية بشكل أساسي مع ملفات التعليمات البرمجية والنصوص.
كيف يعمل برنامج Gzip؟
- لتحديد ما إذا كان المتصفح يدعم ضغط gzip أم لا، يقوم الخادم بفحص رأس الطلب عندما يتلقى طلبًا لصفحة ويب.
- إذا كان الأمر كذلك، فسيقوم الخادم بإنشاء ترميز الصفحة قبل تطبيق ضغط gzip.
- لإيصال تدفق البيانات المضغوط إلى المستخدم النهائي، يقوم Gzip بتحويل محتوى الترميز إلى تدفق بيانات مضغوط.
- توجد عملية يتم من خلالها فك ضغط البث المضغوط بمجرد وصوله إلى متصفح المستخدم النهائي.
- يُعدّ ضغط محتوى الويب باستخدام GZIP من أكثر التقنيات شيوعًا لضغط المحتوى على الإنترنت. وتشير التقديرات إلى أن أكثر من نصف مواقع الويب على الإنترنت تستخدم تقنية الضغط غير الفاقد للبيانات GNU Zip لضغط كل شيء بدءًا من صفحات الويب وصولًا إلى مقاطع الفيديو والصور التي تشير إليها.
على الرغم من شيوع استخدام GZIP حاليًا، إلا أن نسبة ضغط النسخة القياسية منه غالبًا ما تكون أقل من نسبة ضغط Brotli، مما يمثل تحسنًا طفيفًا مقارنةً بنسخة GZIP القياسية. علاوة على ذلك، يشهد استخدام GZIP انخفاضًا تدريجيًا مع توجه المواقع الإلكترونية نحو تقنيات أحدث.
تأثير مستويات الضغط على استخدام الموارد
على عكس عمليات الضغط الأخرى، يعتمد ضغط Gzip على وحدة المعالجة المركزية (CPU) ويتيح مستويات ضغط متعددة للاختيار من بينها. كلما زاد مستوى الضغط، قلّ حجم الملف، ولكن سيستغرق ذلك وقتًا أطول من وحدة المعالجة المركزية.
تشير التقديرات إلى أن متوسط حجم صفحة الويب قد ازداد بنحو 1.2 ميجابايت خلال السنوات العشر الماضية. ونتيجة لذلك، بات من الضروري بشكل متزايد تطوير أساليب لتوفير كميات كبيرة من البيانات بسرعة وكفاءة، مع تزايد الطلب على المعلومات.
متى يجب استخدام GZIP؟
توفر خوارزميات ضغط GZIP مستوى ضغط مقبولًا للمحتوى الثابت والديناميكي، وهي سريعة بما يكفي لتشغيلها على أي خادم/عميل تقريبًا. إضافةً إلى ذلك، تتوافق العديد من التقنيات المستخدمة حاليًا مع المحتوى الثابت، مثل bz2 و xz و Brotli.
على الرغم من التراجع التدريجي في دعم برنامج GNU Zip على الإنترنت، إلا أنه لا يزال يتمتع بالعديد من الاستخدامات التي ستجعله ذا أهمية لسنوات عديدة. فعلى سبيل المثال، وبغض النظر عن تقنيات الضغط الأحدث، ستظل هناك دائمًا مفاضلة بين معالجة البيانات على جانب الخادم ونسب الضغط على جانب العميل.
إذا كنت مهتمًا بقراءة المزيد من المقالات من هذا النوع، فراجع موقع Seahawk Media .