Key features
- Support of standard application personalities: CORBA, Ada DSA (Annex E)
- Support of standard protocol personalities: GIOP, SOAP
- Interoperability between hardware platforms and operating environments,
between distribution models
- Support for multiple tasking profiles (full Ada tasking, Ravenscar
tasking, no tasking)
- Support for security and real-time extensions
- Tailorability to application and platform specific requirements
PolyORB is a middleware toolset that provides distribution services through
standard programming interfaces (e.g. CORBA, the Ada Distributed Systems
Annex, or the MOMA messaging API) and communication protocols (e.g. GIOP
and SOAP). It addresses distribution model interoperability issues by
allowing a single middleware instance to efficiently support multiple
personalities executing simultaneously. Its modular architecture
emphasizing code reuse allows the definition and deployment of middleware
configurations that are specially adapted for real-time, high integrity
applications.
To browse online documentation, please click here.
Versatile middleware architecture
The PolyORB architecture brings increased versatility to
middleware technology. Existing middleware solutions
for distributed applications define two interface aspects:
- The interface seen by the developer’s application objects
(“application personality”)
- The protocol used by the middleware environment to talk to other
nodes in the distributed application.
(“protocol personality”)
Middleware implementing a given distribution model usually supports
only one set of such interfaces, and isn’t interoperable with other
platforms or distribution models. PolyORB addresses this “middleware
paradox” with dual, complementary approaches.
- The use of a generic component-based design allows multiple
implementations of each middleware aspect to coexist and share
internal state and behaviour with a common framework.
- The internal representation of interactions between distributed
application components is independant of both the application
and protocol personalities, allowing full decoupling of the two
layers, and making it possible to mix and match personalities
arbitrarily.
The decoupling of application and protocol personalities, and the
support for multiple personalities simultaneously executing within
the same running middleware are key features required for the construction
of interoperable distributed applications. This allows PolyORB to
communicate with middleware products that implement different
distribution standards: PolyORB provides middleware-to-middleware
interoperability.
PolyORB’s modularity lets users extend or modify its core components
and personalities to meet specific requirements. Thus you can create
standards-compliant or specific personalities ranging from early stage
prototyping to full-featured implementation. The PolyORB architecture
also supports automatic “just-in-time” creation proxies between
incompatible environments by combination of multiple protocol
personalities.