विज्ञापन

आपने अभी तक HTTP / 2 के बारे में नहीं सुना होगा, लेकिन यह HTTP का सबसे नवीनतम अपडेट है। नया प्रोटोकॉल मानक कुछ नई अवधारणाओं का परिचय देता है और सर्वर और अनुप्रयोगों के बीच संचार को तेज और अधिक कुशल बनाता है।

HTTP / 2 क्या है?

हाइपरटेक्स्ट ट्रांसफर प्रोटोकॉल संस्करण 2, या HTTP / 2, 15 वर्षों में HTTP पर पहला बड़ा अपडेट है।

पिछला प्रोटोकॉल मानक, HTTP / 1.1, 1997 से उपयोग में है और HTTP की सीमाओं में सुधार करने के लिए क्लंकी वर्कआर्ड के मिश्रण का उपयोग करता है।

यह SPDY ("स्पीडी") पर आधारित है, जो HTTP / 1.1 के कुछ मुद्दों और सीमाओं को संबोधित करने के लिए Google द्वारा शुरू किया गया एक ओपन-सोर्स प्रयोग है।

इंटरनेट इंजीनियरिंग टास्क फोर्स (IETF) इस तरह के परिवर्तनों को निर्दिष्ट करता है हाइपरटेक्स्ट ट्रांसफर प्रोटोकॉल संस्करण 2, ड्राफ्ट 17:

“HTTP / 2 नेटवर्क संसाधनों का अधिक कुशल उपयोग और विलंबता की कम धारणा को सक्षम करता है शीर्ष लेख फ़ील्ड संपीड़न शुरू करने और एक ही पर कई समवर्ती आदान-प्रदान की अनुमति देता है कनेक्शन […]

"यह अनुरोधों को प्राथमिकता देने की भी अनुमति देता है, और अधिक महत्वपूर्ण अनुरोधों को और अधिक तेज़ी से पूरा करने देता है, प्रदर्शन में सुधार करता है।"

instagram viewer

"HTTP / 2 बाइनरी संदेश फ़्रेमिंग के माध्यम से संदेशों के अधिक कुशल प्रसंस्करण को सक्षम बनाता है।"

“यह विनिर्देश एक विकल्प है, लेकिन अप्रचलित नहीं है, HTTP / 1.1 संदेश सिंटैक्स। HTTP के मौजूदा शब्दार्थ अपरिवर्तित रहते हैं। "

HTTP / 2 SPDY पर आधारित है

HTTP / 2 SPDY पर आधारित है

2012 तक, अधिकांश आधुनिक ब्राउज़रों और कई लोकप्रिय साइटों (Google, ट्विटर, फेसबुक आदि) ने पहले ही SPDY का समर्थन किया। जैसे-जैसे SPDY की लोकप्रियता बढ़ रही थी, HTTP वर्किंग ग्रुप (HTTP-WG) HTTP मानक को अपडेट करने पर काम करना शुरू कर दिया।

इस बिंदु से, SPDY HTTP / 2 में नई सुविधाओं के लिए नींव और प्रायोगिक शाखा बन गई। उस समय, हमने जांच की SPDY ब्राउज़िंग को कैसे बेहतर बना सकता है SPDY क्या है, और यह आपके ब्राउज़िंग अनुभव को कैसे कम कर सकता है? अधिक पढ़ें . तब से, संस्करण 2 मानक का मसौदा तैयार किया गया था, अनुमोदित और प्रकाशित किया गया था।

SPDY की कई विशेषताओं को HTTP / 2 में शामिल किया गया, और Google ने अंततः 2016 की शुरुआत में इस प्रोटोकॉल का समर्थन करना बंद कर दिया।

अधिकांश ब्राउज़रों ने अंततः SPDY का समर्थन करना बंद कर दिया, और जैसा कि कोई विकल्प नहीं है, HTTP / 2 डी वास्तविक मानक बन रहा है।

