Deferred response with asynchronous implementation
You can obtain Application Response Measurement (ARM) statistics from an asynchronous implementation. The call to the service and the return result are invoked but the resulting output is sent to a data store from the service target.
Parameters
Event monitoring for Service
Component Architecture (SCA) components includes the event points
that are shown in black
, while the
event points shown in blue are used only
to calculate and fire PMI/ARM statistics.
In the table and diagram below, the "current" ARM transaction (denoted as X1) is created when the calling service component was invoked for the first time. If the caller is not a service component, the current ARM transaction is used, or a new one is created. If it is not the starting transaction, it has a parent, as represented in the following table and diagram with the notation Xn.Xn+1. The notation is used to show the transaction lineage. Every SCA invocation starts a new transaction, which is parented by the current transaction of the caller. You can create new transactions and you can access the current transaction, but you cannot modify the SCA transaction lineage.
| Type | Statistics | Formula | ARM Transaction |
|---|---|---|---|
| Common | TotalResponseTime | t3 - t0 | X0.X1 |
| RequestDeliveryTime | t'0 - t0 | X1.X2 | |
| ResponseDeliveryTime | t'03 - t'2 | ||
| GoodRequests | CountEXIT | ||
| BadRequests | CountFAILURE | ||
| ResponseTime | t'3 - t'0 | ||
| Reference A | GoodRefRequest | CountEXIT | X0.X1 |
| BadRefRequests | CountFAILURE | ||
| RefResponseTime | t1 - t0 | ||
| Target A | GoodTargetSubmit | CountEXIT | X1.X2 |
| BadTargetSubmit | CountFAILURE | ||
| TargetSubmitTime | t'1 - t'0 |

| Type | Statistics | Formula | ARM Transaction |
|---|---|---|---|
| Reference B | GoodResultSubmit | CountEXIT | X0.X1 |
| BadResultSubmit | CountFAILURE | ||
| ResultResponseTime | t'3 - t'2 | ||
| Target B | GoodResultRetrieve | CountEXIT | X1.X2 |
| BadResultRetrieve | CountFAILURE | ||
| ResultRetrieveResponseTime | Σ t3 - t2 | ||
| ResultRetrieveWaitTime | Σ timeout |