HTTPS ले हरेक API अनुरोधका लागि नयाँ TCP जडान र नयाँ TLS ह्यान्डशेक खोल्छ, त्यसैले एक घण्टा खुला रहने सुरुङ सस्तो देखिन्छ भनी तपाईंले पढ्नुभएको हुन सक्छ। त्यसको पहिलो आधा भाग सामान्यतया गलत हुन्छ। समर्थित क्लाइन्टले धेरै आदानप्रदानका लागि स्थापित जडान पुनः प्रयोग गर्छ, र हरेक कलमा नयाँ क्लाइन्ट बनाउने मापनले जीवनचक्र माप्छ, सुरक्षा होइन। यो पृष्ठको बाँकी भाग त्यसको सट्टा के माप्ने भन्नेबारे छ।

पुनः प्रयोगले वास्तवमै के माग्छ

दिगोपन HTTP मोडेलको भाग हो, चाल होइन: एउटा जडानले धेरै अनुरोध-प्रतिक्रिया आदानप्रदान बोक्छ। दुई पक्षमध्ये कुनैले यसलाई बन्द गर्दा, सर्भरले निष्क्रिय वा अत्यधिक भार भएको जडान हटाउँदा, वा हेडर वा प्रोटोकल नियमले जडान पुनः प्रयोग गर्न नसकिने बताउँदा जडान अन्त्य हुन्छ। HTTPS ले त्यो कुराकानी हरेक आदानप्रदानका लागि नयाँ ह्यान्डशेक नमागी TLS भित्र राख्छ। त्यसैले दोस्रो अनुरोधले पहिलो अनुरोधको ह्यान्डशेक दोहोर्याउँदैन, बीचमा कुनै कुराले जडान अन्त्य नगरेसम्म।

पुनः प्रयोगको एउटा सर्त पनि छ जुन अनुप्रयोगहरूले सजिलै तोड्छन्। जडान पुनः प्रयोग गर्ने सोच बनाएको क्लाइन्टले प्रतिक्रियाको पूरा भाग पढ्नुपर्छ, र आधा बाटोमा छोडिएको प्रतिक्रिया जडान पूल कसैले नथाहा पाई हराउने सामान्य तरिका हो।

पुस्तकालयको समर्थित क्लाइन्ट र जडान पूलको जीवनचक्र जाँच गर्नुहोस्, पूल खुला वा बन्द छ भनी मान्नुको सट्टा। सहमत भएको HTTP संस्करण पनि लेख्नुहोस्, किनकि HTTP/2 र HTTP/3 ले जडान पुनः प्रयोग HTTP/1.1 भन्दा फरक ढङ्गले सम्हाल्छन्। सहमत संस्करणलाई मापनको भाग मान्नुहोस्, पादटिप्पणी होइन।

तुलनाले जीवनचक्र किन माप्छ

हरेक कार्यका लागि नयाँ क्लाइन्ट बनाउनु र त्यसलाई एक घण्टादेखि जोडिएको सुरुङसँग तुलना गर्नु जडान स्थापनाको तुलना स्थिर अवस्थासँग गर्छ। त्यो वैध मापन हो, र त्यो HTTPS विरुद्ध VPN होइन। एउटै क्लाइन्ट कन्फिगरेसनका दुई रनले एकभन्दा राम्रो व्यवहार वर्णन गर्छन्, विशेषतः जब पहिलो रनले कुनै रिजोल्भर वा जडान क्यास तातो बनाउँछ।

API कार्य, सर्भर, खाता र डेटा स्थिर राख्नुहोस्, नत्र तुलनाले एकभन्दा बढी चर बोक्छ। टाइमर कहाँ राख्ने भनी पहिल्यै निर्णय गर्नुहोस्, किनकि स्थापना, TLS वार्ता, अनुप्रयोग कार्यान्वयन र प्रतिक्रिया पुर्‍याउने कामले कुलमा फरक योगदान गर्छन्। पहिलो अनुरोधको एउटा टाइमरले स्थापनाको पहिचान दिन्छ र तपाईंले वास्तवमै चलाउनुहुने स्थिर ट्राफिकबारे केही भन्दैन। टाइमरका सीमाहरू संख्याका छेउमा लेख्नुहोस्।

चिसो स्थापनालाई ताता अनुरोधबाट अलग गर्नुहोस्

