2011-08-30 20 views
20

मैं एक मोबाइल संदेश सेवा बनाना चाहते हैं, लेकिन मैं नहीं जानता कि जो एक सॉकेट प्रोग्रामिंग या वेब सेवा का उपयोग करने के लिए बेहतर है?।सॉकेट प्रोग्रामिंग बनाम वेब सेवा?

क्या चिंता है कि मैं जब इस तरह के सेवा बनाने पर विचार करते हुए लेने की जरूरत है? इस तरह के कनेक्शन की लागत .. आदि

के रूप में आप अधिक विवरण की जरूरत है सिर्फ सवाल नीचे मतदान से पहले मुझे बता सकते हैं या बंद किया जा करने के लिए!

+1

जिसे करने के लिए इसे नीचे मतदान कर सकते हैं! मुझे बताओ क्यों ?? – Adham

+0

यह समझना मुश्किल है कि आप क्या पूछ रहे हैं। वेब सेवाएं सॉकेट के माध्यम से काम करती हैं - यह या तो नहीं है। "चिंताएं क्या हैं ..." मूल रूप से उत्तर देने वाले को एक पुस्तक लिखने का अनुरोध करती है। –

+0

द्वितीय के रूप में जानते हैं, वेब सेवा, HTTP प्रोटोकॉल, जहां HTTP पैकेट कई अतिरिक्त डेटा (हेडर) जो परिणाम अधिक यातायात की खपत में मतलब है का उपयोग करता है यह प्रभावी करता है हमारे प्रोटोकॉल डिजाइन करने के लिए सॉकेट प्रोग्रामिंग का उपयोग कर इस तरह के समस्या को कम करने। विचारों के बारे में, यदि आपको कोई डीटिल नहीं चाहिए तो मुझे महत्वपूर्ण शीर्षकों की आवश्यकता है .. – Adham

उत्तर

17

Webservices आम तौर पर बात कर रहे हैं "आसान" ऐसा करने के लिए, उन में काफी दिलचस्पी और डेवलपर टूल में और पुस्तकालयों और चौखटे के माध्यम से उनके लिए समर्थन करने के लिए धन्यवाद।

हालांकि, खासकर यदि आपकी पेलोड छोटा है (संदेशों लगता है एक ठेठ एसएमएस या ट्वीट का आकार), भूमि के ऊपर आप webservices के साथ बनाने के निषेधात्मक है: GPRS या UMTS की तरह एक वायरलेस नेटवर्क पर भेजी गई बाइट अभी भी बहुत महंगा तुलना में कर रहे हैं, केबल या एडीएसएल पर बाइट्स के लिए। और वेब सेवाओं में अदृश्य जानकारी की कई परतें होती हैं जो अंत ग्राहक को भी भुगतान करना पड़ता है।

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

सॉकेट को देखते हुए, यूडीपी पर भी एक नज़र डालें: यदि आप इस तथ्य के साथ रह सकते हैं कि मूल रूप से आप किसी को पैकेट फेंकते हैं, और आपके प्रोटोकॉल में कुछ एके तंत्र को डिजाइन किए बिना आप कभी भी सुनिश्चित नहीं होंगे कि संदेश पहुंचा है, यह बहुत ही कुशल है क्योंकि कनेक्शन बनाने और बनाए रखने के लिए कोई ट्रैफिक नहीं है, और यहां तक ​​कि बहुत लंबे संदेश भी 1 यूडीपी पैकेट के अंदर पहुंचा जा सकता है।

संपादित करें टिप्पणी के आधार पर:

  • धारा सॉकेट: यकीन नहीं आप धाराओं कैसे परिभाषित है, लेकिन नदियों और संदेशों मेरे लिए दो बहुत ही अलग अवधारणाओं रहे हैं, एक धारा डेटा की एक आम तौर पर लंबे समय तक अनुक्रम भेजा जा रहा है, जबकि है एक संदेश एक इकाई है जिसे भेजा जाता है, और वैकल्पिक रूप से रिसीवर द्वारा स्वीकृत या उत्तर दिया जाता है।
  • बैंडविड्थ सिमुलेशन: मुझे समझने का सबसे आसान तरीका है कि मैं किस बारे में बात कर रहा हूं Wireshark प्राप्त करना और नेट पर ले जाने वाली हर चीज को एक बहुत ही छोटी स्ट्रिंग के सरल अनुरोध के लिए जोड़ना - आपको प्रशासनिक की कई परतें दिखाई देगी जानकारी (यानी अदृश्य, अलग-अलग प्रोटोकॉल परतों को बनाने के लिए बस) जो अंतिम उपयोगकर्ता द्वारा भुगतान किए जाने वाले सभी ट्रैफ़िक हैं। फिर, एक ही संदेश को परिवहन के लिए यूडीपी का उपयोग करके एक छोटी सी नकली सेवा लिखें, या netcat जैसे टूल का उपयोग करें, अच्छा ट्यूटोरियल here, और बाइट्स को ट्रांसपोर्ट करें। आप आदान-प्रदान किए गए बाइट्स की संख्या में बहुत अधिक अंतर देखेंगे।

EDIT2, कुछ मैं उल्लेख करना भूल गया: मोबाइल सार्वजनिक IP पते से पहचान उपकरणों के साथ खुला, पारदर्शी नेटवर्क हुआ करता था नेटवर्क। एनएटीड मोबाइल नेटवर्क की ओर तेजी से विकास हुआ है जिसका इस पर प्रभाव पड़ता है कि इस "दीवार वाले बगीचे" के अंदर और बाहर के उपकरण कैसे संचार कर सकते हैं (NAT traversal)। अपने संचार चैनल को डिजाइन करते समय आपको इसे ध्यान में रखना होगा।

एक चैट आवेदन के लिए स्ट्रीम में इस्तेमाल के लिए के रूप में: यह कुछ वैचारिक लाभ प्रदान करता है, लेकिन आप बहुत अच्छी तरह से, यूडीपी के शीर्ष पर एक चैट एप्लिकेशन परत देखने here या here

+0

कृपया आप .. "मैं कम से कम सलाह कुछ बैंडविड्थ सिमुलेशन गणना करने के लिए चाहते हैं" के बारे में अधिक जानकारी और धन्यवाद आप उदाहरण के लिए अपने बहुत उपयोगी जानकारी – Adham

+0

लिए बहुत-बहुत दे सकते हैं। ऐसी सेवा के पीछे तकनीक आपको क्या लगता है ?? .. http://www.redmondpie.com/chaton-for-iphone-android-and-blackberry-is-samsungs-answer-to-imessage-video/ – Adham

+0

माफ करना, मैं, धाराओं में मतलब मैं पर लागू करना चाहते हैं ऑनलाइन चैट, क्या यह एक अच्छी अवधारणा है? – Adham

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