हमारे वेब ऐप्लिकेशन के दायरे, महत्व, और फ़ंक्शन में लगातार बढ़ोतरी हो रही है. यह एक अच्छी बात है. हालांकि, बेहतर वेब बनाने की कोशिश में एक और रुझान भी दिख रहा है: हर ऐप्लिकेशन से डाउनलोड किए जाने वाले डेटा की संख्या लगातार बढ़ रही है. बेहतर परफ़ॉर्मेंस देने के लिए, हमें हर बाइट की डिलीवरी को ऑप्टिमाइज़ करना होगा!
मॉडर्न वेब ऐप्लिकेशन कैसा दिखता है? एचटीटीपी संग्रह से हमें इस सवाल का जवाब मिल सकता है. यह प्रोजेक्ट, समय-समय पर सबसे लोकप्रिय साइटों (Alexa की टॉप 10 लाख साइटों की सूची में शामिल 3,00,000 से ज़्यादा साइटें) को क्रॉल करके, यह ट्रैक करता है कि वेब कैसे बनाया जाता है. साथ ही, हर डेस्टिनेशन के लिए संसाधनों, कॉन्टेंट टाइप, और अन्य मेटाडेटा की संख्या के आधार पर आंकड़े रिकॉर्ड और इकट्ठा करता है.
ऊपर दिए गए डेटा से, जनवरी 2013 से जनवरी 2014 के बीच, वेब पर लोकप्रिय डेस्टिनेशन के लिए डाउनलोड किए गए बाइट की संख्या में बढ़ोतरी का रुझान पता चलता है. बेशक, हर साइट एक ही दर से नहीं बढ़ती या उसे एक ही डेटा की ज़रूरत नहीं होती. इसलिए, हम डिस्ट्रिब्यूशन में अलग-अलग क्वंटील को हाइलाइट कर रहे हैं: 50वां (मीडियन), 75वां, और 90वां.
साल 2014 की शुरुआत में, एक औसत साइट पर 75 अनुरोध किए गए थे. इन अनुरोधों से, कुल 1,054 केबी बाइट ट्रांसफ़र हुए थे. साथ ही, पिछले साल बाइट (और अनुरोधों) की कुल संख्या में लगातार बढ़ोतरी हुई है. इस बात से आपको हैरानी नहीं होनी चाहिए. हालांकि, इससे परफ़ॉर्मेंस पर असर पड़ता है: हां, इंटरनेट की स्पीड तेज़ हो रही है, लेकिन अलग-अलग देशों में अलग-अलग दरों से तेज़ हो रही है. साथ ही, कई उपयोगकर्ता अब भी डेटा कैप और महंगे मीटर वाले प्लान का इस्तेमाल कर रहे हैं. खास तौर पर, मोबाइल पर.
डेस्कटॉप ऐप्लिकेशन के मुकाबले, वेब ऐप्लिकेशन को इंस्टॉल करने की अलग से कोई प्रोसेस नहीं होती: यूआरएल डालें और हम काम करना शुरू कर देंगे -- यह वेब की मुख्य सुविधा है. हालांकि, ऐसा करने के लिए हमें अक्सर कई दर्जन और कभी-कभी सैकड़ों अलग-अलग संसाधनों को फ़ेच करना पड़ता है. इन सभी से मेगाबाइट डेटा इकट्ठा हो सकता है. साथ ही, हमें इन सभी संसाधनों को सैकड़ों मिलीसेकंड में एक साथ इकट्ठा करना होता है, ताकि हम तुरंत वेब अनुभव दे सकें.
इन ज़रूरी शर्तों को ध्यान में रखते हुए, तुरंत वेब अनुभव देना कोई आसान काम नहीं है. इसलिए, कॉन्टेंट को ऑप्टिमाइज़ करना ज़रूरी है: अनचाहे डाउनलोड को हटाना, अलग-अलग कंप्रेस करने की तकनीकों की मदद से हर रिसॉर्स के ट्रांसफ़र को ऑप्टिमाइज़ करना, और जब भी हो सके, कैश मेमोरी का इस्तेमाल करके ज़रूरत से ज़्यादा डाउनलोड को रोकना.