JBoss Application Platform

quicksandwalleyeInternet and Web Development

Oct 31, 2013 (3 years and 7 months ago)

181 views

Chungnam National University

Computer Science and Engineering

Database System Laboratory

Database System Laboratory Seminar

Chungnam National University

Computer Science and Engineering

Database System Laboratory

Database System Laboratory Seminar

임형준
(
hyungjun25@cnu.ac.kr
)

충남대학교

컴퓨터공학과

데이터베이스시스템

연구실

2013


10


31


목요일

JBoss Application Platform

Chungnam National University

Computer Science and Engineering

Database System Laboratory

Chungnam National University

Computer Science and Engineering

Database System Laboratory

JBoss Application Server

Chungnam National University

Computer Science and Engineering

Database System Laboratory

Chungnam National University

Computer Science and Engineering

Database System Laboratory

JBoss Application Server

목차


JBoss Review

JBoss Overview

JBoss Application Platform

JBoss Enterprise SOA Platform

JBoss Application Platform for Portal



JBoss Application Platform

JBoss Enterprise Middleware System

JBoss Microkernel

JBoss Application Server

2

Chungnam National University

Computer Science and Engineering

Database System Laboratory

Chungnam National University

Computer Science and Engineering

Database System Laboratory

JBoss Application Server

Chungnam National University

Computer Science and Engineering

Database System Laboratory

Chungnam National University

Computer Science and Engineering

Database System Laboratory

JBoss Application Server

JBoss Overview

3

Operating System

Windows, Unix, Other Linux

Java Virtual Machine

JBoss Microkernel

Application Platform

Other Application
Server

JBoss Rules

JBoss jBPM

JBoss Hibernate

JBoss Seam

SOA

Platform

Application
Platform

for Portals

Enterprise Platforms

Enterprise Frameworks

JBoss Enterprise Middleware System (JEMS)

Chungnam National University

Computer Science and Engineering

Database System Laboratory

Chungnam National University

Computer Science and Engineering

Database System Laboratory

JBoss Application Server

Chungnam National University

Computer Science and Engineering

Database System Laboratory

Chungnam National University

Computer Science and Engineering

Database System Laboratory

JBoss Application Server

JBoss Application Platform

4

Operating System

Windows, Unix, Other Linux

Java Virtual Machine

JBoss Microkernel

JBoss Application Server

Java EE, Apache Tomcat, Clustering, Cache

JBoss Hibernate

JBoss Seam

JBoss Enterprise Application Platform

Applications

Chungnam National University

Computer Science and Engineering

Database System Laboratory

Chungnam National University

Computer Science and Engineering

Database System Laboratory

JBoss Application Server

Chungnam National University

Computer Science and Engineering

Database System Laboratory

Chungnam National University

Computer Science and Engineering

Database System Laboratory

JBoss Application Server

JBoss Enterprise Frameworks

5

Operating System

Windows, Unix, Other Linux

Java Virtual Machine

JBoss Microkernel

JBoss Enterprise

Application Platform

JBoss Enterprise SOA Platform

JBoss Rules

JBoss jBPM

JBoss ESB

Transformation, Routing, Registry, Repository

Web Services

Chungnam National University

Computer Science and Engineering

Database System Laboratory

Chungnam National University

Computer Science and Engineering

Database System Laboratory

JBoss Application Server

Chungnam National University

Computer Science and Engineering

Database System Laboratory

Chungnam National University

Computer Science and Engineering

Database System Laboratory

JBoss Application Server

JBoss Application Platform for Portal

6

Operating System

Windows, Unix, Other Linux

Java Virtual Machine

JBoss Microkernel

JBoss Enterprise

Application Platform

JBoss Portal

JBoss Enterprise

Application Platform for Portals

Portals

Chungnam National University

Computer Science and Engineering

Database System Laboratory

Database System Laboratory Seminar

Chungnam National University

Computer Science and Engineering

Database System Laboratory

Chungnam National University

Computer Science and Engineering

Database System Laboratory

Chungnam National University

Computer Science and Engineering

Database System Laboratory

Database System Laboratory Seminar

Chungnam National University

