मेरे पास एक डब्ल्यूसीएफ webservice है जो मेरे एएसपी.नेट वेब पेज के लिए डेटा प्रदाता के रूप में कार्य करता है।डब्ल्यूसीएफ सेवा ग्राहकों का पुन: उपयोग
पूरे वेब पेज पर ऑटो-जेनरेट सर्विस क्लाइंट के माध्यम से वेब सेवा में कई कॉल किए जाते हैं।
वर्तमान में मैं एक नया सेवा क्लाइंट बनाता हूं और प्रत्येक अनुरोध के लिए इसे खोलता हूं यानी उपयोगकर्ता प्राप्त करें, भूमिकाएं प्राप्त करें, ग्राहक सूची प्राप्त करें आदि .... इनमें से प्रत्येक एक नया सेवा क्लाइंट बनाएगा और एक नया कनेक्शन खोल देगा।
क्या मैं अपनी सेवा क्लाइंट क्लास को वैश्विक या स्थैतिक रूप से उपलब्ध कक्षा बना सकता हूं ताकि मेरे एएसपी.नेट वेब पेज के भीतर सभी कार्य एक ही ग्राहक का उपयोग कर सकें। यह कहीं अधिक कुशल प्रतीत होता है। क्या इस तरह से ऐसा करने में कोई समस्या है? ऐसा करने पर मुझे कोई सलाह लेनी चाहिए?
यदि मैं किसी ग्राहक को एकाधिक अनुरोध करता हूं तो क्या होता है? संभवतः यह सभी तुल्यकालिक है इसलिए इससे कोई फर्क नहीं पड़ता कि मैं इसे 1 या 50 कॉल करता हूं?
धन्यवाद
क्या यह एक कनेक्शन के माध्यम से मेरे सभी अनुरोधों को डालने के विरोध में, प्रत्येक अनुरोध के लिए बस एक नया कनेक्शन नहीं बनाएगा? – Chris
मुझे नहीं लगता कि यह प्रत्येक अनुरोध के लिए कनेक्शन बनाता है, यह केवल इसे खोलता है (जब आप खुले कॉल करते हैं) ... लेकिन मैं 100% निश्चित नहीं हूं। मुझे लगता है कि कनेक्शन बनाना वह हिस्सा है जो बहुत अधिक खर्च करता है। इसे आसानी से चेक किया जा सकता है, इस तरह के एक साधारण ग्राहक को लागू करें और दो समान कॉल करें जहां आप कॉल का समय दे रहे हैं। यदि मैं सही हूं तो दूसरी कॉल बहुत तेज होनी चाहिए। –
और आमतौर पर आप ** ** कनेक्शन हमेशा के लिए खुला रखना नहीं चाहते हैं, नियमित प्रवाह खुला कनेक्शन है, कॉल करें और फिर बंद करें। –