Каковы различия между:В чем разница между стандартным MBean и динамическим MBean?
- Standard MBeans
- Динамические MBeans
Каковы плюсы и минусы каждого из них, и когда мы должны выбрать один из этих двух компонентов для управления ресурсом?
Каковы различия между:В чем разница между стандартным MBean и динамическим MBean?
Каковы плюсы и минусы каждого из них, и когда мы должны выбрать один из этих двух компонентов для управления ресурсом?
Стандартная меша имеет фиксированные метаданные, которые не изменяются в течение всего срока службы MBean. Динамические MBeans определяют свои метаданные «на лету» и могут изменять и повторно публиковать свои метаданные. Подумайте об этой [плохо] надуманной аналогии с Java: предположим, вы написали класс, в котором указано количество файлов в каталоге. Стандартный метод класса может выглядеть следующим образом:
public int getFileCount(String directoryName)
С другой стороны, версия Dynamic MBean этого класса хотел бы начать с какими-либо методами, но при запуске, он просматривает каталоги доступны, и создает новый метод для каждого каталога найдено:
public int getFileCountDir1();
public int getFileCountDir2();
....
public int getFileCountDirN();
Так что это не очень полезная установка, но предположим, что вы хотите создать MBean, которые отображаются все виртуальная машина в Свойства системы. Ну ... Свойства системы меняются ... и нет разумного способа узнать, какие ключи свойств будут определены раньше времени, так что это будет лучшее представление о том, для чего нужен Dynamic MBean.
Плюсы и минусы на самом деле сводятся к: