Information Technology Reference
In-Depth Information
directly or use an API known as Performance Data
Helper (Microsoft, 2007c; Pietrik, 1998). Alter-
natively, the Microsoft .NET framework provides
the System.Diagnostics namespace that
facilitates access to all the counters from within
a .NET application.
Windows performance counters can be used to
acquire data related to the running system, which
can be correlated with a particular application
run. These counters give an external view of the
application, however, and there is no straightfor-
ward method of mapping counter values to logi-
cal application events. To more closely inspect a
running application, therefore, instrumentation
is needed within the application itself to record
logical events and combine them with data gener-
ated through performance counters.
applications must address inherent complexities,
such as latency, causal ordering, reliability, load
balancing, and optimal component placement,
that are either absent from (or less complicated in)
stand-alone applications (Schmidt, Stal, Rohnert,
& Buschmann, 2000). The analysis and profiling
of distributed applications involves monitoring
key interactions and their characteristics along
with localized functionality occurring within each
component. Below we examine two approaches
to profiling distributed system behavior. One ap-
proach modifies generated stubs and skeletons,
whereas the other uses profiling extensibility
features available in the middleware.
Monitoring of Component-Based
Systems (MCBS)
Distributed System Profiling
MCBS (Li, 2002) is a CORBA middleware-based
monitoring framework that can be used to capture
application semantics, timing latency, and shared
resource usage. Although the MCBS prototype is
CORBA-based the solution can be extended to any
distributed object architecture that generates stubs
and skeletons. The MCBS approach recreates call
sequences across remote interfaces. Probes are
A distributed system consists of applications
whose components are spread over a network of
hosts that work together to provide the overarch-
ing functionality. The complexity of distributed
applications is often considerably greater than a
stand-alone application. In particular, distributed
Figure 8. MCBS probe instrumentation
Search WWH ::




Custom Search