Computer Science and Engineering

Database System Laboratory

Chungnam National University

Computer Science and Engineering

Database System Laboratory

JBoss Application Platform

Chungnam National University

Computer Science and Engineering

Database System Laboratory

Chungnam National University

Computer Science and Engineering

Database System Laboratory

JBoss Application Server

Chungnam National University

Computer Science and Engineering

Database System Laboratory

Chungnam National University

Computer Science and Engineering

Database System Laboratory

JBoss Application Server

JBoss Enterprise Middleware
System (JEMS)


Open source
middleware platform for SOA
-
based
enterprise applications and services


Plug
-
and
-
play
architecture enables
standardizing

on
JEMS products at your own pace


Focused on
simplifying development

8

JBoss Microkernel

JBoss

App

Server

Apache

Tomcat

Hibernate

JBoss

Cache

JBoss

jBPM



JBoss

Rules

Your Applications and Services

JBoss

Portal

Your

Platform

Services

JBoss

Eclipse

IDE

#1

#1

#1

Multivendor Java VM, Operating System, Hardware

Chungnam National University

Computer Science and Engineering

Database System Laboratory

Chungnam National University

Computer Science and Engineering

Database System Laboratory

JBoss Application Server

Chungnam National University

Computer Science and Engineering

Database System Laboratory

Chungnam National University

Computer Science and Engineering

Database System Laboratory

JBoss Application Server

JEMS Architecture


9

Operating System (Windows, Unix = Linux, Solaris, AIX, etc.)

Hardware (CPU + Storage + Memory)

Java Virtual Machine (Sun JVM, BEA JRockit, IBM VM, etc.)


JBoss Application Server 4.x (JMX Microkernel : JBossMX)

Custom Mbeans













Services beyond J2EE

Persistence (Hibernate*)

Clustering


Caching (JBossCache*)

Workflow (JBoss jBPM**)

JBoss AOP*

Java Applications


Java Applications (EARs, WARs, JARs, JSPs, Servlets)

JBoss Eclipse IDE


JBoss Portal













---

J2EE 1.4 Services implemented as JMX Mbeans
---

JSP/Servlet (Tomcat*)

JNDI (JBossNS)

WS4EE (JBossWS)

JDBC

JMS (JBoss MQ)

EJB (JBoss CMP)

JTA (JBossJTA)

SAAJ

JACC

JCA (JBossJCA)

JAAS (JBossSX)

RMI
-
IIOP (jacORB)

JAX
-
RPC

Deployment API

JAXR

Management API

*
Product can run inside JBoss AS or stand
-
alone

**
Integration as MBean under development

JAXP

JBoss Remoting*

Chungnam National University

Computer Science and Engineering

Database System Laboratory

Database System Laboratory Seminar

Chungnam National University

Computer Science and Engineering

Database System Laboratory

Chungnam National University

Computer Science and Engineering

Database System Laboratory

Chungnam National University

Computer Science and Engineering

Database System Laboratory

Database System Laboratory Seminar

Chungnam National University

Computer Science and Engineering

Database System Laboratory

Chungnam National University

Computer Science and Engineering

Database System Laboratory

JBoss Microkernel

Chungnam National University

Computer Science and Engineering

Database System Laboratory

Chungnam National University

Computer Science and Engineering

Database System Laboratory

JBoss Application Server

Chungnam National University

Computer Science and Engineering

Database System Laboratory

Chungnam National University

Computer Science and Engineering

Database System Laboratory

JBoss Application Server

JMX Architecture: Microkernel


A stripped down core capable of

Loading services dynamically (classes included)

Manage services lifecycle

Provide naming and lookup

Provide an invocation bus

Decouples the services



That role in JBoss is taken by JMX MBean server

JBossMX at the core

JMX architecture provides the decoupling

11

Chungnam National University

Computer Science and Engineering

Database System Laboratory

Chungnam National University

Computer Science and Engineering

Database System Laboratory

JBoss Application Server

Chungnam National University

Computer Science and Engineering

Database System Laboratory

Chungnam National University

Computer Science and Engineering

Database System Laboratory

JBoss Application Server

