Sensei


Overview

Design

Sensei GMS

Sensei Domains

Sensei GMNS

Sensei UMA

Code

IDL specification

Download & Build

Configuration

Examples

Documentation

Links


Last Updated:
30th May 2004



My personal homepage java_lmp@yahoo.co.uk
Sensei UMA

The objective of SenseiUMA is to supply replicated components, built using the facilities supported by SenseiDomains.

As shown in the SenseiGMNS section, the design of replicated applications starting from the replicated components is a quite easy process, equivalent in general to the design of multithread applications where multiple threads must collaborate to access shared resources. With replicated components, each replica can be programmed as a standalone application, as it does not need to communicate with other replicas: all the interaction is done by the replicated components. Nevertheless, the application must still take care with the concurrent accesses to those components.

In the SenseiGMNS case, the application includes its own replicated components: a map, and a set. And the design of these components is not always an easy task.

SenseiUMA covers this hole in the methodology: it supplies generic components, already tested, that the final application can directly use. These components are based on the containers included in the java.util package in Java 2.

This subsystem is the one not yet completed in the project (GMS, GMNS and Domains may still require further work, but mainly as maintenance). In addition, is the only one that does not share a common interface for the JavaRMI and CORBA implementations. The reason is that the JavaRMI interface can be defined using types already defined in the java.util package, like iterators, which not only simplify the interface but also provide for a better integration.