2013-03-02 14 views
7

मुझे डब्ल्यूसीएफ सेवा से बात करने वाले कई ग्राहकों की आवश्यकता है। डब्ल्यूसीएफ सेवा भी किसी भी ग्राहक से कनेक्ट करने में सक्षम होना चाहिए।डब्ल्यूसीएफ क्लाइंट और सर्वर

तो - यह सर्वर की तरह लगता है और ग्राहकों को प्रत्येक में निर्मित डब्ल्यूसीएफ सर्वर और क्लाइंट दोनों की आवश्यकता होती है।

क्या यह सही है या ऐसा करने का कोई तरीका है?

मैं नेटपीयर टीसीपी बाइंडिंग को देख रहा था, लेकिन यह अप्रचलित है। निष्पक्ष होने के लिए मुझे यकीन नहीं है कि यह एक वैध समाधान है या नहीं।

पृष्ठभूमि:।

  • मैं एक Windows सेवा एक WCF सेवा और एक WCF ग्राहक में बनाया के साथ हमारे नेटवर्क में मशीनों के सैकड़ों पर स्थापित करने की योजना है
  • मैं एक Windows सेवा एक पर स्थापित होगा एक WCF सेवा और एक ग्राहक में बनाया के साथ सर्वर।
  • मैं एक Windows Forms आवेदन
  • होगा मैं एक डेटाबेस
होगा

डेटाबेस पर कुछ डेटाबेस डेटाबेस पर कुछ जानकारी डालने के लिए सर्वर पर चल रही सेवा से कनेक्ट होंगे।

उपयोगकर्ता सर्वर पर विंडोज सेवा से कनेक्ट करने के लिए विंडोज फॉर्म एप्लिकेशन का उपयोग करेगा और यह विंडोज सेवा कारखाने के तल पर प्रासंगिक क्लाइंट से कनेक्ट होगी (फ़ाइलों और फ़ोल्डरों की दूरस्थ ब्राउज़िंग की अनुमति देने के लिए)।

इसलिए मेरा मानना ​​है कि। फर्श और दोनों सर्वर पर मशीनों एक WCF cleint और सेवा में बनाया आवश्यकता

+3

क्या आप व्यवसाय के मामले को थोड़ा और समझा सकते हैं? सर्वर पर डब्ल्यूसीएफ सेवा को किसी भी ग्राहक के साथ संचार शुरू करने की आवश्यकता क्यों है? – levelnis

+3

आप WSDualHttp बाइंडिंग – Alex

+0

स्पष्ट प्रश्न का उपयोग क्यों नहीं कर सकते हैं - यदि मैं अपनी अद्यतन पृष्ठभूमि के प्रति समझ में आता हूं तो मैं WSDualHttp बाइंडिंग का प्रयास करूंगा? – user1438082

उत्तर

5

यदि आप अपनी सेवा अपने ग्राहकों के साथ संवाद करना चाहते हैं तो wsDualHttp बाइंडिंग का उपयोग करें।

WS Dual HTTP पढ़ें।

18

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

'डुप्लेक्स' नामक संचार के प्रकार में कई भिन्नताएं हैं। आधा और पूर्ण सबसे सरल हैं।

  • आधा डुप्लेक्स: वॉकी-टॉकी की तरह काम करता है, एक व्यक्ति किसी भी समय बोल सकता है।
  • पूर्ण डुप्लेक्स: किसी फोन की तरह, कोई भी व्यक्ति किसी भी समय बोल सकता है।

प्रत्येक एक लाभ और समस्या पेश करेगा, वे आपकी आवश्यकताओं के आधार पर इस संचार को और अधिक प्रभावी ढंग से बनाने के तरीके भी प्रदान करते हैं।


मैं थोड़ा उलझन में हूं, लेकिन मैं स्पष्टीकरण देने का प्रयास करूंगा।

  • पता
  • बाइंडिंग
  • अनुबंध

उन हैं:

आप दृष्टिकोण है कि यहाँ हो सकता है की एक वर्गीकरण है, एक Windows संचार फाउंडेशन (WCF) सेवा निम्नलिखित की आवश्यकता है अनिवार्य रूप से डब्ल्यूसीएफ के लिए "एबीसी"।

WCF Diagram

आप देख सकते हैं सेवा में शामिल होंगे:

  • होस्ट
  • सेवा
  • ग्राहक

उन के निर्माण के इस तरह एक तस्वीर को दर्शाया गया है मेजबान घर सेवा करता है जो ग्राहक consu होगा मुझे इसलिए वे सेवा विधियां वांछित कार्य करती हैं। एक उदाहरण प्रतिनिधित्व:

Endpoints

जैसा कि आप देख क्लाइंट-1 इंटरनेट के माध्यम से जा रहा है (HTTP, HTTPS, आदि) तो मेजबान है, जो सेवा करना होगा मारा जाएगा उन कार्यों को।

