|
Look for Pathways technology, coming soon in open source edition. See our Release Schedule for
details.
Pathways Enterprise Edition
is an innovative architecture for the development of middleware, client/server
and internet applications.
The Pathways Enterprise
Edition architecture enables application upgrades and reconfigurations of
system resources with zero downtime.
Pathways is based on the OPP
application framework. Applications
based on the Pathways architecture automatically have access to the full set of
OPP features including Internet access, embedded database and interoperability
with Java and CORBA applications.
A Pathways application is
composed of one or more modules. Each
module contains one or more components and performs a specific job for the
application. Components can communicate
with other components in the same or different modules by sending messages.
Pathways Enterprise Edition
is fully compatible with modules developed on the open source Pathways
framework. However, modules developed
solely for the Pathways framework may not take full advantage of the features
available from Pathways Enterprise Edition.
Pathways Enterprise Edition
allows modules to be added to or removed from a running system allowing an
application to be upgraded with zero downtime and without requiring additional
hardware.
Modules for an application
can all be located in the same process, spread across multiple processes, or
spread across multiple processes on multiple systems. The initial choice of module distribution is made at start up of
the Pathways Enterprise Edition control process. The distribution can be adjusted while Pathways is running with
no application down time. This allows a
Pathways application to be reconfigured dynamically to adjust for changing
needs and hardware availability.
The Pathways architecture
automatically handles routing messages to the proper component regardless of
its physical or logical location.
Pathways supports running an
application distributed across multiple systems even if those systems are from
different vendors and run different operating systems.
Pathways Enterprise Edition
interfaces with all popular databases.
Key Features
- Dynamically loaded
modules
All application logic is
contained in modules that can be loaded at initial startup, or dynamically
loaded and unloaded while the application is running. Using this feature, application upgrades and system
reconfigurations for performance or uptime enhancements can be done with zero
downtime.
- Distributed Application
Support
Pathways Enterprise Edition
supports both asymmetric and symmetric distributed applications.
In an asymmetric distributed
application, application logic is distributed across multiple systems. Each system performs a different task or
tasks. In a symmetric distributed
application, the entire application and data are replicated across multiple
systems. An example of an asymmetric
distributed application is an e-commerce web server that runs the web server on
a different system than the customer database.
A web server farm is an example of a symmetric distributed application.
The Pathways module
architecture and location transparent message queues support asymmetric
distributed applications that can be reconfigured dynamically to adjust for
changing demands.
Pathways supports symmetric
distributed applications by providing an advanced distributed processing
framework. The distributed processing
framework handles data synchronization, distributed load balancing, etc.
When a new instance of a
distributed component comes on line, it announces its presence using a network
broadcast message. Every existing
instance of the distributed component on that network will respond to the
broadcast and the new instance will negotiate a specific identity for
itself. When the component has received
its identity, it begins working and can communicate with other instances using
broadcast and point-to-point messages.
- Scalable Communication
Pathways Enterprise Edition provides a suite of
scalable communication primitives for use by system components (modules). Communication primitives include location
transparent message queues, point-to-point network communication, broadcast
network communication and internet foundation classes.
A Pathways message queue
will route a message to the destination component regardless of physical or
virtual location of that component.
This allows components to be placed in the same process (running as
separate threads), in separate processes on the same system or in separate
systems with no code changes.
The application can be
reconfigured with no downtime using dynamically loaded modules. The Pathways message queues will ensure that
messages are routed to the component no matter where it is, even if it is moved
to a different process or even a different system while the application is
running.
The Pathways message queues
allow new functionality to be rolled out incrementally. The most efficient use of system resources
is to have a single process with multiple threads. However, a bug in any of the components will cause the entire
process to crash. The message queues
allow new modules or upgraded modules to be initially isolated in their own
process. Once the functionality is
proven, the modules can be loaded into the main process to take advantage of
the performance gain.
Pathways provides broadcast
network communication with varying levels of guaranteed delivery. Ordinary broadcast protocols do not
guarantee the delivery of information.
Pathways extends the underlying protocol to offer guaranteed delivery at
varying levels depending on the needs of the application – from a “soft”
guarantee that ensures the data will arrive but places no upper limit on how
long it will take to a hard guarantee that uses periodic point-to-point
communication to ensure data synchronization.
- Efficiency
A primary design goal of Pathways is to make
efficient use of system resources.
Pathways itself is extremely efficient and leverages the efficiency of
the OPP class library. The combination
of OPP with the scalable messaging architecture of Pathways Enterprise Edition
allows application programmers to easily create efficient applications using
Pathways.
- Portability
Pathways components can be compiled on any system
supported by OPP. A diverse collection
of systems from different vendors can work together seamlessly as part of the
same distributed application.
- Innovation
The three level architecture encompassing OPP,
Pathways and Web Pathways allows innovations in one product to feed innovations
in others.
Components developed for one
application can often be used for others.
The components in Web Pathways can be used for other internet or
intranet applications.
- Foundation
OPP provides the foundation for Pathways
application development. The OPP class
library provides lots and lots of stuff. Pathways Enterprise Edition adds specific functionality
to support middleware, client/server and distributed applications.
|