मुझे आश्चर्य है कि बहु-थ्रेडेड ऐप में अनुमोदित अभ्यास है या नहीं। क्या मेरे पास प्रति थ्रेड एक डीएओ होना चाहिए या बस एक डीएओ को थ्रेड सुरक्षित सिंगलटन बनाना चाहिए।धागा या थ्रेडसेफ डीएओ प्रति एक डीएओ?
उत्तर
यह वास्तव में उस डेटा पर निर्भर करता है जिसका उपयोग आप डेटा एक्सेस के लिए कर रहे हैं। यदि आपके पास बहुत स्केलेबल डेटा एक्सेस है, और थ्रेड स्टैटिक डेटा एक्सेस के कुछ रूपों का उपयोग करके बहुत सारे धागे फायदेमंद हो सकते हैं।
यदि आपके पास स्केलेबल डेटा पहुंच नहीं है, तो आपका प्रदाता प्रति प्रक्रिया एकाधिक थ्रेड का समर्थन नहीं करता है, या आपको उस बिंदु पर स्केलेबिलिटी की आवश्यकता नहीं है, उचित सिंक्रनाइज़ेशन वाले सिंगलटन का उपयोग करना सरल और कार्यान्वित करना आसान है ।
अधिकांश व्यावसायिक शैली अनुप्रयोगों के लिए, मुझे व्यक्तिगत रूप से लगता है कि सिंगलटन दृष्टिकोण को बनाए रखना आसान है, और शायद बेहतर - अगर इसके अलावा किसी अन्य कारण से प्रभावी ढंग से परीक्षण करना बहुत आसान नहीं है। डेटा एक्सेस के लिए कई धागे होने की संभावना नहीं है, क्योंकि डेटा एक्सेस संभवतः एक बाधा नहीं बनती है जो उपयोगिता को प्रभावित करती है (यदि आप सही तरीके से डिज़ाइन करते हैं, और बैच अनुरोध उचित रूप से)।
उपयोग दृष्टिकोण है कि सबसे अच्छा सूट अपने आवेदन वास्तुकला, जब तक:
1) आपका डेटा का उपयोग वस्तुओं को बनाने के महंगा, जिस स्थिति में आप एक धागा सुरक्षित सिंगलटन की ओर झुक जाना चाहिए।
2) Active Record pattern में आपकी वस्तुएं उत्परिवर्तनीय स्थिति बनाए रखती हैं। (अपरिवर्तनीय डीएओ कॉन्फ़िगरेशन स्थिति, जैसे टाइमआउट थ्रेसहोल्ड, गिनती नहीं है।)
- 1. क्या डीएओ कॉल डीएओ कर सकता है?
- 2. एक अन्य डीएओ से एक डीएओ को बुला रहा है?
- 3. डीएओ पैकेज संरचना
- 4. ओआरएमएलआईटी के डीएओ
- 5. डीएओ और सेवा?
- 6. डीएओ विधियों और सिंक्रनाइज़
- 7. नियंत्रक/सेवाएं/डीएओ
- 8. पैटर्न (डीएओ एक्स गेटवे)
- 9. JPA और डीएओ कार्यान्वयन
- 10. डीएओ डिजाइन पैटर्न
- 11. स्प्रिंग रू: डीएओ
- 12. डीएओ इकाई परीक्षण
- 13. स्प्रिंग-हाइबरनेट डीएओ नामकरण सम्मेलन?
- 14. डीएओ और निर्भरता इंजेक्शन, सलाह?
- 15. डीएओ कक्षा कैसे डिजाइन करें?
- 16. स्प्रिंग सेवा और डीएओ परत
- 17. डीएओ पैटर्न और ओपन-क्लोज़ेड सिद्धांत
- 18. डीटीओ और डीएओ अवधारणाएं और एमवीसी
- 19. डीएओ पैटर्न - लेनदेन कहां फिट होते हैं?
- 20. डीएओ और सर्विस लेयर (जेपीए/हाइबरनेट + स्प्रिंग)
- 21. एंड्रॉइड प्रोजेक्ट पर डीएओ पैटर्न लागू करना
- 22. डीएओ पैटर्न के लिए सबसे अच्छा अभ्यास?
- 23. डीएओ और एसक्यूएल सर्वर से जुड़े लेनदेन
- 24. स्प्रिंग + हाइबरनेट, Autowire sessionFactory हाइबरनेट डीएओ
- 25. जेडीबीसी डीएओ - कोई अच्छा संदर्भ कार्यान्वयन?
- 26. क्या स्कैला में डीएओ पैटर्न अप्रचलित है?
- 27. स्कैला में डीएओ कैसे कार्यान्वित करें?
- 28. जेपीए के लिए एक सामान्य डीएओ बनाना जो मैं
- 29. PHP में एक डीएओ बनाने का उचित तरीका
- 30. टेबल में शामिल होने के लिए डीएओ कैसे बनाएं?
मेरा डीएओ वास्तव में दो स्रोतों से कनेक्ट हो रहा है: सरल डीबी और आरपीसी के माध्यम से एक PHP एपीआई। मेरा अनुमान है कि मुझे बाधाओं के मुद्दों से बचने के लिए लगभग 100 धागे के साथ प्रति थ्रेड डीएओ का उपयोग करना चाहिए। क्या आप इस मामले में नहीं होने के किसी भी स्पष्ट कारण देखते हैं? – pondermatic
डीएओ को सिंगलटन बनाने के लिए शायद बेहतर है, और आंतरिक रूप से, बस असीमित रूप से काम करें। इसके बाद यह आवश्यकतानुसार थ्रेडपूल का उपयोग करके स्केल कर सकता है ... यह विशेष रूप से PHP एपीआई के लिए सच है, क्योंकि वेब अनुरोध असीमित रूप से काम करते हैं, और अधिकांश वेब ढांचे के लिए इसका अच्छा समर्थन है ... –