एक जटिल जटिल सीआरयूडी अनुप्रयोग की कल्पना करें जिसमें तीन-स्तर-वास्तुकला है और वेब सर्विसेज पर संचार करता है। क्लाइंट सर्वर से बातचीत शुरू करता है और कुछ विज़ार्ड सामान की तरह करता है। विज़ार्ड को संसाधित करने के लिए क्लाइंट को सर्वर द्वारा दी गई प्रतिक्रिया की आवश्यकता होती है।स्टेटफुल बनाम स्टेटलेस वेबसाइट
हमने इस दृष्टिकोण के लिए राज्य या स्टेटलेस वेबसाइसेस के बारे में चर्चा शुरू की। मैंने कुछ शोध अपने स्वयं के अनुभव के साथ संयुक्त किया, जो मुझे बाद में बताए गए प्रश्न पर इंगित करता है।
स्टेटलेस निम्नलिखित गुण (हमारे मामले में) होने webservices:
+ high scalability
+ high availability
+ high speed
+ rapid testing
- bloated contract
- implementing more logic on server-side
लेकिन हम पहले दो अंक बाहर पार कर सकते हैं, हमारे आवेदन नहीं उच्च मापनीयता और उपलब्धता की जरूरत है।
तो हम राज्यव्यापी webservice पर आते हैं। मैं ब्लॉग और मंच पदों की एक गुच्छा पढ़ा है और सबसे आविष्कार बिंदु स्टेटफुल वेब सेवा को लागू करने गया था:
+ simplifies contract (protocol)
- bad testing
- runs counter to the basic architecture of http
लेकिन लगभग सभी वेब अनुप्रयोगों इन बुरा अंक है? वेब अनुप्रयोग http की स्टेटलेसनेस से बचने के लिए कुकीज़, क्वेरी स्ट्रिंग्स, सत्र आईडी और सभी चीजों का उपयोग करता है।
तो वेबसाइकिलों के लिए यह बुरा क्यों है?
बहुत डुप्ली के करीब: http://stackoverflow.com/questions/988819/stateful-webservice – gregmac
राज्य को ऐसी जगह पर रखें जो आसानी से राज्य को संभाल सके: डेटाबेस –