अब क्लाइंट-एन स्थानीय रूप से सेवा का उपभोग कर रहा है, इसलिए यह एक उदाहरण के रूप में (टीसीपी, आदि) पर बात कर रहा है।

याद रखने का सबसे आसान तरीका: कई सेवाओं को उपभोग किया जा सकता है हालांकि कई ग्राहकों को कार्य करने के लिए उन विधियों की आवश्यकता होती है। आप service-oriented architecture (SOA) का उपयोग करके बहुत जटिल मॉडल बना सकते हैं।

सभी डब्ल्यूसीएफ, आपके आवेदन को होस्ट या केंद्रीकृत स्थान से कनेक्ट करने का माध्यम है जिसका आपके पास उपयोग नहीं हो सकता है।

The client through service to host, to access database.

आप ऊपर छवि में देख सकते हैं, ग्राहक एक सेवा होस्ट करने के लिए के माध्यम से संचार करता है। जो कार्य की एक श्रृंखला करता है। डब्ल्यूसीएफ प्रोटोकॉल की एक सरणी पर बात करेगा। उम्मीद है कि यह डब्ल्यूसीएफ की संरचना के बारे में बेहतर समझ प्रदान करेगा।

आपके पास शुरू करने के लिए बहुत सारे ट्यूटोरियल और पोस्ट भी हैं। "डब्ल्यूसीएफ चरण दर चरण" जैसी कुछ उत्कृष्ट किताबें।


अनिवार्य रूप से आप एक एसिंक्रोनस पूर्ण डुप्लेक्स कनेक्शन, या एक सिंक्रोनस पूर्ण डुप्लेक्स सेवा की तलाश में हैं। जैसा ऊपर बताया गया है, संक्षेप में आपका कार्य सेवा का बिंदु है।

प्रश्न: यह कैसे काम करता है?

यह आपके डिज़ाइन पर उबाल जाएगा। ऐसी सीमाएं और संरचनाएं हैं जिन्हें आपको अपने लक्ष्य के लिए वास्तव में अनुकूलित करने के लिए पालन करने की आवश्यकता होगी।

इस तरह की बाधाओं को हो सकता है:

  1. सर्वर लोड
  2. संचार पथ
  3. सुरक्षा
  4. एकाधिक ग्राहकों के फेरबदल यूआई/एक ही डेटा
  5. आदि

सूची जारी है और जारी है। मैं वास्तव में डब्ल्यूसीएफ पर ट्यूटोरियल या कुछ किताबें देखता हूं। यहाँ कुछ कर रहे हैं:

वे y में मदद मिलेगी अपने इच्छित लक्ष्य का पालन करने के लिए सेवा संरचना के साथ कहां काम करें।


डब्ल्यूसीएफ के साथ सबसे अधिक सफलता के लिए "एबीसी" याद रखें।

+0

नमस्ते, आपके पहले आरेख में मेरा होस्ट भी क्लाइंट से कनेक्ट करने में सक्षम होना चाहिए। तो यह कहने में सही है कि मुझे इस मामले में WSDualHttp बाइंडिंग का उपयोग करना चाहिए? – user1438082

+1

संचार के विभिन्न रूप हैं, हाफ डुप्लेक्स, पूर्ण डुप्लेक्स। आधा वॉकी-टॉकी की तरह है। एक समय में, फुल डुप्लेक्स एक फोन की तरह है, दोनों पार्टियां किसी भी समय बात कर सकती हैं। फिर जैसे अन्य ने 'wsDualHttp बाइंडिंग' का उल्लेख किया है, यह सब एक सुरक्षित और अंतःक्रियात्मक बाध्यकारी है जिसे डुप्लेक्स सेवा अनुबंधों के उपयोग के लिए डिज़ाइन किया गया है जो दोनों सेवाओं और ग्राहकों को संदेश भेजने और प्राप्त करने की अनुमति देता है। तो यह आपको अपनी जरूरतों के आधार पर आधा या पूर्ण डुप्लेक्स चुनने की अनुमति देगा। – Greg

+0

WSDualHttp बाइंडिंग की तरह लगता है कि ऐसा करने का तरीका है। धन्यवाद – user1438082

2

आप netTcpBinding का उपयोग कर डब्लूसीएफ सेवा बनाने का प्रयास करना चाहेंगे। यह आपकी आवश्यकताओं के लिए काम करेगा। आप एक शुरुआत के रूप लेख How to: Use netTcpBinding with Windows Authentication and Transport Security in WCF Calling from Windows Forms उपयोग कर सकते हैं:

इसके अलावा, वहाँ कई उदाहरण the WCF Samples package जो आप उपयोग कर सकते हैं में शामिल कर रहे हैं।

संबंधित मुद्दे