A Java-based, Content-based
Adaptable Distributed Event System
"Your name of Jecho makes you
quick-minded, versatile, and very expressive. You are
adaptable and creative in responding to new situations..."
[ Motivations ] [
Features ] [ Publications ] [ People
] [ Download ] [Related Links]
Distributed event systems can be used as an
anonymous group communication infrastructure for dynamic, decoupled components
of distributed plug-and-play applications. However, despite the
conceptual match between distributed event systems and plug-and-play applications,
it is still difficult to use them together to build efficient distributed
applications, mainly because of the abstraction barriers between loosely
coupled components of a plug-and-play application and that current event
system may not be aware of or may not be able to overcome such barriers.
The focus of JECho is to investigate and design
an event-based middleware framework that can be used to "organically" fuse
together, rather than simply bind, dynamic-, loosely-coupled components
into an efficient plug-and-play application. To accomplish that, our system
has to transparently optimize the interaction between distributed components,
and such optimization needs to be customizable to individual components
and be adaptive to component dynamics.
The important features of JECho are:
Other features of JECho include both synchronous
and asynchronous event delivery, a prototypical multicast RMI layer, high
performance communication endpoint migration support and interoperability
between Java and native format events. JECho also has a J2ME(KVM) port
and provides customized object serialization mechanism for J2ME.
High Efficiency: One of JECho's most
important research focuses is on the performance issues of Java-based distributed
Eager Handlers: JECho's partitioned event
handlers, called Eager Handlers, are composed of regular Java code and
data, thus completely blend event filtering/transformation into the application
themselves. JECho's Modulator Operating Environment provides runtime
support for Eager Handlers, allowing them to carry out tasks (such as encryption,
flow control etc.) much more complex than simple filtering.
Automatic Generation and Adaptation: JECho's
provides tool to automatically genrate eager handlers and such automatically
generated eager handlers can adapt at runtime.
Hybrid Subscription: JECho's event subscription
model is a hybrid of channel-based, event-based and typed-based subscription,
potentially capable of taking advantages of all the three models.
Documents and Publications
Port Guide (For adding new transport layer into JECho)
Active Brokers and Their Runtime Deployment in
the ECho/JECho Distributed Event Systems, Dong Zhou, Yuan Chen, Greg
Eisenhauer and Karsten Schwan, accepted by AMS 2001. (PS,
JECho--Interactive High Performance Computing
with Java Event Channels, Dong Zhou, Karsten Schwan, Greg Eisenhauer
and Yuan Chen, accepted by the IPDPS 2001. (PS,
Tech Report version.) (Power
Eager Handlers - Communication Optimization in
Java-based Distributed Applications with Reconfigurable Fine-grained Code
Migration, Dong Zhou and Karsten Schwan, accepted by the 3rd International
Workshop on Java for Parallel and Distribute Computing (held in conjunction
with the IPDPS 2001). (PS,
very early presentation made at the CoC OS seminar
and Enylton Machado
Coelho added UDP and Initial State Server support for JECho.
Converter(the tool that connects ECho and JECho)
ECho can be downloaded from the ECho
example of using JECho can be found here.
Collection on Event-Based Computing
contact Dong Zhou for problems
or for more information.