Встречается на собеседованиях • сегодня

Какие знаешь способы сбора JVM метрик

В Java есть несколько способов сбора JVM метрик:

  1. JMX (Java Management Extensions) - встроенный механизм мониторинга. Пример:
java
MBeanServer mbs = ManagementFactory.getPlatformMBeanServer();
ObjectName name = new ObjectName("java.lang:type=Memory");
MemoryMXBean memoryMBean = ManagementFactory.newPlatformMXBeanProxy(
    mbs, name.toString(), MemoryMXBean.class);
  1. JVM TI (Tool Interface) - низкоуровневый API для профилирования и мониторинга.

  2. Стандартные утилиты:

    • jstat - статистика памяти и GC
    • jmap - дампы памяти
    • jcmd - диагностические команды
  3. Библиотеки:

    • Micrometer - абстракция для экспорта метрик
    • Dropwizard Metrics - популярная библиотека метрик
    • Prometheus Java Client - для интеграции с Prometheus
  4. Профайлеры:

    • VisualVM
    • JProfiler
    • YourKit

Пример с Micrometer:

java
MeterRegistry registry = new PrometheusMeterRegistry(PrometheusConfig.DEFAULT);
registry.gauge("jvm.memory.used", Tags.empty(), 
    Runtime.getRuntime().totalMemory() - Runtime.getRuntime().freeMemory());

Для прода лучше использовать комбинацию JMX + специализированные библиотеки (Micrometer) + APM системы.

Sophi
Софи собрала все вопросы. Тренируйся и получай
офферы быстрее!
Попробовать бесплатноArrow

Следующий вопрос

Это единственный вопрос по вашему фильтру

как отвечать на вопрос
пример собеседования
фреймворки на собеседовании
типичные вопросы junior
интервью вопросы и ответы