[ 
https://issues.apache.org/jira/browse/STORM-1057?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=14939786#comment-14939786
 ] 

ASF GitHub Bot commented on STORM-1057:
---------------------------------------

Github user revans2 commented on a diff in the pull request:

    https://github.com/apache/storm/pull/753#discussion_r40910516
  
    --- Diff: storm-core/src/jvm/backtype/storm/utils/RateTracker.java ---
    @@ -72,7 +80,7 @@ public RateTracker(int validTimeWindowInMils, int 
numOfSlides, boolean simulate
          * @param count number of arrivals
          */
         public void notify(long count) {
    -        _histograms[_histograms.length-1]+=count;
    +        _histograms[_numOfSlides - 1] += count;
    --- End diff --
    
    I was planning on doing it today, because I had already pulled it into my 
distribution, and it should not be that hard to do.  It is mostly switching the 
_histograms to be an array of AtomicLong instead of regular long, and then 
making sure that the current bucket is modified using getAndSet so that there 
is no read modify write that is not atomic.  I was also thinking I would do 
something so that the current bucket does not require any offset calculations, 
but that is a very small optimization, that once the JIT kicks in probably 
would not make any difference.


> Add throughput metric to spout/bolt and display them on web ui
> --------------------------------------------------------------
>
>                 Key: STORM-1057
>                 URL: https://issues.apache.org/jira/browse/STORM-1057
>             Project: Apache Storm
>          Issue Type: New Feature
>          Components: storm-core
>            Reporter: Li Wang
>            Assignee: Li Wang
>   Original Estimate: 168h
>  Remaining Estimate: 168h
>
> Throughput is a fundamental metric to reasoning about the performance 
> bottleneck of a topology. Displaying the throughputs of components and tasks 
> on the web ui could greatly facilitate the user identifying the performance 
> bottleneck and checking whether the the workload among components and tasks 
> are balanced. 
> What to do:
> 1. Measure the throughput of each spout/bolt.
> 2. Display the throughput metrics on web UI.



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)

Reply via email to