状态检查扩展

扩展说明

检查服务依赖各种资源的状态,此状态检查可同时用于 telnet 的 status 命令和 hosting 的 status 页面。

扩展接口

org.apache.dubbo.common.status.StatusChecker

扩展配置

  1. <dubbo:protocol status="xxx,yyy" />
  2. <!-- 缺省值设置,当<dubbo:protocol>没有配置status属性时,使用此配置 -->
  3. <dubbo:provider status="xxx,yyy" />

已知扩展

  • org.apache.dubbo.common.status.support.MemoryStatusChecker
  • org.apache.dubbo.common.status.support.LoadStatusChecker
  • org.apache.dubbo.rpc.dubbo.status.ServerStatusChecker
  • org.apache.dubbo.rpc.dubbo.status.ThreadPoolStatusChecker
  • org.apache.dubbo.registry.directory.RegistryStatusChecker
  • org.apache.dubbo.rpc.config.spring.status.SpringStatusChecker
  • org.apache.dubbo.rpc.config.spring.status.DataSourceStatusChecker

扩展示例

Maven 项目结构:

  1. src
  2. |-main
  3. |-java
  4. |-com
  5. |-xxx
  6. |-XxxStatusChecker.java (实现StatusChecker接口)
  7. |-resources
  8. |-META-INF
  9. |-dubbo
  10. |-org.apache.dubbo.common.status.StatusChecker (纯文本文件,内容为:xxx=com.xxx.XxxStatusChecker)

XxxStatusChecker.java:

  1. package com.xxx;
  2. import org.apache.dubbo.common.status.StatusChecker;
  3. public class XxxStatusChecker implements StatusChecker {
  4. public Status check() {
  5. // ...
  6. }
  7. }

META-INF/dubbo/org.apache.dubbo.common.status.StatusChecker:

  1. xxx=com.xxx.XxxStatusChecker