Sun Java Enterprise System 5 Technical Overview

Dimension 1: Infrastructure Service Dependencies

The interacting software components of distributed enterprise applications require underlying infrastructure services that allow the distributed components to communicate with each other, coordinate their work, implement secure access, and so forth. This section explains the key role played by a number of Java ES components in providing these infrastructure services.

Infrastructure Service Levels

In designing a distributed software system, whether it consists mostly of custom-developed components or out-of-the-box Java ES components, you need to incorporate a number of infrastructure services. These services operate at many levels.

The infrastructure service dependencies of solution architecture are illustrated in Figure 2–2. The levels shown in this figure are an expanded view of the infrastructure service layer of Figure 1–1. The hierarchy of services in Figure 2–2 and the dependencies between them constitute an important dimension of a solution’s logical architecture. These infrastructure services provide the main rationale for Java ES system service components (see System Service Components).

In general, the services shown in the following figure divide into three broad groupings: low-level platform services, high-level application services, and a group of middleware services named for their location between the other two groupings.

Figure 2–2 Dimension 1: Infrastructure Service Levels

Diagram showing distributed service infrastructure levels
from lowest level operating system platform services to highest level integration
services.

The following descriptions of the different infrastructure service levels refer to Java programming language artifacts, where relevant, and are listed from lowest to highest, as shown in Figure 2–2:

The service levels shown in Figure 2–2 reflect a dependence of the infrastructure services on one another, from the lowest-level operating system services to the highest-level application and integration services. Each service generally depends on services below it and supports services above it. Figure 2–2, however, does not represent a strict layering of infrastructure services. Higher-level services can directly interact with lower-level services without depending on intermediate levels. For example, some runtime services might depend directly on platform services without requiring any of the service levels in between. In addition, other service levels, such as a monitoring or management service, might also be included in this conceptual illustration.

Java ES Infrastructure Service Components

Java ES components implement the distributed infrastructure service levels shown in Figure 2–2. The positioning of system service components within the different levels is shown in the following figure.

Figure 2–3 Java ES System Service Components

Diagram showing positioning of Java ES system service
components against the various levels of distributed infrastructure services.


Note –

The shaded boxes in the figure indicate components that are not included in Java ES. User collaboration components are not part of Java ES but are often deployed with Java ES components and used within Java ES architectures. These components are part of the Sun Java Communications Suite and are referenced in this document for illustrative purposes only. Also, operating system platforms are not formally part of Java ES, but are included to show the operating system platforms on which Java ES components are supported.


Java ES Infrastructure Service Dependencies

In general, each Java ES system service component shown in Figure 2–3 depends on components below it in the infrastructure and supports components above it. These dependency and support relationships are a key factor in designing logical architectures.

The following table shows the specific relationships between the Java ES system service components, listed from top to bottom, as shown in Figure 2–3.

Table 2–1 Relationships Between Java ES System Service Components

Component 

Depends On 

Provides Support To 

Portal Server 

Application Server or Web Server 

Access Manager 

Directory Server 

If configured to use corresponding channels: Calendar Server, Messaging Server, and Instant Messaging [Calendar Server, Messaging Server, and Instant Messaging components are available as part of the Sun Java Communications Suite.]

None 

Access Manager 

Application Server or Web Server 

Directory Server 

Portal Server 

If configured for single sign-on: Calendar Server, Messaging Server, and Instant Messaging 

Application Server 

Message Queue 

Directory Server (for administered objects) 

Portal Server 

Access Manager 

Message Queue 

Directory Server (for administered objects) 

Application Server 

Web Server 

Access Manager (for access control) 

Portal Server 

Access Manager 

Directory Server 

None 

Portal Server 

Access Manager 

Calendar Server 

Messaging Server 

Instant Messaging 

Service Registry 

Java DB 

Application Server-based components 

Java DB 

None 

Service Registry