पहिलो अनुरोधलाई पछिका अनुरोधभन्दा छुट्टै माप्नुहोस्। त्यसपछि सेवाले वास्तवमै देख्ने कुरा थप्नुहोस्: निष्क्रिय अवधि, विस्फोट, एकैसाथता, प्रतिक्रियाको आकार र पुनः जडान।

दुवै मार्गमा प्रमाणपत्र प्रमाणीकरण र HTTPS खुला राख्नुहोस्, किनकि ती हटाउनुले छिटो होइन, फरक सुरक्षा डिजाइन माप्छ। सुरुङले मार्ग वा गेटवेको स्थान बदल्छ भने, हरेक समय परिवर्तनलाई इन्क्रिप्शनमा थोपर्नुको सट्टा त्यो भिन्नता छुट्टै जनाउनुहोस्, किनकि मार्ग, हानि र लाइनले सानो अनुरोधमा हावी हुन सक्छन्। निष्कर्ष निकाल्नुअघि हरेक मार्ग उही रुटमा दुई पटक चलाउनुहोस्। सहमत प्रोटोकल र टाइमरका सीमा दुवै रनसँगै लेख्नुहोस्।

बन्द हुने जडानका लागि योजना बनाउनुहोस्

दिगो भन्नाले सधैंभरि होइन। सर्भर, प्रोक्सी वा सञ्जाल परिवर्तनले निष्क्रिय अवधिमा जडान बन्द गर्न सक्छ, र क्लाइन्टले आफ्नो पुस्तकालयको समर्थित व्यवहारबाट पुनःस्थापित हुनुपर्छ। त्यो पुनःस्थापनामा एउटा अवस्था मेसिन छ: अनुरोध सर्भरमा पूरा भइसकेको हुन सक्छ, वा सर्भरले पढ्नुअघि नै असफल भएको हुन सक्छ, र बन्द सकेटले कल गर्नेलाई के भयो भनी बताउँदैन। त्यो स्थितिमा गैर-आइडेम्पोटेन्ट कार्यलाई यत्तिकै पुनः चलाउन सकिँदैन, किनकि दोहोर्याउनुले अज्ञात नतिजालाई दोब्बर लेखनमा बदल्छ। यहीँ तातो सुरुङ र तातो जडान एउटै व्यवहार गर्छन्, किनकि काम चलिरहेको क्षणमा दुवै असफल हुन सक्छन्।

सकेट पुनः खोल्ने लूपको सट्टा सेवाको अभिलेखित पुनःप्रयास वा आइडेम्पोटेन्सी विधि प्रयोग गर्नुहोस्। पुनःस्थापना स्पष्ट रूपमा परीक्षण गर्नुहोस्: निष्क्रिय जडान बन्द गर्नुहोस् र क्लाइन्टले त्यसपछि के गर्छ हेर्नुहोस्। सकेट पुनः खोल्नुले अवस्था बदल्ने कलको दोहोर्याउने कार्यलाई सुरक्षित बनाउँदैन।

पहिले सीमा छान्नुहोस्, त्यसपछि मिलाउनुहोस्

केही पनि अनुकूलन गर्नुअघि पहुँच र विश्वासका आवश्यकताबाट सञ्जाल सीमा छान्नुहोस्। VPN ले आफ्ना समकक्षबीचको खण्ड सुरक्षित गर्छ, जबकि अनुप्रयोगका अन्त्य बिन्दु र सुरुङबाहिरको कुनै पनि स्पष्ट पाठ खण्ड अझै महत्त्वपूर्ण छ। त्यसपछि त्यो सीमाभित्र जडानको जीवनचक्र मिलाउनुहोस्। सस्तो सुरुङको निष्कर्ष हरेक अनुरोधले ह्यान्डशेक दोहोर्याउँछ भन्ने विश्वासबाट मात्र आउँछ, र यहीँ त्यही विश्वास परीक्षण गरिँदै छ।

RFC 9112 को दिगोपन खण्ड पुनः प्रयोगले वास्तवमै के वाचा गर्छ भन्ने सन्दर्भ हो, जडान अन्त्य गर्ने सर्तहरूसमेत। ती बेवास्ता गर्ने मापनमा भरोसा गर्नुअघि यसलाई एक पटक पढ्नुहोस्।

सम्बन्धित लेखहरू