2009-02-13 13 views
7

मैं स्थानीय कनेक्शन हानि का पता लगाने के लिए देख रहा हूँ। क्या ऐसा करने का कोई मतलब है, जैसे Corelabs घटकों पर घटनाओं के साथ?डेटासैप: वैश्विक स्तर पर कनेक्शन हानि का पता लगाने का कोई तरीका है?

धन्यवाद

संपादित करें: क्षमा करें, मैं और अधिक विशिष्ट होने की कोशिश करने जा रहा हूँ: मैं वर्तमान में एक प्रोटोटाइप datasnap 2009 का उपयोग कर एक पतली ग्राहक को डिजाइन कर रहा हूँ तो मुझे मिल गया है, एक राज्यविहीन सर्वर अनुप्रयोग और एक डेटाबेस सर्वर।

क्लाइंट और सर्वर ऐप के बीच कनेक्शन हानि (इंटरनेट कनेक्टिविटी) को उचित रूप से संभालने के लिए मैं क्या कर पाऊंगा और संभाल सकता हूं, यानी: उपयोगकर्ता को एक सूचनात्मक त्रुटि संदेश प्रदर्शित करें या सर्वर शटडाउन का पता लगाने के लिए चुपचाप एक और ऐप सर्वर पर रीडायरेक्ट करने के लिए।

2-स्तरीय में मैं ओडीएसी घटकों के साथ इसका प्रबंधन करता था, तो टॉरेशन के पास इन मुद्दों को संभालने के लिए कुछ घटनाएं होती हैं।

उत्तर

4

आम तौर पर कनेक्शन के टूटने पर कोई घटना नहीं होती है, जब तक डेटाबेस के खिलाफ कोई कथन निकाल दिया नहीं जाता है। ऐसा इसलिए है क्योंकि कनेक्शन हानि को जानने का कोई तरीका नहीं है जब तक कि कुछ प्रकार का जीवित पिंगिंग नहीं चल रहा हो।

कई ढांचे जांचते हैं कि सर्वर के खिलाफ बहुत छोटी क्वेरी करके कनेक्शन अभी भी वैध है या नहीं। एक सर्वर से समय मिल रहा है। विशेष रूप से एक कनेक्शन पूलिंग पर्यावरण में।

आप कुछ डेटाबेस ईवेंट (पहले से निष्पादित?) में अपने एप्लिकेशन में कनेक्शन जांच फ़ंक्शन को कार्यान्वित कर सकते हैं। या एक टाइमर बनाएं जो हर 10 सेकंड की जांच करता है।

+0

मैं सुनिश्चित नहीं हूं कि कनेक्शन का पता लगाने का कोई रास्ता नहीं है नुकसान, क्योंकि अंतर्निहित सॉकेट का कनेक्शन नुकसान पता लगाने योग्य हो सकता है। हालांकि यह सच है कि अधिकांश पुस्तकालयों के लिए कोई घटना नहीं है। – mghie

1

क्लाइंट पर एक थ्रेड स्पॉन करें जो समय-समय पर कुछ आरपीसी 'पिंग' या 'हार्टबीट' आदेश सर्वर पर भेजता है।

  • अगर यह विफल रहता है, ग्राहक को पता है कि कुछ कनेक्शन

  • हुआ करता है, तो सर्वर कुछ समय अवधि के लिए अब और ग्राहक सुन नहीं करता है (उदाहरण के लिए, दो बार दिल की धड़कन अंतराल), वह निष्कर्ष निकाल सकते हैं कि क्लाइंट डिस्कनेक्ट है, हालांकि यह स्टेटफुल सर्वर के लिए आवश्यक (और अपने डिजाइन राज्यविहीन है, इसलिए यह एक माध्यमिक प्रणाली है, जो एक संदेश कतार के माध्यम से खिलाया जा सकता है में घटना प्रसंस्करण की आवश्यकता होगी)

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

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