2011-11-03 11 views
25

मैं हाइबरनेट के कैश क्षेत्र में नया हूं।उस हाइबरनेट कैश को कहां और कैसे जांचें वास्तव में

  1. यह जांचने का सबसे आसान तरीका कैश वास्तव में काम करता है?
  2. क्या कैश चालू होने पर हाइबरनेट समान एसक्यूएल स्टेटमेंट्स को जोड़ता है?
  3. क्या यह संग्रहीत डेटा (द्वितीय-स्तर कैश) के साथ फाइल सिस्टम में कोई फ़ोल्डर/फ़ाइल होना चाहिए?
  4. यह जांचने के लिए कि वर्तमान में कितना कैश उपयोग किया जाता है?

सादर, मार्सिन

उत्तर

16
  1. आप Hibernate statistics generation सक्षम कर सकते हैं true को hibernate.generate_statistics संपत्ति की स्थापना हो। फिर आप SessionFactory.getStatistics() के माध्यम से कैश हिट/मिस गिनती की निगरानी कर सकते हैं।

    साथ ही, जब SQL लॉगिंग सक्षम होती है तो आप विशेष SQL क्वेरी की उपस्थिति या अनुपस्थिति से कैश व्यवहार का विश्लेषण कर सकते हैं।

  2. यह कई कारकों पर निर्भर करता है। 21.2. The Second Level Cache और 21.4. The Query Cache

  3. यह कैश प्रदाता और इसकी कॉन्फ़िगरेशन पर निर्भर करता है। उदाहरण के लिए, EhCache डिस्क पर ओवरफ़्लो करने के लिए कॉन्फ़िगर किया जा सकता है।

  4. SessionFactory.getStatistics().getSecondLevelCacheStatistics() यह जानकारी प्रदान करता है।

+2

+1। कैश प्रदाता अक्सर जेएमएक्स बीन्स भी प्रदान करता है जिसे उनके अपने आंकड़ों के लिए कहा जा सकता है –

4

मुझे nice tool मिला है जो हाइबरनेट उपयोग (कैश) भी है। इन articles (here is part one) में Additionaly वहाँ अच्छी तरह से स्पष्टीकरण है कि कैसे हाइबरनेट कैश काम करता है (संबंधित लिंक भी देखें)। विश्लेषण चरणों के साथ भी एक अच्छा उदाहरण है।

वैसे भी उत्तर के लिए धन्यवाद।

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