JMX Architecture: MBean Server


MBean Server acts as a mediator

Services are referenced via object names

MBean Server contains a registry of services


12


Service B

MBean Server

JBoss:name=ServiceC

JBoss:name=ServiceB

JBoss:name=ServiceA


Service A


Service C

Chungnam National University

Computer Science and Engineering

Database System Laboratory

Chungnam National University

Computer Science and Engineering

Database System Laboratory

JBoss Application Server

Chungnam National University

Computer Science and Engineering

Database System Laboratory

Chungnam National University

Computer Science and Engineering

Database System Laboratory

JBoss Application Server

JMX Architecture: Invocation


Invocation has no direct reference, services are loosely
coupled

Kernel manages the service references in case of updates, etc.

13

lookup

MBean Server

JBoss:name=ServiceC

JBoss:name=ServiceA


Service A


Service C

Version 1.0

setAttribute(ObjectName, Attribute)

JBoss:name=ServiceC

Java Reference

JBoss:name=ServiceA

...

...

...

MBean Registry

JBoss:name=ServiceC


Service C

Version 1.1

Chungnam National University

Computer Science and Engineering

Database System Laboratory

Chungnam National University

Computer Science and Engineering

Database System Laboratory

JBoss Application Server

Chungnam National University

Computer Science and Engineering

Database System Laboratory

Chungnam National University

Computer Science and Engineering

Database System Laboratory

JBoss Application Server

JMX Architecture: Metadata


Service exposes its interface as metadata

No compile
-
time typed Java interfaces

Metadata can be extended to clarify the interface contract

Interfaces can evolve at run
-
time without recompilation


14


Attributes


Operations


Notifications


getMBeanInfo

MBean Server

JBoss:name=ServiceA


Service A

JBoss:name=ServiceC


Service C

Chungnam National University

Computer Science and Engineering

Database System Laboratory

Chungnam National University

Computer Science and Engineering

Database System Laboratory

JBoss Application Server

Chungnam National University

Computer Science and Engineering

Database System Laboratory

Chungnam National University

Computer Science and Engineering

Database System Laboratory

JBoss Application Server

JMX Microkernel Architecture


All services in JBoss are JMX MBeans

Services are registered to the MBean Server


MBean Server acts as an invocation bus between the
services

Decouples the services enabling hot
-

and redeployment of all
server parts

All invocations to MBeans should go through the MBean
server

GOF: Mediator pattern


Service interfaces are defined via run
-
time object
structure

Services don’t expose Java interfaces


MBean should not expose a Java reference to itself

Instead the
kernel

internally handles references and uses
logical object names

15

Chungnam National University

Computer Science and Engineering

Database System Laboratory

Chungnam National University

Computer Science and Engineering

Database System Laboratory

JBoss Application Server

Chungnam National University

Computer Science and Engineering

Database System Laboratory

Chungnam National University

Computer Science and Engineering

Database System Laboratory

JBoss Application Server

JBoss Microkernel & JMX


JBoss

Microkernel

Separates a minimal
functional core from
extended functionality and
customer
-
specific parts

Independent cycling and
loading


Monolithic → modular

Loading services dynamically

Manage services lifecycle

Use JMX


Benefit

Easily remove the services
you don’t need

Tight footprint and modular
codebase and hot
deploy/remove/redeploy

JBoss

is a TRUE Service
Oriented Architecture (SOA)

MBean Server

(JBoss Microkernel + Naming, Logging)

Service Mbean (Java EE Services)

Service Mbean (EJB Container)

Service Mbean (Tx Manager)

RAR 3

Custom SAR

Data Sources


Microkernel

DeploymentScanner

MainDeployer

EARDeployer

SARDeployer

Naming Service

Security Service

Transaction

Service

JAR 1

*
.xAR

16

Chungnam National University

Computer Science and Engineering

Database System Laboratory

Database System Laboratory Seminar

Chungnam National University

Computer Science and Engineering

Database System Laboratory

Chungnam National University

Computer Science and Engineering

Database System Laboratory

Chungnam National University

Computer Science and Engineering

Database System Laboratory

Database System Laboratory Seminar

