Как я могу получить статистику из кэша Coherence? - PullRequest
4 голосов
/ 10 мая 2011

Я смотрю в Oracle Coherence для клиента, и одна из вещей, которые его интересуют, - получить от него статистическую информацию, чтобы понять схемы использования и т. Д.

Я знаю, что могу получить некоторую информацию отJMX, однако, есть также интерфейс CacheStatistics, из которого я хотел бы получать данные.Однако я не могу понять, как мне перейти от использования объекта кэша к получению его статистики.

Приведенный ниже код является моей реализацией POC, и я могу использовать объект 'cache' для помещения и получения значений изкеш, есть ли способ связать кеш с соответствующей статистикой?Я думаю, что-то упускаю что-то простое ...

    NamedCache cache = CacheFactory.getCache(cacheName);
    if(cache.isActive()){
            //Wrong because there's no link to the cache..
        SimpleCacheStatistics scs = new SimpleCacheStatistics();

        long hits = scs.getCacheHits();
        System.out.println("Cache hits:" +hits+"\n   : "+scs.toString());
    }

1 Ответ

0 голосов
/ 11 октября 2011

Если кэш близок к кешу, вы можете сделать следующее. Также проверьте API, чтобы получить кеш-кеш, чтобы увидеть его статистику.

if (cache instanceof NearCache) {
    System.out.println("\tstatistics :" + ((LocalCache)((NearCache)cache).getFrontMap()).getCacheStatistics());
}
...