जबकि HTTP / 2 प्रोटोकॉल मानक HTTP / 1 के साथ सख्ती से पीछे नहीं है, संगतता अनुवाद के माध्यम से प्राप्त की जा सकती है। एक HTTP / 1.1 केवल क्लाइंट HTTP / 2 को केवल सर्वर नहीं समझता है और इसके विपरीत, यही कारण है कि नया प्रोटोकॉल संस्करण HTTP / 2 है न कि HTTP / 1.2।

कहा कि, HTTP-WG द्वारा प्रदान किए गए कार्य का एक महत्वपूर्ण हिस्सा, यह सुनिश्चित करना है कि HTTP / 1 और HTTP / 2 को बिना किसी नुकसान के वापस आगे और पीछे अनुवाद किया जा सकता है।

पेश किया गया कोई भी नया तंत्र या सुविधाएँ मौजूदा वेब के साथ संस्करण-स्वतंत्र और पिछड़े-संगत भी होंगे।

HTTP / 2 वास्तव में कुछ ऐसा नहीं है जिसे कोई उपयोगकर्ता कार्यान्वित कर सकता है, लेकिन कुछ चीजें हैं जो हम अपनी ब्राउज़िंग गति को प्रभावित कर सकते हैं। क्या आप इनमें से किसी पर विश्वास करते हैं आम मिथकों अपने इंटरनेट की गति को तेज करने के लिए? 5 इंटरनेट स्पीड बढ़ाने के बारे में मिथक और वे काम क्यों नहीं करते21 वीं सदी में इंटरनेट की गति एक महत्वपूर्ण माप है। हालाँकि, आपके कनेक्शन को तेज़ बनाने के तरीके के बारे में ऑनलाइन बहुत गलत जानकारी है। यहां पांच मिथक हैं जिन पर आपको विश्वास नहीं करना चाहिए। अधिक पढ़ें

HTTP / 2 के लाभ और सुविधाएँ

HTTP / 2, HTTP मानक में कुछ बेहतरीन अपडेट के साथ आता है। अधिक महत्वपूर्ण कुछ बाइनरी फ्रेमिंग, मल्टीप्लेक्सिंग, स्ट्रीम प्राथमिकताकरण, प्रवाह नियंत्रण और सर्वर पुश हैं।

बाइनरी फ्रेमिंग

HTTP / 2 बाइनरी फ्रेमिंग स्ट्रीम में HTTP संदेश
HTTP संदेश द्वारा mfuji09के तहत लाइसेंस प्राप्त है CC-BY-SA 2.5.

HTTP2 / के अपडेट के बाद, HTTP प्रोटोकॉल संचार बाइनरी-एन्कोडेड फ़्रेमों के आदान-प्रदान में विभाजित हो जाता है। इन फ़्रेमों को उन संदेशों को मैप किया जाता है जो किसी विशेष स्ट्रीम से संबंधित हैं। धाराएँ एकल टीसीपी कनेक्शन में बहुसंकेतन (एक अर्थ में एक साथ बुनी हुई) होती हैं।

नई बाइनरी फ्रेमिंग परत कुछ नई शब्दावली का परिचय देती है; स्ट्रीम, संदेश और फ़्रेम।

  • धाराएँ एक या अधिक संदेश ले जाने वाले बाइट्स के द्विदिश प्रवाह हैं।
  • इनमें से प्रत्येक स्ट्रीम में एक विशिष्ट पहचानकर्ता है और वैकल्पिक प्राथमिकता जानकारी का उपयोग करके द्विदिश संदेशों को ले जा सकता है।
  • फ़्रेम HTTP / 2 में संचार की सबसे छोटी इकाई है जिसमें डेटा (HTTP हेडर, संदेश पेलोड आदि) के विशिष्ट सेट होते हैं। हेडर कम से कम उस स्ट्रीम की पहचान करेगा जो फ्रेम से संबंधित है।
  • संदेश फ़्रेम का एक पूरा सेट है जो तार्किक अनुरोध या प्रतिक्रिया संदेश में मैप करते हैं।
  • प्रत्येक संदेश एक तार्किक HTTP संदेश है, एक अनुरोध या प्रतिक्रियाओं की तरह, जो एक या अधिक फ्रेम से बना है।