Chungnam National University

Computer Science and Engineering

Database System Laboratory

Chungnam National University

Computer Science and Engineering

Database System Laboratory

JBoss Application Server

Chungnam National University

Computer Science and Engineering

Database System Laboratory

Chungnam National University

Computer Science and Engineering

Database System Laboratory

JBoss Application Server

Chungnam National University

Computer Science and Engineering

Database System Laboratory

Chungnam National University

Computer Science and Engineering

Database System Laboratory

JBoss Application Server

JBoss Application Server


J2EE 1.4 Certified

EJB, JSP/Servlets, Web Services, Messaging, etc.



100% Pure Java

Any hardware and OS with compliant JVM



JMX
-
Microkernel

Customizable middleware footprint

Enhanced performance via co
-
located services



Administration, Monitoring, and Management

Web
-
console provides real
-
time graphs & email alerts

Scriptability of JMX modifications and invocations



Enterprise
-
Ready Clustering

Simple cluster
-
wide deployment

Dynamic cluster composition

Fault tolerance


Silent failover


State replication (HttpSession, SFSB)

18

Chungnam National University

Computer Science and Engineering

Database System Laboratory

Chungnam National University

Computer Science and Engineering

Database System Laboratory

JBoss Application Server

Chungnam National University

Computer Science and Engineering

Database System Laboratory

Chungnam National University

Computer Science and Engineering

Database System Laboratory

JBoss Application Server

JBoss AS Architecture

19

Operating System

Windows, Unix, Other Linux

Java Virtual Machine

JBoss Microkernel

JBoss Application Server

JBoss Hibernate

JBoss Seam

JBoss Enterprise

Application Platform

JBoss Microkernel

EJB

Containers

Security

Manager

Transaction

Manager

Connection

Pools

Message

Server

Servlet

Engine

Connectors

Invokers

Embedded

Databases

Chungnam National University

Computer Science and Engineering

Database System Laboratory

Chungnam National University

Computer Science and Engineering

Database System Laboratory

JBoss Application Server

Chungnam National University

Computer Science and Engineering

Database System Laboratory

Chungnam National University

Computer Science and Engineering

Database System Laboratory

JBoss Application Server

Monitoring

20

Operating System

Windows, Unix, Other Linux

Java Virtual Machine

JBoss Microkernel

JBoss Application Server

JBoss Hibernate

JBoss Seam

JBoss Enterprise

Application Platform

Chungnam National University

Computer Science and Engineering

Database System Laboratory

Chungnam National University

Computer Science and Engineering

Database System Laboratory

JBoss Application Server

Chungnam National University

Computer Science and Engineering

Database System Laboratory

Chungnam National University

Computer Science and Engineering

Database System Laboratory

JBoss Application Server

Enterprise JavaBeans (EJB) 3.0


Enterprise JavaBeans (EJB)

클라이언트
/
서버

모델의

서버

부분에서

운영되는

자바

프로그램

컴포넌트들을

설정하기

위한

아키텍처


Session Bean, Message Driven Bean, Entity Bean


사용하


위한

EJB API


단순화


Java Annotation, Dependency Injection


Optional Callbacks, Entity Manager API


단순화된

영속성

기능과

개선된

쿼리들

21

Servlet

EJB

Servlet

EJB

DB

JBoss Application Server

Chungnam National University

Computer Science and Engineering

Database System Laboratory

Chungnam National University

Computer Science and Engineering

Database System Laboratory

JBoss Application Server

Chungnam National University

Computer Science and Engineering

Database System Laboratory

Chungnam National University

Computer Science and Engineering

Database System Laboratory

JBoss Application Server

Application Framework


복잡한



어플리케이션

개발의

단순화


Annotation
기반의

프로그래밍

모델


전통적인

J2EE
개발자의

공통적인

이슈와

불편사항

극복


JSF, EJB 3.0, Hibernate, AJAX, Web Services, Workflow


유연한

통합


단일

사용자

세션에서

동시에

복수의

작업

처리

가능


Conversation


Process


위한

새로운

context
추가

22

Invocation Point



Rich Clients

Flex / Swing / .NET

