atom feed18 messages in org.wso2.architecture[Architecture] RFC:Building Performan...
FromSent OnAttachments
Srinath PereraSep 25, 2014 8:08 pm 
Sajith RavindraSep 26, 2014 12:01 am 
Paul FremantleSep 26, 2014 12:41 am 
Thomas WiegerSep 26, 2014 11:07 pm 
Srinath PereraSep 28, 2014 9:30 pm 
Isuru PereraNov 13, 2014 5:28 am 
Srinath PereraNov 17, 2014 6:23 pm 
Isuru PereraNov 17, 2014 10:41 pm 
Isuru PereraDec 3, 2014 12:09 am 
Ramith JayasingheDec 3, 2014 12:23 am 
Isuru PereraDec 23, 2014 2:05 am 
Isuru PereraJan 22, 2015 10:59 pm 
Paul FremantleJan 22, 2015 11:04 pm 
Isuru PereraJan 27, 2015 1:42 am 
Paul FremantleJan 27, 2015 1:59 am 
Chintana WilamunaJan 27, 2015 7:34 am 
Isuru PereraJan 27, 2015 6:48 pm 
Isabelle MaunyJan 28, 2015 3:18 am 
Subject:[Architecture] RFC:Building Performance Probes into WSO2 Platfrom
From:Srinath Perera (srin@wso2.com)
Date:Sep 25, 2014 8:08:14 pm
List:org.wso2.architecture

We have some pretty nice probes already in ESB, that let you look into what is going in the same running in production. I think we need to do this generally and build it to other products. That should reduce time we spent debugging issues significantly.

My proposal is to build a probe Lib that looks like following.

There are two kinds of things you need to collect.

1. Throughput at give point of code (how fast calls goes though) 2. Latency between two points.

We will have two types of Probes. Code would look like following.

Probe probe = new Probe("Name", "throughput", timeDuration); .. probe.recordThroughput();

Probe probe = new Probe("Name", "latency", timeDuration, logLevel); ... long id = probe.startTicking() // this so same probe can be used by many threads ... probe.endTicking(id);

Probe will summarise data over given duration and expose. We need

1. JMX bean 2. BAM Agent 3. Can turn on, off via JMX agent or via System property 4. Have Tool Box 5. Have in product UI 6. Can configured to write data to logs

Each probe should be very small and should be able to create thousands without much effect. (e.g. create one for each mediator type)

WDYT?

--Srinath