यह हमें एक टीसीपी कनेक्शन का उपयोग करने की अनुमति देता है, जो पिछले आवश्यक कई के लिए है।

बहुसंकेतन

मल्टीप्लेक्सिंग उदाहरण

HTTP / 1.1 यह सुनिश्चित करता है कि प्रति कनेक्शन एक समय में केवल एक ही प्रतिक्रिया दी जा सकती है। और यदि ग्राहक कई समानांतर अनुरोध करना चाहता है तो ब्राउज़र अतिरिक्त टीसीपी कनेक्शन खोलेगा।

HTTP / 2 HTTP / 1.1 की इस सीमा को हटा देता है और पूर्ण अनुरोधों और प्रतिक्रिया को बहुसंकेतन करने में सक्षम बनाता है। इसका मतलब यह है कि क्लाइंट और सर्वर एक HTTP संदेश को स्वतंत्र फ्रेम में तोड़ सकते हैं, जो तब इंटरलेयर्ड होते हैं, और दूसरे छोर पर फिर से इकट्ठे होते हैं।

कुल मिलाकर, यह HTTP / 2 की सबसे महत्वपूर्ण वृद्धि है, क्योंकि यह कई कनेक्शनों की आवश्यकता को समाप्त करेगा। यह बदले में सभी वेब प्रौद्योगिकियों में कई प्रदर्शन लाभ पेश करेगा।

कम संख्या में कनेक्शन का मतलब है कम ट्रांसपोर्ट लेयर सिक्योरिटी (टीएलएस) हैंडशेक, बेहतर सत्र का पुन: उपयोग और क्लाइंट और सर्वर संसाधन आवश्यकताओं में समग्र कमी। यह अनुप्रयोगों को तेज़, सरल और तैनात करने के लिए सस्ता बनाता है।

कई बाहरी संपत्ति (चित्र या स्क्रिप्ट) वाली वेबसाइटें HTTP / 2 मल्टीप्लेक्सिंग से सबसे बड़ा प्रदर्शन लाभ प्राप्त करेंगी।

स्ट्रीम प्राथमिकता और निर्भरता

मल्टीप्लेक्स धाराओं के आगे सुधार वजन और धारा निर्भरता के साथ किए जाते हैं। HTTP / 2 हमें प्रत्येक स्ट्रीम को एक वज़न (1 और 256 के बीच का मान) देने की अनुमति देता है, और इसे स्पष्ट रूप से किसी अन्य स्ट्रीम पर निर्भर करता है।

यह निर्भरता और वजन संयोजन एक प्राथमिकता वाले पेड़ के निर्माण की ओर जाता है, जो सर्वर को बताता है कि ग्राहक कैसे प्रतिक्रियाएं प्राप्त करना पसंद करेंगे।

सर्वर प्राथमिकता पेड़ में सूचना का उपयोग सीपीयू, मेमोरी और अन्य के आवंटन को नियंत्रित करने के लिए करेगा संसाधनों, साथ ही साथ ग्राहक को उच्च-प्राथमिकता का इष्टतम वितरण सुनिश्चित करने के लिए बैंडविड्थ का आवंटन प्रतिक्रियाओं।

प्रवाह नियंत्रण

HTTP / 2 में प्रवाह नियंत्रण के मुद्दे HTTP / 1.1 के समान हैं। हालाँकि, चूंकि HTTP / 2 स्ट्रीम एकल टीसीपी कनेक्शन में मल्टीप्लेक्स किए गए हैं, इसलिए HTTP / 1.1 कार्यों में फ्लो कंट्रोल अब कारगर नहीं है।

