EJB Architecture  «Prev  Next»

Lesson 8 Object components monitor in detail
ObjectiveResponsibilities of the entities within the Object Monitor

Object components monitor in Detail

Container :Application Server

The container (Application Server) is responsible for the following:
  1. Managing the remote object; It provides the remote object with transaction and security management, networked distribution from and to clients, scalable management of resources, plus any other services it requires
  2. Tools to monitor and manage the remote object
  3. Versioning of the remote object
  4. Access to persistent information such as databases
  5. Registration of the remote object and uploading the stub to the Name Service
  6. Provision of the skeleton for the remote object

The Application Server is responsible for the following:

  1. Providing access to one or more transports of different protocols
  2. Providing distributed transaction management; in a later section we will discuss the issues concerning distributed transactions and concepts such as "two-phase commit"
  3. Providing low-level system services

Java EE 8 Microservices

Name Service

The name service is used by the client for the following:
  1. Look up the information for a particular service
  2. Download the stub for that specific remote object
The container registers the remote object with the name service and uploads[1] the stub. This is usually done when the remote object is initially loaded into the container. When the client looks up the remote object in the name service, the client downloads[2] its stub.

One-to-One relationship with the Remote Object

Please be aware that the specific stub downloaded from the name service has a one-to-one relationship with the remote object it relates to.
It provides the appropriate interface and knows the location and relevant details of the specific remote object.

Contemplate the Facts:

Please spend a some time thinking about the concepts
  1. the server
  2. and container
are responsible for.
We will be covering most of these when we describe the details of EJBs, and a good understanding of what is involved will help you as we move forward.
For example, think about how concurrency, or multi-threading, apply to a remote object? In the next lesson, you will be introduced to distributed transactions.

[1]Upload: Copy a class or a file to a common resource such as the name service or move a file from your local environment to a remote server.
[2]Download: Copy a file from a common resource to the local environment.