Tracing CORBA applications using interceptors

Содержание

Слайд 2

Contents

1. Motivation
2. Tracing in general
3. Interceptors
4. Tracing using interceptors
5. Conclusion

Contents 1. Motivation 2. Tracing in general 3. Interceptors 4. Tracing using interceptors 5. Conclusion

Слайд 3

Motivation

1. Technical development:

Distributed, heterogeneous environment

Object-oriented integration → CORBA

Motivation 1. Technical development: Distributed, heterogeneous environment Object-oriented integration → CORBA

Слайд 4

Motivation

2. Applications:

e-Business

Embedded systems

Motivation 2. Applications: e-Business Embedded systems

Слайд 5

Motivation

3. Growing competition:

Functional and reliability requirements

Time-to-market pressure

Motivation 3. Growing competition: Functional and reliability requirements Time-to-market pressure

Слайд 6

Contents

1. Motivation
2. Tracing in general
3. Interceptors
4. Tracing using interceptors
5. Conclusion

Contents 1. Motivation 2. Tracing in general 3. Interceptors 4. Tracing using interceptors 5. Conclusion

Слайд 7

Tracing vs. debugging

Tracing vs. debugging

Слайд 8

Aims of tracing (use cases)

1. Checking correct behaviour

2. Locating bugs

3. Better understanding

Aims of tracing (use cases) 1. Checking correct behaviour 2. Locating bugs
of how the system works

5. Automatic documentation extraction

6. Performance analysis, identifying bottlenecks

4. Monitoring crucial applications

Слайд 9

Current tracing mechanisms

Current solutions are bound to particular programming languages.

Synchronization, lack

Current tracing mechanisms Current solutions are bound to particular programming languages. Synchronization,
of global clock etc.

Heterogeneity

Collecting information from different namespaces

Problems with distributed systems:

Слайд 10

Current tracing mechanisms

State of the art in distributed systems:

+ Central tracer

– Manual

Current tracing mechanisms State of the art in distributed systems: + Central
instrumentation

– Extra programming work

– Prone to errors

Слайд 11

Contents

1. Motivation
2. Tracing in general
3. Interceptors
4. Tracing using interceptors
5. Conclusion

Contents 1. Motivation 2. Tracing in general 3. Interceptors 4. Tracing using interceptors 5. Conclusion

Слайд 12

CORBA interceptor

An object implementing the interceptor interface

without actually modifying the ORB

CORBA interceptor An object implementing the interceptor interface without actually modifying the
using callback methods

extending the functionality of the ORB

Слайд 13

Callback methods

methodX()

methodX()

Client Server

Callback methods methodX() methodX() Client Server

Слайд 14

Definitions & implementations

First definition: CORBA 2.3
Incompatible implementations
September 1998: OMG RFP
December 1999: Joint

Definitions & implementations First definition: CORBA 2.3 Incompatible implementations September 1998: OMG
Submission
March 2000: CORBA 3.0 Working Draft
The used implementation: TAO 1.1 and 1.1.9 beta

Слайд 15

Other possible solutions

Smart proxies
Servant managers
Pluggable protocols
ORB event handlers

Other possible solutions Smart proxies Servant managers Pluggable protocols ORB event handlers …

Слайд 16

Contents

1. Motivation
2. Tracing in general
3. Interceptors
4. Tracing using interceptors
5. Conclusion

Contents 1. Motivation 2. Tracing in general 3. Interceptors 4. Tracing using interceptors 5. Conclusion

Слайд 17

Tracing using interceptors

send_request()

receive_request()

send_reply()

receive_reply()

Tracing using interceptors send_request() receive_request() send_reply() receive_reply()

Слайд 18

The resulting architecture

Automatic instrumentation

Open system

Until then: a slight modification

The resulting architecture Automatic instrumentation Open system Until then: a slight modification
of the ORB

With the standard registration mechanism of interceptors, even that could be avoided

One single line of initialization code per name space

Слайд 19

Overhead

In interactive mode: ~ 500 % communication overhead
In local mode: ~ 15

Overhead In interactive mode: ~ 500 % communication overhead In local mode: ~ 15 %
%

Слайд 20

Contents

1. Motivation
2. Tracing in general
3. Interceptors
4. Tracing using interceptors
5. Conclusion

Contents 1. Motivation 2. Tracing in general 3. Interceptors 4. Tracing using interceptors 5. Conclusion

Слайд 21

Results

A tracing architecture satisfying the previously defined requirements
A tool for

Results A tracing architecture satisfying the previously defined requirements A tool for
documenting and interactive tracing of CORBA applications
The solution works in a distributed and heterogeneous environment
Prototype of a future product

Слайд 22

Future plans

Improving interoperability
Extending the architecture for other middleware systems, such as DCOM
Improving

Future plans Improving interoperability Extending the architecture for other middleware systems, such
user interface, with the inclusion of possible users
Making the tracer persistent

Имя файла: Tracing-CORBA-applications-using-interceptors.pptx
Количество просмотров: 39
Количество скачиваний: 0