Web Clients

JSF / AJAX

Web Services

EJB / JBI

JBoss Seam

Business Logic

EJB3 / POJO / Rules

Orchestration

Work Flow / Page Flow / ESB

Data Access Layer

EJB3 / POJO / Hibernate / JCA

Chungnam National University

Computer Science and Engineering

Database System Laboratory

Chungnam National University

Computer Science and Engineering

Database System Laboratory

JBoss Application Server

Chungnam National University

Computer Science and Engineering

Database System Laboratory

Chungnam National University

Computer Science and Engineering

Database System Laboratory

JBoss Application Server

JGroups


Toolkit for reliable multicasting

Fragmentation

Message retransmission

Ordering

Group membership,


membership change


notification


LAN or WAN based


Like JMS

Receive a message

Retrieve membership

Disconnect from the group

Close the channel

Be notified when members join, leave (including crashes)


23

Group topology

Chungnam National University

Computer Science and Engineering

Database System Laboratory

Chungnam National University

Computer Science and Engineering

Database System Laboratory

JBoss Application Server

Chungnam National University

Computer Science and Engineering

Database System Laboratory

Chungnam National University

Computer Science and Engineering

Database System Laboratory

JBoss Application Server

JBoss Cache


Reduce Database & Network Traffic

By caching frequently used objects

Less Database calls = Less Network Traffic = Faster Applications



Simplification

No interfaces to implement!

Write <10 lines of code



State Replication

Synchronous/Asynchronous/Queue based replication

Transactional changes across the cluster

TreeCacheAOP only replicates changes & not the whole object again!



Persistence

Preload from file, SleepyCat or JDBC

Defined by eviction policies



Reliability

Built on JGroups technology

24

Chungnam National University

Computer Science and Engineering

Database System Laboratory

Chungnam National University

Computer Science and Engineering

Database System Laboratory

JBoss Application Server

Chungnam National University

Computer Science and Engineering

Database System Laboratory

Chungnam National University

Computer Science and Engineering

Database System Laboratory

JBoss Application Server

JBoss Cache Feature


A replicated, transactional, persistency and fine
-
grained
cache system



Transactional or non
-
transactional

Non
-
Transactional


Replication after each modification

Transactional


Replication at TX commit


DB isolation levels supported


Support for pluggable TxManagers


25

Chungnam National University

Computer Science and Engineering

Database System Laboratory

Chungnam National University

Computer Science and Engineering

Database System Laboratory

JBoss Application Server

Chungnam National University

Computer Science and Engineering

Database System Laboratory

Chungnam National University

Computer Science and Engineering

Database System Laboratory

JBoss Application Server

Clustering


상태

복제

(State Replication)



아래

항목에

대해

Synchronous & Asynchronous Replication
모드

지원

HTTP Session

Stateful Session Bean

Entity Bean

Plain Old Java Bean (POJO)


부하

분산

(Load Balancing)

HTTP Load
-
balancing via Apache Plug
-
in

EJB Load
-
balancing via Dynamic Proxy

Message
-
Driven Bean Load
-
balancing via Queue


자동

장애

복구

(Silent Failover)

HTTP failover via Apache Plug
-
in

EJB failover via Dynamic Proxy

26

Chungnam National University

Computer Science and Engineering

Database System Laboratory

Chungnam National University

Computer Science and Engineering

Database System Laboratory

JBoss Application Server

Chungnam National University

Computer Science and Engineering

Database System Laboratory

Chungnam National University

Computer Science and Engineering

Database System Laboratory

JBoss Application Server

Clustering Expression

27

JBossWeb

JBossWeb

SFSB

EJB 3

Entity Bean

POJO

SFSB

EJB 3

Entity Bean

POJO

JBoss instance

JBoss instance

Fat Client

Apache

Thin Client

Remoting

HTTP

Chungnam National University

Computer Science and Engineering

Database System Laboratory

Chungnam National University

Computer Science and Engineering

Database System Laboratory

JBoss Application Server

Chungnam National University

Computer Science and Engineering

Database System Laboratory

Chungnam National University

Computer Science and Engineering

Database System Laboratory

