public interface BRSStatMXBean
System Health parameter is exposed over JMX to expose the current health of the Cluster
Throughput calculation formula: small batch processing time - time to process a single 'small batch' (average) batchSize - size of a single 'small batch' threadPoolSize - thread pool size
1000 [ms] / small batch processing time [ms] * batchSize = threadThruput [request/sec/thread]
Example: 1000 / 30 * 18 = 600 [request/sec/thread]
threadThruput [request/sec/thread] * threadPoolSize [thread] = batchRequestServiceThruput [request/sec]
Example: = 120000 [request/sec]
Modifier and Type | Method and Description |
---|---|
int |
getBatchSize()
Returns the current regular priority Batch Size
|
long |
getBatchTimeOut()
Returns the regular priority Batch Timeout in milliseconds
|
int |
getHighPriorityBatchSize()
Returns the current high priority batch size.
|
long |
getHighPriorityBatchTimeOut()
Returns the High Priority Batch Timeout in milliseconds.
|
int |
getHighPriorityThreadPoolSize()
Method used to get the current size of the ThreadPool for the high priority ExecutorService used
within the BatchRequestService.
|
java.util.Map<java.lang.String,java.util.Map<java.lang.String,java.math.BigDecimal>> |
getMonitoringStats(long startTime,
int duration)
returns the latency statistics for Client-to-Client round trip processing.
|
int |
getReportingWindowSize()
Gets the reporting window size in seconds.
|
int |
getResponseTimeout()
Gets the current timeout value in seconds.
|
java.util.Map<java.lang.String,java.lang.Long> |
getStats(long startTime,
int duration)
returns the latency statistics for Client-to-Client round trip processing.
|
java.lang.String |
getSystemHealth()
Return the cluster health, maintained by BRS by tracking the nodes joining / leaving the cluster
|
int |
getThreadPoolSize()
Method used to get the current size of the ThreadPool for the regular priority ExecutorService used
within the BatchRequestService.
|
long |
getThresholdLatency()
Gets the thresholdLatency
|
void |
init(long start,
long end)
Initialize the service with a range of customers.
|
boolean |
sendDiagnosticCode(java.lang.String code)
Passes a diagnostic code to the BRS, output is sent to the BRS log file.
|
void |
setBatchSize(int batchSize)
Sets the size of how many requests should be bundled together before being sent for processing.
|
void |
setBatchTimeOut(long millis)
The time out in milliseconds at which the BRS sends the batch of requests for processing if the batch
is not already filled
Must be greater than or equal to the high priority Batch Timeout.
|
void |
setHighPriorityBatchSize(int batchSize)
Sets the size of how many high priority requests should be bundled together before being sent for processing.
|
void |
setHighPriorityBatchTimeOut(long millis)
The time out in milliseconds at which the BRS sends the batch of requests for processing if the high priority batch
is not already filled
Must be lesser than or equal to the regular priority Batch Timeout.
|
void |
setHighPriorityThreadPoolSize(int size)
Method used to modify the ThreadPool size of the high priority ExecutorService used within
the BatchRequestService.
|
int |
setReportingWindowSize(int seconds)
Sets the reporting window size in seconds
|
void |
setResponseTimeout(int timeout)
Sets the timeout threshold, in seconds, indicating how long the BRS will wait for an
ECE Node to respond to a Request submission.
|
void |
setThreadPoolSize(int size)
Method used to modify the ThreadPool size of the regular priority ExecutorService used within
the BatchRequestService.
|
long |
setThresholdLatency(long thresholdLatency)
Sets the thresholdLatency
|
void setResponseTimeout(int timeout)
timeout
- the timeout value in seconds. When the timeout value is exceeded, the BRS will return a
failure response through the CombinedResponseConsumer callback. Any supplied value which is less-than 0 seconds will be ignored
and have no effect on the current timeout value. (default out-of_box setting is 1 second).int getResponseTimeout()
void setThreadPoolSize(int size)
size
- of the thread pool.int getThreadPoolSize()
void setBatchTimeOut(long millis)
millis
- Batch timeout in millisecondslong getBatchTimeOut()
void setBatchSize(int batchSize)
batchSize
- intint getBatchSize()
void setHighPriorityThreadPoolSize(int size)
size
- of the thread pool.int getHighPriorityThreadPoolSize()
void setHighPriorityBatchTimeOut(long millis)
millis
- Batch timeout in millisecondslong getHighPriorityBatchTimeOut()
void setHighPriorityBatchSize(int batchSize)
batchSize
- intint getHighPriorityBatchSize()
java.lang.String getSystemHealth()
boolean sendDiagnosticCode(java.lang.String code)
code
- the dianostic code (ex, "-BRS::AvailTimeSpreads").int setReportingWindowSize(int seconds)
seconds
- intint getReportingWindowSize()
long setThresholdLatency(long thresholdLatency)
thresholdLatency
- in milli seconds longlong getThresholdLatency()
void init(long start, long end)
start
- starting customer idend
- ending customer idjava.util.Map<java.lang.String,java.lang.Long> getStats(long startTime, int duration)
startTime
- the commencement time for gathering stats. Can be 0 to indicate the now time.duration
- the number of seconds worth of data to return, starting from the supplied startTime.java.util.Map<java.lang.String,java.util.Map<java.lang.String,java.math.BigDecimal>> getMonitoringStats(long startTime, int duration)
startTime
- the commencement time for gathering stats. Can be 0 to indicate the now time.duration
- the number of seconds worth of data to return, starting from the supplied startTime.