का उपयोग करते हुए वसंत + हाइबरनेट और उजागर MBean:
import org.hibernate.Cache;
import org.hibernate.SessionFactory;
import org.slf4j.LoggerFactory;
import org.springframework.stereotype.Component;
import javax.annotation.Resource;
@Component("CacheManagerMBean")
public class CacheManagerMBean {
private static final org.slf4j.Logger logger = LoggerFactory.getLogger(CacheManagerMBean.class);
@Resource(name = "sessionFactory")
private SessionFactory sessionFactory;
public void clearCache() {
Cache cache = sessionFactory.getCache();
if (null != cache) {
logger.info("Clearing cache...");
cache.evictAll();
cache.evictAllRegions();
logger.info("Clearing cache...Done!");
} else {
logger.error("No second level cache available for session-factory");
}
}
}
एक्सएमएल कॉन्फ़िग:
<bean id="jmxExporterCacheManagerMBean" class="org.springframework.jmx.export.MBeanExporter">
<property name="beans">
<map>
<entry key="CacheManager:type=SecondLevelCacheManager">
<ref bean="CacheManagerMBean"/>
</entry>
</map>
</property>
</bean>
और फिर JConsole का उपयोग कर जावा प्रक्रिया से कनेक्ट और प्रयोग MBean विधि मंगलाचरण - दूसरे स्तर कैश को साफ़ करने के लिए !
स्रोत
2016-11-24 07:20:27
यह एक सर्वर प्रश्न है, इसलिए, serverfault.com आपको उपयुक्त बनाता है। – Raptor
आप सर्वर को पुनरारंभ क्यों नहीं कर सकते? ऐसा लगता है कि आप लाइव हार्डवेयर पर या रिग के बहुत सीमित सेट पर परीक्षण कर रहे हैं, जो आपके परीक्षण अलगाव को तोड़ता है और आपके परीक्षण को अमान्य कर सकता है। जब तक आपकी तैनाती बहुत अधिक बीजान्टिन नहीं होती है, तो मैं अलग-अलग रिग रखने का सुझाव दूंगा, तो टॉमकैट बिल्कुल बॉक्स के बाहर संसाधन संसाधन नहीं है। –