Design and implementation of runtime reflection in communication middleware: the dynamicTAO case

Communication middleware systems provide a solid basis for the construction of distributed applications. Unfortunately they usually lack the mechanisms for runtime reconfiguration. The performance of distributed applications is greatly affected by dynamic changes on the characteristics of the environment such as memory, CPU, and network availability. Existing communication middleware does not react in front of these changes. Most of the time, applications have enough knowledge to decide what to do in front of an environmental change, but they cannot use that knowledge because the middleware does not allow on-the-fly reconfiguration. We developed dynamicTAO, a CORBA-compliant reflective ORB that supports runtime reconfiguration. DynamicTAO maintains an explicit representation of its own internal structure and uses it to carry out dynamic customization safely.