当前位置: 首页>>代码示例>>Java>>正文


Java MaxMetric类代码示例

本文整理汇总了Java中storm.kafka.trident.MaxMetric的典型用法代码示例。如果您正苦于以下问题:Java MaxMetric类的具体用法?Java MaxMetric怎么用?Java MaxMetric使用的例子?那么, 这里精选的类代码示例或许可以为您提供帮助。


MaxMetric类属于storm.kafka.trident包,在下文中一共展示了MaxMetric类的2个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的Java代码示例。

示例1: PartitionManager

import storm.kafka.trident.MaxMetric; //导入依赖的package包/类
public PartitionManager(DynamicPartitionConnections connections, String topologyInstanceId, ZkState state, Map stormConf, SpoutConfig spoutConfig, Partition id) {
    _partition = id;
    _connections = connections;
    _spoutConfig = spoutConfig;
    _topologyInstanceId = topologyInstanceId;
    _consumer = connections.register(id.host, id.partition);
    _state = state;
    _stormConf = stormConf;
    numberAcked = numberFailed = 0;

    String jsonTopologyId = null;
    Long jsonOffset = null;
    String path = committedPath();
    try {
        Map<Object, Object> json = _state.readJSON(path);
        LOG.info("Read partition information from: " + path +  "  --> " + json );
        if (json != null) {
            jsonTopologyId = (String) ((Map<Object, Object>) json.get("topology")).get("id");
            jsonOffset = (Long) json.get("offset");
        }
    } catch (Throwable e) {
        LOG.warn("Error reading and/or parsing at ZkNode: " + path, e);
    }

    Long currentOffset = KafkaUtils.getOffset(_consumer, spoutConfig.topic, id.partition, spoutConfig);

    if (jsonTopologyId == null || jsonOffset == null) { // failed to parse JSON?
        _committedTo = currentOffset;
        LOG.info("No partition information found, using configuration to determine offset");
    } else if (!topologyInstanceId.equals(jsonTopologyId) && spoutConfig.forceFromStart) {
        _committedTo = KafkaUtils.getOffset(_consumer, spoutConfig.topic, id.partition, spoutConfig.startOffsetTime);
        LOG.info("Topology change detected and reset from start forced, using configuration to determine offset");
    } else {
        _committedTo = jsonOffset;
        LOG.info("Read last commit offset from zookeeper: " + _committedTo + "; old topology_id: " + jsonTopologyId + " - new topology_id: " + topologyInstanceId );
    }

    if (currentOffset - _committedTo > spoutConfig.maxOffsetBehind || _committedTo <= 0) {
        LOG.info("Last commit offset from zookeeper: " + _committedTo);
        _committedTo = currentOffset;
        LOG.info("Commit offset " + _committedTo + " is more than " +
                spoutConfig.maxOffsetBehind + " behind, resetting to startOffsetTime=" + spoutConfig.startOffsetTime);
    }

    LOG.info("Starting Kafka " + _consumer.host() + ":" + id.partition + " from offset " + _committedTo);
    _emittedToOffset = _committedTo;

    _fetchAPILatencyMax = new CombinedMetric(new MaxMetric());
    _fetchAPILatencyMean = new ReducedMetric(new MeanReducer());
    _fetchAPICallCount = new CountMetric();
    _fetchAPIMessageCount = new CountMetric();
}
 
开发者ID:redBorder,项目名称:rb-bi,代码行数:53,代码来源:PartitionManager.java

示例2: PartitionManager

import storm.kafka.trident.MaxMetric; //导入依赖的package包/类
public PartitionManager(DynamicPartitionConnections connections, String topologyInstanceId, ZkState state, Map stormConf, SpoutConfig spoutConfig, Partition id) {
    _partition = id;
    _connections = connections;
    _spoutConfig = spoutConfig;
    _topologyInstanceId = topologyInstanceId;
    _consumer = connections.register(id.host, id.partition);
    _state = state;
    _stormConf = stormConf;

    String jsonTopologyId = null;
    Long jsonOffset = null;
    String path = committedPath();
    try {
        Map<Object, Object> json = _state.readJSON(path);
        LOG.info("Read partition information from: " + path +  " --> " + json );
        if (json != null) {
            jsonTopologyId = (String) ((Map<Object, Object>) json.get("topology")).get("id");
            jsonOffset = (Long) json.get("offset");
        }
    } catch (Throwable e) {
        LOG.warn("Error reading and/or parsing at ZkNode: " + path, e);
    }

    if (jsonTopologyId == null || jsonOffset == null) { // failed to parse JSON?
        _committedTo = KafkaUtils.getOffset(_consumer, spoutConfig.topic, id.partition, spoutConfig);
        LOG.info("No partition information found, using configuration to determine offset");
    } else if (!topologyInstanceId.equals(jsonTopologyId) && spoutConfig.forceFromStart) {
        _committedTo = KafkaUtils.getOffset(_consumer, spoutConfig.topic, id.partition, spoutConfig.startOffsetTime);
        LOG.info("Topology change detected and reset from start forced, using configuration to determine offset");
    } else {
        _committedTo = jsonOffset;
        LOG.info("Read last commit offset from zookeeper: " + _committedTo + "; old topology_id: " + jsonTopologyId + " - new topology_id: " + topologyInstanceId );
    }

    LOG.info("Starting " + _partition + " from offset " + _committedTo);
    _emittedToOffset = _committedTo;

    _fetchAPILatencyMax = new CombinedMetric(new MaxMetric());
    _fetchAPILatencyMean = new ReducedMetric(new MeanReducer());
    _fetchAPICallCount = new CountMetric();
    _fetchAPIMessageCount = new CountMetric();
}
 
开发者ID:metamx,项目名称:incubator-storm,代码行数:43,代码来源:PartitionManager.java


注:本文中的storm.kafka.trident.MaxMetric类示例由纯净天空整理自Github/MSDocs等开源代码及文档管理平台,相关代码片段筛选自各路编程大神贡献的开源项目,源码版权归原作者所有,传播和使用请参考对应项目的License;未经允许,请勿转载。