JBoss Application Server

JBoss Clustering Includes


Cluster

Set of nodes with a common goal
-

Homogeneous

Partition
-

Group of nodes


Not statically defined


Defined by a name


Node can join and leave as needed


Automatic cluster membership discovery


HA
-
Singleton

Only node is running at the same time in a cluster


Fault Tolerant


Failover


Load balancing


Replicating Resources

Stateful Session Bean Replication

Entity Bean Replication

HTTP Session Replication

JNDI Tree Replication


Farming : Distributed Cluster
-
wide hot deployment



28

Chungnam National University

Computer Science and Engineering

Database System Laboratory

Chungnam National University

Computer Science and Engineering

Database System Laboratory

JBoss Application Server

Chungnam National University

Computer Science and Engineering

Database System Laboratory

Chungnam National University

Computer Science and Engineering

Database System Laboratory

JBoss Application Server

SFSB Replications


After each invocation of a SFSB,
if the bean changed, a
message is broadcast to the cluster


The message contains the serialized state of the session
bean


The
broadcast operation is synchronous (blocking)

with
acknowledgements from all the nodes of the cluster


29

TreeCacheAOP

SFSB

2. register

1. new

3. Notify to other node TreeCacheAOP

5. update

4. Update state

6. Notify to other node TreeCacheAOP

Automatic TreeCacheAOP

Notification

Chungnam National University

Computer Science and Engineering

Database System Laboratory

Chungnam National University

Computer Science and Engineering

Database System Laboratory

JBoss Application Server

Chungnam National University

Computer Science and Engineering

Database System Laboratory

Chungnam National University

Computer Science and Engineering

Database System Laboratory

JBoss Application Server

Entity Bean Replications


Hibernate IS EJB 3.0 CMP


Hibernate caches are being integrated with JBossCache


30

Cache

TreeCacheAOP

Chungnam National University

Computer Science and Engineering

Database System Laboratory

Chungnam National University

Computer Science and Engineering

Database System Laboratory

JBoss Application Server

Chungnam National University

Computer Science and Engineering

Database System Laboratory

Chungnam National University

Computer Science and Engineering

Database System Laboratory

JBoss Application Server

JBoss Remoting


Framework with a single, simple API for making network
based invocations and other network related services


Like RMI



Goals

Use POJOs not APIs

No extending of UnicastRemote

No precompilation (rmic)

Protocol independent

Protocol isolation

Designed after dotNetRemoting

31

NET Remoting
-

Channels and Formatters

Chungnam National University

Computer Science and Engineering

Database System Laboratory

Chungnam National University

Computer Science and Engineering

Database System Laboratory

JBoss Application Server

Chungnam National University

Computer Science and Engineering

Database System Laboratory

Chungnam National University

Computer Science and Engineering

Database System Laboratory

JBoss Application Server

Client
-
Server Communication


The clients downloads an
“intelligent” stub

from the server and
uses it to access the bean


The stub encapsulates the
load balancing

policy and the
failover

mechanism


JBoss provides load balance policies:

RoundRobin

FirstAvailable (Sticky Sessions)

FirstAvailableIdenticalAllProxies


The stubs
maintains a list of server addresses

which is updated
on each request



32


Client

Intelligent Stub

: Server Address List

: Server Address Reference

Invoke

Node 1

Node 2

RMI Dispatcher

fault

Chungnam National University

Computer Science and Engineering

Database System Laboratory

Chungnam National University

Computer Science and Engineering

Database System Laboratory

JBoss Application Server

Chungnam National University

Computer Science and Engineering

Database System Laboratory

Chungnam National University

Computer Science and Engineering

Database System Laboratory

JBoss Application Server

Dynamic Cluster Definition


33

If any node fails, the cluster
will identify the failure and
remove that node from the
cluster definition of every
node and all client proxies.

All nodes in a JBoss cluster
are peers. There is no
central director of the cluster,
which eliminates any single
point of failure.

To add a node to the cluster
simply duplicate a drive of
an existing node, give the
node a unique name/IP, and
connect it to the network.

Now all of the nodes in the
cluster and all client proxies
are aware of the new cluster
member. Node five is now
included in all state
replication operations as well.

