सरकारी अनुबंध के लिए हम एक यातायात निगरानी वास्तुकला बनाने का प्रस्ताव करेंगे। हमारे पास निम्नलिखित घटक होंगे:तो क्या मैं यहां एसओए के बारे में बात कर रहा हूं?
- ब्याज के क्षेत्र में वीडियो कैमरा सेट अप किया गया है। कैमरे उनके स्थान और अभिविन्यास और देखने के मानकों से अवगत होंगे।
- एक जीआईएस मानचित्र सर्वर जिसे सड़कों, भवन इत्यादि के लिए पूछताछ की जा सकती है
- कच्चे वीडियो और सड़क स्थान की जानकारी और आउटपुट कार स्थानों में एक एल्गोरिदम लेता है।
- एक और एल्गोरिदम कार स्थानों और बहुत कम स्तर की सड़क की जानकारी लेता है और जानकारी प्रदान करता है कि कौन सी कारें अनौपचारिक रूप से गाड़ी चला रही हैं।
- एक और डेटाबेस समय के साथ कार स्थानों और विसंगतियों की रिपोर्ट के बारे में जानकारी लेता है और इसके बाद इसके लिए पूछताछ की जा सकती है।
- जानकारी के लिए एक एकीकृत इंटरफ़ेस प्रदान करने के लिए संग्रह डेटाबेस और वास्तविक समय एल्गोरिदम पर एक प्रॉक्सी (या शायद अधिक सटीक, एक मुखौटा) स्थापित किया गया है।
- एक क्लाइंट प्रॉक्सी और सड़क सर्वर से जोड़ता है और स्क्रीन पर यातायात की स्थिति के विभिन्न प्रस्तुतिकरणों को चित्रित करता है।
मैं अभी सीख रहा हूं कि एसओए क्या है। क्या यह सेवा उन्मुख वास्तुकला एसओए का आदर्श उम्मीदवार है? मैंने सुना था कि एसओए सेवाएं स्टेटलेस होनी चाहिए (या केवल यही भरोसेमंद सेवाएं होनी चाहिए?) मैंने यह भी सुना था कि अगली अगली तक एक सेवा पाइप के लिए यह अचूक था क्योंकि इससे छिपी हुई जटिलता बढ़ जाती है, और ऐसा कुछ था जो आपको करना चाहिए इस स्थिति को बेहतर बनाने के लिए (एक "ऑर्केस्ट्रेशन"?)। उपर्युक्त सेवाएं मॉड्यूलर और पुन: प्रयोज्य प्रतीत होती हैं। उदाहरण के लिए, कैमरे, विभिन्न प्रकार के वाहन का पता लगाने और विसंगति एल्गोरिदम, वितरित डेटाबेस और बहुत सारे ग्राहक होंगे। मुझे घटनाओं को संभालने की क्षमता की आवश्यकता होगी: उदाहरण के लिए, यदि मैं किसी सेवा में पंजीकरण करना चाहता हूं और जब भी कोई बड़ा ट्रक इस बिंदु से आगे बढ़ता है तो अधिसूचित किया जा सकता है।
यदि यह एसओए द्वारा आदर्श रूप से लागू नहीं किया गया है, तो मुझे और कहां देखना चाहिए। यदि यह एसओए के लिए आदर्श है, तो इसे डिजाइन करते समय मुझे कहां से शुरू करना चाहिए? (और मैं मूल रूप से विकिपीडिया के एसओए पेज को पढ़ने से शुरू कर रहा हूं।) क्या यहां देखने के लिए कोई अच्छा केस स्टडी है?
बहुत अच्छी सलाह! धन्यवाद। एक टिप्पणी हालांकि, मेरे ढांचे के भीतर कई सेवाएं हैं जो स्टेटलेस नहीं हो सकती हैं (या अन्यथा मैं इस मामले में क्या स्टेटलेस माध्यमों को गलत समझता हूं)। उदाहरण के लिए, वाहन स्थान सेवा वीडियो सेवा के लिए एक ग्राहक होगी और वीडियो के नए फ्रेम को लगातार देखकर कारों (एक प्रकार की स्थिति) के स्थान का ट्रैक रखेगी। शायद महत्वपूर्ण बात यह है कि प्रत्येक सेवा को अपने ग्राहकों की स्थिति * नहीं रखना चाहिए। मुझे लगता है कि मैं यहां से दूर हो सकता हूं। – JnBrymn
क्या होगा यदि मैं सेवा को श्रोताओं का ट्रैक रखना चाहता हूं और जब भी नई जानकारी उपलब्ध हो, उन्हें सूचित करें। यह अपने ग्राहकों की स्थिति को बनाए रखने की सेवा का प्रतिनिधित्व नहीं करेगा, लेकिन इसका मतलब यह होगा कि सेवा अपने ग्राहकों को पॉइंटर्स रखती थी। क्या इससे कुछ दर्द होता है? – JnBrymn
ग्राहकों और सेवाओं में एक कड़ा युग्मन है। एक ग्राहक ऑफ़लाइन हो सकता है और आपको यह तय करना होगा कि ऐसी स्थिति में सेवा को क्या करना चाहिए, निरस्त करना, अनदेखा करना, पुनः प्रयास करना या किसी अन्य सिस्टम को सूचित करना चाहिए? – Kwebble