Logo hi.boatexistence.com

क्या httpclient क्षणिक या सिंगलटन होना चाहिए?

विषयसूची:

क्या httpclient क्षणिक या सिंगलटन होना चाहिए?
क्या httpclient क्षणिक या सिंगलटन होना चाहिए?

वीडियो: क्या httpclient क्षणिक या सिंगलटन होना चाहिए?

वीडियो: क्या httpclient क्षणिक या सिंगलटन होना चाहिए?
वीडियो: .NET में HttpClient का गलत तरीके से उपयोग करना बंद करें 2024, मई
Anonim

HttpClient वर्ग सिंगल ऐप डोमेन के लिएसिंगलटन के रूप में अधिक उपयुक्त है। इसका मतलब है कि सिंगलटन को कई कंटेनर वर्गों में साझा किया जाना चाहिए। इस रणनीति के साथ, आपको एक सिंगलटन मिलता है, लेकिन इससे साझा करना मुश्किल हो जाता है। HttpClient वर्ग IDisposable इंटरफ़ेस लागू करता है।

क्या हमें सभी अनुरोधों के लिए HttpClient का एक नया एकल उदाहरण बनाना चाहिए?

हालांकि यह IDisposable इंटरफ़ेस को लागू करता है, यह वास्तव में एक साझा वस्तु है। इसका मतलब है कि कवर के तहत यह रीएंट्रेंट और थ्रेड सुरक्षित है। प्रत्येक निष्पादन के लिए HttpClient का एक नया उदाहरण बनाने के बजाय आपको आवेदन के पूरे जीवनकाल के लिए HttpClient का एक एकल उदाहरणसाझा करना चाहिए।

क्या आपको एचटीपी क्लाइंट का पुन: उपयोग करना चाहिए?

HttpClient का इरादा एक बार तुरंत चालू करने का इरादा है और किसी एप्लिकेशन के पूरे जीवन में फिर से उपयोग किया जाता है। प्रत्येक अनुरोध के लिए एक HttpClient वर्ग को तत्काल करने से भारी भार के तहत उपलब्ध सॉकेट की संख्या समाप्त हो जाएगी। इसके परिणामस्वरूप सॉकेट अपवाद त्रुटियां होंगी।

क्या एचटीपी क्लाइंट अप्रबंधित है?

हालाँकि HttpClient अप्रत्यक्ष रूप से IDisposable इंटरफ़ेस को लागू करता है, HttpClient का मानक उपयोग प्रत्येक अनुरोध के बाद इसका निपटान नहीं करना है। HttpClient ऑब्जेक्ट का उद्देश्य तब तक रहना है जब तक आपके एप्लिकेशन को HTTP अनुरोध करने की आवश्यकता होती है।

क्या एचटीपी क्लाइंट थ्रेड-सुरक्षित है?

HttpClient पूरी तरह से थ्रेड-सुरक्षित है जबथ्रेड-सुरक्षित कनेक्शन प्रबंधक जैसे MultiThreadedHttpConnectionManager के साथ उपयोग किया जाता है। … उसी समय HttpClient इंस्टेंस और कनेक्शन मैनेजर को अधिकतम दक्षता के लिए सभी थ्रेड्स के बीच साझा किया जाना चाहिए।

सिफारिश की: