2009-03-31 13 views
10

की विशेषताएं क्या हैं जेएमएक्स एमबीन डिजाइन करने में कुछ सर्वोत्तम प्रथाएं क्या हैं? आपके द्वारा महसूस किए जाने वाले किसी भी उदाहरण विशेष रूप से उपयोगी हैं?एक अच्छी तरह से डिज़ाइन किए गए जेएमएक्स एमबीएएन

+1

एक अच्छी तरह से डिजाइन JMX MBean – McGovernTheory

+0

वास्तव में अच्छा अच्छी तरह से डिजाइन JMX MBeans के किसी भी उदाहरण के ठोस उदाहरण के लिए खोज रहे सराहना की है ... – McGovernTheory

उत्तर

6

दरों की बजाय पूर्ण गणना देता है। जैसे दर प्राप्त करने के बजाय, डीबी प्रतिबद्धताओं की कुल संख्या वापस करें।

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

यदि आप मुख्य रूप से HTML इंटरफ़ेस के माध्यम से जेएमएक्स बीन्स का उपयोग कर रहे हैं, तो मेरे द्वारा अनुसरण किए जाने वाले कई अभ्यास हैं। नीचे अक्सर मतलब है कि आपके JMX सेम एक मौजूदा सेम (के रूप में सिर्फ मौजूदा तरीकों JMX-उजागर के खिलाफ) लपेट चाहिए:

  1. उत्पादन ठीक से प्रारूपित तार लौटे वस्तुओं का प्रतिनिधित्व। एक डिफ़ॉल्ट toString() आउटपुट प्राप्त करने के बाद बेकार
  2. कैप्चर और अपवाद प्रदर्शित कर सकते हैं। अन्यथा आपको एक रिक्त पृष्ठ मिल जाएगा और यह निर्धारित करने के लिए लॉग फाइलों पर जाना होगा कि क्या गलत हुआ
  3. यदि आप अलग-अलग वर्ण सेट प्रदर्शित कर रहे हैं, तो आपको प्रदर्शन समस्याओं को रोकने के लिए उचित रूप से आउटपुट से बचना पड़ सकता है (मैं भाग गया यह एक JMX नियंत्रण हमारे चीनी डेटा प्रदर्शित) के साथ संपर्क में तरीकों के
  4. आदानों ठीक से स्वच्छ किया जाना चाहिए (उदाहरण के लिए यह खाली स्थान के आदि को दूर करने के लिए यदि आप इनपुट एक ऑपरेशन के हिस्से के रूप में एक आईडी आप trim() करना चाह सकते हैं)

उपर्युक्त एक बीन से जोर देता है जो कि जेएमएक्स के माध्यम से किसी प्रयोग योग्य व्यवस्थापक कंसोल के पास आता है।

4

पहली चीज जो मुझे अपने पहले जेएमएक्स बीन के साथ मिली थी, रिटर्न प्रकार था - यदि आपकी विधियां स्ट्रिंग्स लौटती हैं तो यह बहुत आसान है - इस तरह आपका ग्राहक आसानी से प्रतिक्रिया प्रदर्शित कर सकता है (मैं मुख्य रूप से जेकोनोल के साथ काम कर रहा था) - अगर आप डॉन करते हैं ऐसा मत करो, आपको [email protected] जैसी प्रतिक्रियाएं मिलती हैं, जिसका मतलब बहुत अधिक नहीं है :)

+2

मैं इस संशोधित पुरातन प्लस स्ट्रिंग्स लौटने का सुझाव देना चाहते हैं। इस तरह आप संख्यात्मक मानों को ठीक से लॉग कर सकते हैं (कोई पार्सिंग आवश्यक नहीं) –

3

सुनिश्चित करें कि विशेषताओं का कोई दुष्प्रभाव नहीं है और आप संचालन में अनुमान लगा सकते हैं।

एक निर्दोष दिखने वाली विशेषता से कुछ भी बुरा नहीं है जो समय लेने वाली (या संसाधन लेने वाली) ऑपरेशन निष्पादित करता है। मैंने अपने समय में कुछ humdingers देखा है ..

+0

आपके द्वारा महसूस किए जाने वाले एमबीन के किसी भी उदाहरण अच्छी तरह से डिज़ाइन किए जाने के महान उदाहरण हैं? – McGovernTheory

+1

मुझे कई मानक सेम का उपयोग न करने के लिए कबूल करना चाहिए। जिन लोगों को मैंने कार्यान्वित किया है वे काउंटर, डेटा टेबल आदि हैं। सरलता वास्तव में कुंजी है। यह आपके दर्शकों पर भी निर्भर करता है। मैं तकनीक समर्थन के लिए एमबीन डिजाइन करता हूं (देव लोगों नहीं) और इसलिए उन्हें बहुत जटिल बनाने की कोशिश न करें! – Fortyrunner

1

लॉगिंग के लिए जेएमएक्स का उपयोग न करें, उदाहरण के लिए, एमबीएएन फ़ंक्शन का उपयोग न करें जो स्टार्टअप के बाद से सभी कनेक्शन का विवरण देता है।

किसी को याद रखना चाहिए कि जेएमएक्स निगरानी के लिए है। मतलब - वर्तमान क्षण के लिए प्रासंगिक डेटा केवल प्रदर्शित करें।

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