संक्षेप में, रुकावट पैदा करने के लिए एक दूसरे के साथ हस्तक्षेप करने वाली धाराओं को रोकने के लिए प्रवाह नियंत्रण की आवश्यकता होती है। यह मल्टीप्लेक्सिंग को संभव बनाता है। HTTP / 2 प्रोटोकॉल परिवर्तन की आवश्यकता के बिना विभिन्न प्रकार के प्रवाह-नियंत्रण एल्गोरिदम का उपयोग करने की अनुमति देता है।

प्रवाह नियंत्रण के लिए कोई एल्गोरिथ्म HTTP / 2 में निर्दिष्ट नहीं है। इसके बजाय, अपने स्वयं के प्रवाह नियंत्रण को लागू करने के लिए ग्राहकों और सर्वरों की सहायता के लिए बिल्डिंग ब्लॉक्स का एक सेट प्रदान किया गया है।

आप इन बिल्डिंग ब्लॉक्स की बारीकियों को देख सकते हैं HTTP / 2 इंटरनेट-ड्राफ्ट का "फ्लो कंट्रोल" खंड।

सर्वर पुश

आपका ब्राउज़र सामान्य रूप से अनुरोध करेगा और पहले पृष्ठ पर आने पर सर्वर से एक HTML दस्तावेज़ प्राप्त करेगा। सर्वर को तब HTML दस्तावेज़ को पार्स करने के लिए ब्राउज़र की प्रतीक्षा करने की आवश्यकता होती है और एम्बेडेड परिसंपत्तियों (सीएसएस, जावास्क्रिप्ट, चित्र आदि) के लिए अनुरोध भेजना पड़ता है।

HTTP / 1.1 में, सर्वर इन परिसंपत्तियों को तब तक नहीं भेज सकता है जब तक कि ब्राउज़र उनसे अनुरोध नहीं करता है, और प्रत्येक संपत्ति को एक अलग अनुरोध (यानी कई हैंडशेक और कनेक्शन) की आवश्यकता होती है।

सर्वर पुश इन संसाधनों को बिना संकेत के भेजने की अनुमति देकर विलंबता को कम कर देगा, क्योंकि यह पहले से ही जानता है कि क्लाइंट को उनकी आवश्यकता होगी। तो ऊपर दिए गए उदाहरण में, सर्वर CSS, JavaScript (a) को आगे बढ़ाएगा सामान्य स्क्रिप्टिंग भाषा जावास्क्रिप्ट क्या है और यह कैसे काम करता है?यदि आप वेब विकास सीख रहे हैं, तो यहां आपको जावास्क्रिप्ट और HTML और CSS के साथ काम करने के बारे में जानने की आवश्यकता है। अधिक पढ़ें वेब पेजों में), और पेज को तेज प्रदर्शित करने के लिए ब्राउज़र में चित्र।

मूल रूप से, सर्वर पुश एक सर्वर को एकल क्लाइंट अनुरोध के लिए कई प्रतिक्रियाएं भेजने की अनुमति देता है।

Albeit मैन्युअल रूप से, यह वह प्रभाव है जो हम वर्तमान में CSS या JS को हमारे HTML दस्तावेज़ों में सम्मिलित करके प्राप्त करते हैं — हम ग्राहक के लिए अनुरोध किए बिना ग्राहक को इनलेट संसाधन को धक्का दे रहे हैं।

यह सख्त HTTP-to-one अनुरोध-प्रतिक्रिया वर्कफ़्लो के वर्तमान HTTP मानक से एक बड़ा कदम है।

HTTP / 2 की सीमाएँ

HTTP / 2 का समर्थन करने वाले ब्राउज़रों की छवि

SPDY की सुरक्षा पर थोड़ी सख्त नीति थी और सभी कनेक्शनों के लिए SSL एन्क्रिप्शन की आवश्यकता थी। HTTPS / 2 को एन्क्रिप्शन की आवश्यकता नहीं है, लेकिन कई सेवाएं SSL के बिना HTTP / 2 की सेवा नहीं देंगी।

