com.alibaba.csp.sentinel.datasource.zookeeper.ZookeeperDataSource.<init>()方法的使用及代码示例

x33g5p2x  于2022-02-05 转载在 其他  
字(2.7k)|赞(0)|评价(0)|浏览(142)

本文整理了Java中com.alibaba.csp.sentinel.datasource.zookeeper.ZookeeperDataSource.<init>()方法的一些代码示例,展示了ZookeeperDataSource.<init>()的具体用法。这些代码示例主要来源于Github/Stackoverflow/Maven等平台,是从一些精选项目中提取出来的代码,具有较强的参考意义,能在一定程度帮忙到你。ZookeeperDataSource.<init>()方法的具体详情如下:
包路径:com.alibaba.csp.sentinel.datasource.zookeeper.ZookeeperDataSource
类名称:ZookeeperDataSource
方法名:<init>

ZookeeperDataSource.<init>介绍

[英]This constructor is Nacos-style.
[中]这个构造函数是Nacos风格的。

代码示例

代码示例来源:origin: spring-cloud-incubator/spring-cloud-alibaba

@Override
public ZookeeperDataSource getObject() throws Exception {
  if (StringUtils.isNotEmpty(groupId) && StringUtils.isNotEmpty(dataId)) {
    // the path will be /{groupId}/{dataId}
    return new ZookeeperDataSource(serverAddr, groupId, dataId, converter);
  } else {
    // using path directly
    return new ZookeeperDataSource(serverAddr, path, converter);
  }
}

代码示例来源:origin: alibaba/Sentinel

private static void loadRules() {
  final String remoteAddress = "127.0.0.1:2181";
  final String path = "/Sentinel-Demo/SYSTEM-CODE-DEMO-FLOW";
  ReadableDataSource<String, List<FlowRule>> flowRuleDataSource = new ZookeeperDataSource<>(remoteAddress, path,
      source -> JSON.parseObject(source, new TypeReference<List<FlowRule>>() {}));
  FlowRuleManager.register2Property(flowRuleDataSource.getProperty());
}

代码示例来源:origin: alibaba/Sentinel

private static void loadRules2() {

    final String remoteAddress = "127.0.0.1:2181";
    // 引入groupId和dataId的概念,是为了方便和Nacos进行切换
    final String groupId = "Sentinel-Demo";
    final String flowDataId = "SYSTEM-CODE-DEMO-FLOW";
    // final String degradeDataId = "SYSTEM-CODE-DEMO-DEGRADE";
    // final String systemDataId = "SYSTEM-CODE-DEMO-SYSTEM";

    // 规则会持久化到zk的/groupId/flowDataId节点
    // groupId和和flowDataId可以用/开头也可以不用
    // 建议不用以/开头,目的是为了如果从Zookeeper切换到Nacos的话,只需要改数据源类名就可以
    ReadableDataSource<String, List<FlowRule>> flowRuleDataSource = new ZookeeperDataSource<>(remoteAddress, groupId, flowDataId,
        source -> JSON.parseObject(source, new TypeReference<List<FlowRule>>() {}));
    FlowRuleManager.register2Property(flowRuleDataSource.getProperty());

    // ReadableDataSource<String, List<DegradeRule>> degradeRuleDataSource = new ZookeeperDataSource<>(remoteAddress, groupId, degradeDataId,
    //         source -> JSON.parseObject(source, new TypeReference<List<DegradeRule>>() {}));
    // DegradeRuleManager.register2Property(degradeRuleDataSource.getProperty());
    //
    // ReadableDataSource<String, List<SystemRule>> systemRuleDataSource = new ZookeeperDataSource<>(remoteAddress, groupId, systemDataId,
    //         source -> JSON.parseObject(source, new TypeReference<List<SystemRule>>() {}));
    // SystemRuleManager.register2Property(systemRuleDataSource.getProperty());

  }
}

相关文章

ZookeeperDataSource类方法