two

one

four

three

four

five

five

one

Cluster Definition

one

two

three

four

Cluster Definition

one

two

three

four

five

Cluster Definition

two

three

four

five

Chungnam National University

Computer Science and Engineering

Database System Laboratory

Chungnam National University

Computer Science and Engineering

Database System Laboratory

JBoss Application Server

Chungnam National University

Computer Science and Engineering

Database System Laboratory

Chungnam National University

Computer Science and Engineering

Database System Laboratory

JBoss Application Server

State Replication Across Cluster


34


one


five


two


four


three

::::::::

::::::::::::::::::::::::::
::

::::::

::::::

4

4

QTY

$2.25

Coffee Mugs

25

$1.99

Coffee Filters #4

2

$6.59

Coffee Beans (1lb)

1

Unit
Price

Product Description

Line
#

Shopping Cart

1

0

Now all nodes in the cluster
are in sync with the
updated state of the
shopping cart.

Replicated Objects

HttpSessions

Stateful Session Beans

HA
-
JNDI tree

Chungnam National University

Computer Science and Engineering

Database System Laboratory

Chungnam National University

Computer Science and Engineering

Database System Laboratory

JBoss Application Server

Chungnam National University

Computer Science and Engineering

Database System Laboratory

Chungnam National University

Computer Science and Engineering

Database System Laboratory

JBoss Application Server

Silent Failover via Dynamic Proxies


35


two


one


five


four


three

Dynamic

Proxy

Client

Application

= replicated stateful object (e.g. Stateful Session Bean)

Current Cluster
Nodes

one

two

three

four

Dynamic proxies are
provided out
-
of
-
box in
JBoss. The client
application does not
know or care that the
server has failed
-
over.

Chungnam National University

Computer Science and Engineering

Database System Laboratory

Chungnam National University

Computer Science and Engineering

Database System Laboratory

JBoss Application Server

Chungnam National University

Computer Science and Engineering

Database System Laboratory

Chungnam National University

Computer Science and Engineering

Database System Laboratory

JBoss Application Server

Features


Server identification

A simple String identifier which allows for remoting servers to be identified and
called upon


Pluggable transports

Can use different protocol transports, such as: Socket, RMI, http, etc


Pluggable data marshallers

Can use different data marshallers and unmarshallers to convert


the invocation payloads into desired data format for wire transfer


Automatic discovery

Can detect remoting servers as they come on and off line


Server grouping

Ability to group servers by logical domains, so only communicate with servers
within specified domains


Callbacks

Can receive server callbacks via push and pull models


Asynchronous calls

Can make asynchronous, or one way, calls to server


Local invocation

If making an invocation on a remoting server that is within the same process
space, remoting will automatically make this call by reference, to improve
performance

36

Chungnam National University

Computer Science and Engineering

Database System Laboratory

Chungnam National University

Computer Science and Engineering

Database System Laboratory

JBoss Application Server

Chungnam National University

Computer Science and Engineering

Database System Laboratory

Chungnam National University

Computer Science and Engineering

Database System Laboratory

JBoss Application Server

JBoss Architecture


37

Transacted

Acid sessions

Secure

access

Monitor

Model time

Cached model

configuration

Service layer

Aspect layer

Application layer

Monitor

data time

(dynamic insertion)

Cache

Persistent data

Clustered

Remote webservice

Clustering

Remote

Invokers

ACID

Monitoring

Persistence

Transaction

Cache

Security

JBoss Microkernel (JMX)

Microkernel layer

Chungnam National University

Computer Science and Engineering

Database System Laboratory

Chungnam National University

Computer Science and Engineering

Database System Laboratory

JBoss Application Server

Chungnam National University

Computer Science and Engineering

Database System Laboratory

Chungnam National University

Computer Science and Engineering

Database System Laboratory

JBoss Application Server

요약


Open
-
Source, Zero
-
cost Product License


Built for Standard


Enterprise
-
class Reliability


Embeddable, Service
-
Oriented Architecture


Consistent Manageability


Middleware Services for any Java Object


Enhanced Interoperability

38