Метрики кэша кофеина сообщают только о размере кэша, но не о соотношении попаданий/промахов с помощью микрометра.JAVA

Программисты JAVA общаются здесь
Ответить Пред. темаСлед. тема
Anonymous
 Метрики кэша кофеина сообщают только о размере кэша, но не о соотношении попаданий/промахов с помощью микрометра.

Сообщение Anonymous »

Я использую кэш кофеина для Java Spring Boot com.github.ben-manes.caffeine:caffeine:3.1.1. Это мой класс конфигурации кэша:

Код: Выделить всё

import com.github.benmanes.caffeine.cache.Caffeine;
import org.springframework.cache.CacheManager;
import org.springframework.cache.caffeine.CaffeineCacheManager;
import org.springframework.context.annotation.Bean;
import org.springframework.context.annotation.Configuration;

import java.util.ArrayList;
import java.util.List;

@Configuration
public class CacheConfig {

@Bean
public Caffeine caffeineConfig() {
return Caffeine.newBuilder()
.maximumSize(10000)
.recordStats()
.removalListener((key, value, removalCause) -> {
// TODO: log
});
}

@Bean
public CacheManager cacheManager(Caffeine caffeine) {
CaffeineCacheManager caffeineCacheManager = new CaffeineCacheManager();
caffeineCacheManager.setCaffeine(caffeine);

List list = new ArrayList();
list.add("AsyncTest.getStr");
list.add("AsyncTest.getStr2");
list.add("AsyncTest.getStr3");
list.add("AsyncTest.getStr4");
list.add("AsyncTest.getStr5");
caffeineCacheManager.setCacheNames(list);
return caffeineCacheManager;
}
}
У меня также есть методы тестирования с аннотацией Cacheable, например:

Код: Выделить всё

  @Cacheable("AsyncTest.getStr")
public String getStr(int i) {
return "abc";
}
и, наконец, у меня есть тестовый контроллер, который заполняет кеш:

Код: Выделить всё

    for (int i = 0; i < 1000; i++) {
asyncTest.getStr(i);
}
Однако, когда я проверяю метрики привода Spring, я вижу только один показатель, связанный с кешем: размер

Код: Выделить всё

        "myapp.cache.size": 250.0,
"myapp.cache.size.tags": "{name=AsyncTest.getStr, cache=AsyncTest.getStr, cacheManager=cacheManager}",
Однако почему я не вижу других показателей, таких как кэш.gets, кэш.путы и т. д., которые должны предоставляться Micrometer?

Подробнее здесь: https://stackoverflow.com/questions/743 ... ith-microm
Реклама
Ответить Пред. темаСлед. тема

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

  • Похожие темы
    Ответы
    Просмотры
    Последнее сообщение

Вернуться в «JAVA»