2017-02-08 6 views

答えて

1

終了コマンドはありませんが、コンシューマグループごとにメッセージキューごとに、管理インフラストラクチャを使用してクライアントを見つけることができます。ここでは、この達成スニペットれる:あなたはRocketMQ・コンソールプロジェクトを使用していない場合は

private Map<MessageQueue, String> getClientConnection(DefaultMQAdminExt defaultMQAdminExt, String groupName){ 
    Map<MessageQueue, String> results = new HashMap<MessageQueue, String>(); 
    try{ 
     ConsumerConnection consumerConnection = defaultMQAdminExt.examineConsumerConnectionInfo(groupName); 
     for (Connection connection : consumerConnection.getConnectionSet()){ 
      String clinetId = connection.getClientId(); 
      ConsumerRunningInfo consumerRunningInfo = defaultMQAdminExt.getConsumerRunningInfo(groupName, clinetId, false); 
      for(MessageQueue messageQueue : consumerRunningInfo.getMqTable().keySet()){ 
       results.put(messageQueue, clinetId + " " + connection.getClientAddr()); 
      } 
     } 
    }catch (Exception e){ 

    } 
    return results; 
} 

は、試してみて、それを実行してください:消費者タブでhttps://github.com/rocketmq/rocketmq-console-ng

、「消費者の詳細」ボタンをクリックして、あなた次のようにメッセージキューの割り当て結果が視覚的に表示されます。 Message queues allocation result

関連する問題