सभी प्रमुख ब्राउज़र HTTP / 2 का समर्थन करते हैं, लेकिन उनमें से कोई भी एन्क्रिप्शन के बिना इसका समर्थन नहीं करेगा। CanIUs वेबसाइट पर एक बेहतरीन टेबल ओवरव्यू है HTTP / 2 के लिए वर्तमान ब्राउज़र समर्थन, जैसा कि ऊपर देखा गया है।

HTTP / 1.1 और HTTP / 2 के बीच बैकवर्ड संगतता और अनुवाद पृष्ठ लोड गति को धीमा कर देगा।

ऐसा कोई वास्तविक कारण नहीं है कि एन्क्रिप्शन अब तक डिफ़ॉल्ट या अनिवार्य सेटअप नहीं होना चाहिए। यदि आपके पास पहले से ही आपकी साइट पर एक एसएसएल प्रमाणपत्र है, तो आप कर सकते हैं HSTS को सक्षम करके अपनी HTTPS वेबसाइट की सुरक्षा में सुधार करें।

क्या HTTP / 2 अगली बड़ी बात है?

HTTP / 1.1 और HTTP / 2 लोडिंग समय की तुलना

HTTP / 2 को 2015 के मध्य में एक मानक के रूप में प्रस्तावित किया गया था, और अधिकांश ब्राउज़र ने उस वर्ष के अंत तक इसके लिए समर्थन जोड़ा था। HTTP / 2 पहले से ही उस तरीके को प्रभावित करता है जो इंटरनेट काम करता है और कैसे एप्लिकेशन और सर्वर एक साथ बात करते हैं।

HTTP / 2 का उपयोग करने के लिए कोई आवश्यकता नहीं है, लेकिन अभी तक यह केवल लाभ और कोई कमियां नहीं है। यह एक उपयोगकर्ता के दृष्टिकोण से भी काफी मामूली बदलाव है, एक वह जिसे लोगों ने वास्तव में नोटिस नहीं किया।

W3Tech के अनुसार, शीर्ष 10 मिलियन वेबसाइटों में से 31.7% वर्तमान में HTTP / 2 का समर्थन करती हैं। आपकी वेबसाइट पर HTTP / 2 को सक्षम करने के लिए आप में से सबसे तेज़ तरीका क्लाउडफ़ेयर की CDN का उपयोग करना है।

अगला प्रस्तावित मानक (HTTP / 3) पहले से ही काम कर रहा है और आधारित है QUIC, Google द्वारा एक और प्रायोगिक परियोजना। इस वर्ष के अक्टूबर में, IETF'S HTTP-WG और QUIC वर्किंग ग्रुप ने आधिकारिक तौर पर QUIC को नए विश्वव्यापी मानक बनने और HTTP / 3 का नाम बदलने का अनुरोध किया।

यदि आप उत्सुक हैं, तो Akamai.com के पास एक त्वरित उपकरण है जांचें कि आपका ब्राउज़र HTTP / 2 का समर्थन करता है या नहीं. यदि यह नहीं है, तो शायद विचार करें अपना ब्राउज़र बदल रहा है डेस्कटॉप या मोबाइल पर बेहतर ब्राउज़र के लिए 5 Google क्रोम विकल्पक्रोम दुनिया में सबसे लोकप्रिय ब्राउज़र है। लेकिन इसके अभी भी मुद्दे हैं। क्या ये वैकल्पिक ब्राउज़र बेहतर विकल्प हो सकते हैं? अधिक पढ़ें .

हर दिन एक स्कूल-डे है। एक कीट खेत के साथ दुनिया को बचाने के लिए आकांक्षाओं से उत्साहित बर्नर्ट एक स्वप्नद्रष्टा और हरित तकनीक है। वह एक लंबे समय तक तकनीकी सहायक कर्मचारी और वर्डप्रेस बिल्डर हैं, जिन्होंने हाल ही में अपने पैरों को लेखन में डुबोना शुरू किया है। बर्न्ट Google पारिस्थितिकी तंत्र का एक बड़ा प्रशंसक है और जीवन के व्यवस्थापक कार्य करने के लिए सस्ती तकनीक का उपयोग करता है...