2013-05-08 2 views
13

Я пытался документировать значение всех показателей Storm для моего текущего проекта.Storm UI: разница между Execute и задержка процесса

Во время этого процесса я собрал данные из этих групповых ответов, а также github.

Хотя некоторые из показателей довольно понятны, я действительно запутался в некоторых показателях болтов.

Например, в чем разница между задержкой процесса и Задержкой выполнения?

Из сообщений на эту группу Google я собрал следующую информацию:

  • Список обработки элемент задержки = метку времени, когда извед называется - метка времени, когда выполнение передается кортеже

  • элемент списка выполнить задержку = метку времени, когда выполнение функции заканчивается - метки времени, когда Execute передается кортеж (источник: http://goo.gl/3KRAl)

и

  • Элемент списка Процесс задержка времени, пока кортеж не acked, выполнить латентность время, затраченное на выполнение для кортежа (источник: http://goo.gl/m0fTC)

Основываясь на том, что я вижу в моей буре UI, мой Execute Latency почти всегда больше, чем задержка процесса. Как это могло быть? Может ли кто-нибудь помочь мне с точным определением обеих задержек?

Заранее благодарен!

+0

Извините, что я новичок в штурме и запутывании чисел, которые я получил после представленной топологии. должен ли выполнять латентность все время затягивания процесса? Когда я попал в болты, наоборот. – user1

ответ

5

Ack вызывается в функции выполнения исполнителя или в двух словах будет вызываться перед тем, как выполнить метод завершения болта. Таким образом, латентность выполнения больше. Этот фрагмент кода будет делать вещи ясно (взято из here как есть):

public void execute(Tuple tuple) { 
    String sentence = tuple.getString(0); 
    for(String word: sentence.split(" ")) { 
    _collector.emit(tuple, new Values(word)); 
    } 
    _collector.ack(tuple); 
} 

Я надеюсь, что это помогает.

0

В соответствии с вашим определением, Задержка выполнения должна всегда быть больше, чем задержка процесса, поскольку ack вызывается внутри метода выполнения, как упоминал Абхиджит.

Если вы заметили существенную разницу, то, вероятно, у вас есть код после того, как вы получили кортеж.

Смежные вопросы