Cassandra的Compaction源代码

CompactionManagerMbean和CompactionManager

首先是CompactionManagerMBean,这部分代码是一个接口,关于这部分可以主要参考:https://docs.oracle.com/javase/tutorial/jmx/mbeans/standard.html

其主要是使用JMX技术,即Java Management Extensions,是管理java的一种扩展。这种机制可以方便的管理、监控正在运行中的Java程序。常用于管理线程,内存,日志Level,服务重启,系统环境等。使用JMX技术主要是可以将资源通过Mbean对象进行管理。

Mbean:是Managed Bean的简称,可以翻译为“管理构件”。在JMX中MBean代表一个被管理的资源实例,通过MBean中暴露的方法和属性,外界可以获取被管理的资源的状态和操纵MBean的行为。事实上,MBean就是一个Java Object,同JavaBean模型一样,外界使用自醒和反射来获取Object的值和调用Object的方法,只是MBean更为复杂和高级一些。


对于CompactionManager:

其内部的数据的格式主要是使用了javax内部的openmbean.TabularData部分。下面的网址提供了一些代码的实例:

https://www.programcreek.com/java-api-examples/index.php?api=javax.management.openmbean.TabularData

同时包括了RateLimiter使用Google Guava的技术实现。 

监控使用实现的CompactionMetrics

参考:

https://www.jianshu.com/p/6aff920def9b

https://docs.oracle.com/javase/tutorial/jmx/mbeans/standard.html

https://docs.oracle.com/javase/8/docs/technotes/guides/jmx/overview/JMXoverviewTOC.html

https://docs.oracle.com/javase/8/docs/technotes/guides/jmx/tutorial/tutorialTOC.html

©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

相关阅读更多精彩内容

  • JMX JMX的全称为Java Management Extensions. 顾名思义,是管理Java的一种扩展。...
    瑜骐阅读 4,545评论 0 3
  • 简介 全称Java Management Extensions,从Java5.0开始引入到标准Java技术平台中。...
    0d1b415a365b阅读 2,231评论 0 4
  • 现实企业级 Java 开发中,有时候我们会碰到下面这些问题:OutOfMemoryError,内存不足内存泄露线程...
    达微阅读 5,987评论 0 9
  • IntelliJ远程调试教程 附录 第二章 jdk8工具集 https://docs.oracle.com/jav...
    泠泉阅读 404评论 0 0
  • 1 概述 很多Java相关的基础书籍(包括Java核心技术I、II)都没有涉及到JMX的内容,以至于大多数Java...
    yeonon阅读 1,225评论 0 1

友情链接更多精彩内容