JMX, Java Yönetim Uzantıları anlamına gelir; bu Java Yönetim Uzantıları anlamına gelir ve Java programlarını yönetmek ve izlemek için kullanılır. En yaygın kullanılan, JVM'nin izlenmesi ve yönetimidir; örneğin JVM bellek, CPU kullanımı, iş parçacığı sayısı, çöp toplama gibi işlemler. Ayrıca, log seviyesinin dinamik bir modifikatörü olarak da kullanılabilir; örneğin log4j, çevrimiçi servislerin log seviyesini dinamik olarak değiştirmek için JMX'i destekler. En önemlileri, makalenin başında bahsedilen Spring Boot Actuator, JConsole, VisualVM gibi çeşitli izleme araçları için de kullanılır.
JMX sadece bir standart, bir spesifikasyon değil, aynı zamanda Java yönetim sistemi için bir arayüz ve çerçevedir. Geliştiricilerin kendi uzantılarını özelleştirip geliştirmeleri için standartlar ve spesifikasyonlar var ve bir çerçeve olarak JDK, özellikle JVM'nin izleme ve yönetiminde ortak işlevleri uygulamamıza yardımcı oldu.
jconsole ile bağlanın
jconsole, JDK için yerleşik bir araçtır ve JDK ortamını yapılandırdıktan sonra sadece cmd komut satırına girmemiz yeterlidirjconsoleKutu. Aşağıda gösterildiği gibi:
RMI ile bağlanın
RMI genellikle uzaktan hizmetlere bağlanmak için kullanılır, ancak tabii ki yerel süreçler de kullanılabilir. Bu aynı zamanda uzaktan hizmet müşterilerini birbirine bağlamanın ilk adımıdır. MBean'ı kaydettiğimizde, kayıt tamamlandıktan sonra büyük bir kod parçası olduğunu, RMI bağlantısını açmak, 8999 portunu RMI erişim portu olarak açmak ve ardından istemcinin sabit bir bağlantı dizisiyle bağlanabileceğini fark ettiniz mi?
Bağlantı dizesinin formatıservice:jmx:rmi:///jndi/rmi://host:port/jmxrmi
Kafka'yı örnek olarak ele alalım, şöyle:
service:jmx:rmi:///jndi/rmi://192.168.1.182:9988/jmxrmi
|