|adaptivecells/J documentation :: structure|
The point of entry in any cells configuration is the first test EJB
(by convention called TB1). A HTML page and a Servlet are used to
submit the configuration information (configuration name) to TB1.
The HTML page and the front-end Servlet represent the web front-end.
The use of the front-end for the selection of the configuration
enables web-based stress-loading tools such as
OpenSTA to emulate a given
load by generating sets of simultaneous users corresponding to
different configurations. By selecting the interaction configuration
from outside the test-bed, control can be exercised over the
behaviour of the test beans at runtime and different behaviour can
be chosen corresponding to the desired effect. For instance, a
performance hotspot can be injected by selecting a particular
configuration that has a high overhead parameter value in one of the
A sample set of three configurations is illustrated in the figure below. The configuration selection is performed by submitting one of the three possible configuration names to the front-end.
The first configuration, config1, is composed by a linear calling pattern, which consists of four EJB method calls. The third method call is configured to use resources (CPU time and memory) such as to generate a fault (depending on what you consider bad performance).
The second configuration, config2 consists of a single EJB method call. If config2 specifies a low resource utilisation for the single EJB method call, it could be used for a precise injection of an alert, preceded immediately by the execution of another configuration, this could be useful when alternative between "healthy" and "unhealthy" states of the emulated system.
The third configuration illustrates the possibility to generate complex sequences of calls.
The elements in red could also signify a memory leak or an exception being raised, which can be specified declaratively in the test-bed configurations.
By sending alternative configuration names to the web front-end, different configurations (declared in the deployment descriptor) can be selected and executed at runtime, without the need to redeploy the test-beans.
NOTE: AdaptiveCells/J does not support configurations that contain loops. As there is no mechanism to specify the conditions for terminating a loop, a configuration containing a loop would never finish executing.
|© 2005 Adrian Mos|