You are on page 1of 47

JBoss Clustering

Takayoshi Kimura
Committer, JBoss AS and JBoss Cache
Senior Software Maintenance Engineer
Global Support Service
JBoss, a division of Red Hat

Copyright 2008 Red Hat, Inc.


All rights reserved. | 1


JBoss EAP
JBoss AS 5
JBoss Cache

Copyright 2008 Red Hat, Inc.


All rights reserved. | 2

JBoss EAP

Copyright 2008 Red Hat, Inc.


All rights reserved. | 3

JBoss Cache

Copyright 2008 Red Hat, Inc.


All rights reserved. | 4

JGroups

HA JMX Invoker

JBoss Messaging Clustering

HAPartition

HA-Singleton

Farm

HASessionState

HA-JNDI

HA EJB Invoker

EJB3 Entity Cache

EJB3 SFSB Cache

HTTP Session
Replication

JBoss EAP

JBoss EAP

( )

JBoss EAP
JBoss EAP 4.3.0.GA_CP02
JGroups 2.4.2.GA_CP01
JBoss Cache 1.4.1.SP9

Copyright 2008 Red Hat, Inc.


All rights reserved. | 5

JBoss Cache

Copyright 2008 Red Hat, Inc.


All rights reserved. | 6

JGroups

HA JMX Invoker

JBoss Messaging Clustering

HAPartition

HA-Singleton

Farm

HASessionState

HA-JNDI

HA EJB Invoker

EJB3 Entity Cache

EJB3 SFSB Cache

HTTP Session
Replication

HAPartition

HAPartition
EAP

HA-JNDI, JMX Invoker, EJB Invoker, HASingleton, HASessionState, Farm


HAPartition

JGroups
JBoss Cache

deploy/clustering-service.xml
Copyright 2008 Red Hat, Inc.
All rights reserved. | 7

JBoss Cache

Copyright 2008 Red Hat, Inc.


All rights reserved. | 8

JGroups

HA JMX Invoker

JBoss Messaging Clustering

HAPartition

HA-Singleton

Farm

HASessionState

HA-JNDI

HA EJB Invoker

EJB3 Entity Cache

EJB3 SFSB Cache

HTTP Session
Replication

JNDI

HA-JNDI
JNDI


deploy/cluster-service.xml

Copyright 2008 Red Hat, Inc.


All rights reserved. | 9

HA-JNDI


InitialContext

Copyright 2008 Red Hat, Inc.


All rights reserved. | 10

HA-JNDI
InitialContext
Context.PROVIDER_URL
1

jnp.partitionName
LAN

Copyright 2008 Red Hat, Inc.


All rights reserved. | 11

HA-JNDI
Context.PROVIDER_URL

Properties p = new Properties();


p.put(Context.INITIAL_CONTEXT_FACTORY, "org.jnp.interfaces.NamingContextFactory");
p.put(Context.URL_PKG_PREFIXES, "jboss.naming:org.jnp.interfaces");
p.put(Context.PROVIDER_URL, "node1:1100,node2:1100,node3:1100");
return new InitialContext(p);
Copyright 2008 Red Hat, Inc.
All rights reserved. | 12

HA-JNDI
jnp.partitionName

Properties p = new Properties();


p.put(Context.INITIAL_CONTEXT_FACTORY, "org.jnp.interfaces.NamingContextFactory");
p.put(Context.URL_PKG_PREFIXES, "jboss.naming:org.jnp.interfaces");
p.put("jnp.partitionName", "DefaultPartition");
return new InitialContext(p);
Copyright 2008 Red Hat, Inc.
All rights reserved. | 13

HA-JNDI


JNDI

Copyright 2008 Red Hat, Inc.


All rights reserved. | 14

HA-JNDI
HA-JNDI
jndi.properties
conf/jndi.properties
jndi.properties

HA-JNDI
InitialContext


HA-JNDI
JNDI
Copyright 2008 Red Hat, Inc.
All rights reserved. | 15

JBoss Cache

Copyright 2008 Red Hat, Inc.


All rights reserved. | 16

JGroups

HA JMX Invoker

JBoss Messaging Clustering

HAPartition

HA-Singleton

Farm

HASessionState

HA-JNDI

HA EJB Invoker

EJB3 Entity Cache

EJB3 SFSB Cache

HTTP Session
Replication

EJB

EJB( )

MDB

CMP


conf/standardjboss.xml
deploy/cluster-service.xml
deploy/ejb3-sbsb-cache-service.xml

Copyright 2008 Red Hat, Inc.


All rights reserved. | 17

EJB( )

EJB
@Clustered
jboss.xml <clustered>true</clustered>
jboss.xml Invoker (clustered=true)



HA-JNDI

Copyright 2008 Red Hat, Inc.


All rights reserved. | 18

SFSB
SLSB

SFSB
( )

EJB2 HASessionState
deploy/cluster-service.xml

EJB3 JBoss Cache


deploy/ejb3-clustered-sfsbcache-service.xml

Copyright 2008 Red Hat, Inc.


All rights reserved. | 19

JPA Entity
JBoss Cache JPA
Entity

deploy/ejb3-entity-cache-service.xml

Copyright 2008 Red Hat, Inc.


All rights reserved. | 20

JPA Entity

@Cache (usage=CacheConcurrencyStrategy.
TRANSACTIONAL)
(Entity )
Collection (Collection )

Copyright 2008 Red Hat, Inc.


All rights reserved. | 21

JPA Entity

Eviction Policy
CacheMode LOCAL

Copyright 2008 Red Hat, Inc.


All rights reserved. | 22

JBoss Cache

Copyright 2008 Red Hat, Inc.


All rights reserved. | 23

JGroups

HA JMX Invoker

JBoss Messaging Clustering

HAPartition

HA-Singleton

Farm

HASessionState

HA-JNDI

HA EJB Invoker

EJB3 Entity Cache

EJB3 SFSB Cache

HTTP Session
Replication

JBoss Web

JBoss Web
HttpSession

JBoss

Apache + mod_jk
Big IP


deploy/jboss-web-cluster.sar/META-INF/jbossservice.xml

Copyright 2008 Red Hat, Inc.


All rights reserved. | 24

JBoss Web

web.xml
<distributable />

mod_jk
jvmRoute
deploy/jboss-web.deployer/server.xml

UseJK
deploy/jboss-web.deployer/META-INF/jbossservice.xml

Copyright 2008 Red Hat, Inc.


All rights reserved. | 25

JBoss Cache

Copyright 2008 Red Hat, Inc.


All rights reserved. | 26

JGroups

HA JMX Invoker

JBoss Messaging Clustering

HAPartition

HA-Singleton

Farm

HASessionState

HA-JNDI

HA EJB Invoker

EJB3 Entity Cache

EJB3 SFSB Cache

HTTP Session
Replication

JBoss Messaging

JBoss Messaging

*-ds.xml

DB

deploy/jboss-messaging.sar/clustered-*persistence-service.xml
$JBOSS_HOME/docs/examples/jms
DBMS
clustered-hsqldb-persistenceservice.xml

deploy/jboss-messaging.sar/messagingservice.xml ServerPeerID
VM
Copyright 2008 Red Hat, Inc.
All rights reserved. | 27

JBoss Messaging

ClusteredConnectionFactory

HA-JNDI

Copyright 2008 Red Hat, Inc.


All rights reserved. | 28

JBoss Cache

Copyright 2008 Red Hat, Inc.


All rights reserved. | 29

JGroups

HA JMX Invoker

JBoss Messaging Clustering

HAPartition

HA-Singleton

Farm

HASessionState

HA-JNDI

HA EJB Invoker

EJB3 Entity Cache

EJB3 SFSB Cache

HTTP Session
Replication

JGroups

JGroups

Toolkit for reliable multicast


communication

JBoss

Copyright 2008 Red Hat, Inc.


All rights reserved. | 30

Unreliable
UDP
IP Multicast

Reliable
TCP
JGroups

JGroups
UDP


TCP

JGroups
TCP
DEBUG
conf/jboss-log4j.xml
WARN
<category name="org.jgroups">
<priority value="DEBUG"/>
</category>

Copyright 2008 Red Hat, Inc.


All rights reserved. | 31

JGroups
UDP
Multicast Sender/Receiver Test
UDP

JGroups JGroups

$ java org.jgroups.tests.McastReceiverTest -mcast_addr 224.10.10.10 -port


5555
$ java org.jgroups.tests.McastSenderTest -mcast_addr 224.10.10.10 -port
5555
Copyright 2008 Red Hat, Inc.
All rights reserved. | 32

JGroups
JGroups
ViewDemo

JGroups

$ java org.jgroups.demos.ViewDemo -props jgroups-config.xml

Copyright 2008 Red Hat, Inc.


All rights reserved. | 33

JGroups
jgroups.bind_addr

(
)


jgroups.bind_addr
0.0.0.0

JBoss -b
127.0.0.1 0.0.0.0

127.0.0.1

Copyright 2008 Red Hat, Inc.


All rights reserved. | 34



JBoss Web jvmRoute
mod_jk

JBoss Messaging ServerPeerID


JBoss Transactions nodeIdentifier
XA
XARecoveryModule

Copyright 2008 Red Hat, Inc.


All rights reserved. | 35



Java -Dkey=value

JBoss
${propertykey:defaultvalue}

conf/jbossjta-properties

bin/run.conf

Copyright 2008 Red Hat, Inc.


All rights reserved. | 36

HTTP
SFSB
JPA Entity


2
3

Copyright 2008 Red Hat, Inc.


All rights reserved. | 37

JBoss AS 5

Copyright 2008 Red Hat, Inc.


All rights reserved. | 38

AS 5

deploy/cluster

JGroups

EAP 4.3 6
AS 5 2

HTTP Session
Farm
ProfileService

Copyright 2008 Red Hat, Inc.


All rights reserved. | 39

AS 5
JGroups JBoss Cache

JBoss Cache 3.0.0.GA


JGroups 2.6.7.GA

Copyright 2008 Red Hat, Inc.


All rights reserved. | 40

JBossCache

Copyright 2008 Red Hat, Inc.


All rights reserved. | 41

JBoss Cache 3 - Naga


MVCC
MultiVersion Concurrency Control

Copyright 2008 Red Hat, Inc.


All rights reserved. | 42

Copyright 2008 Red Hat, Inc.


All rights reserved. | 43

Copyright 2008 Red Hat, Inc.


All rights reserved. | 44

JBoss Cache
1.3.0
1.4.0
1.4.1
2.0.0
2.1.0
2.2.0
3.0.0

Copyright 2008 Red Hat, Inc.


All rights reserved. | 45

Wasabi
Jalapeno
Cayenne
Habanero
Alegrias
- Poblano
Naga (Jolokia)

September 1-3, 2009 :: Hilton, Chicago, IL


Join open source innovators, software developers, forward-thinking
executives, and strategic partners for three intensive days in the windy city.
The event's comprehensive agenda will focus on technologies, best
practices and industry insights to help you make better decisions about
open source and design your future IT strategy.

Learn more. Visit jbossworld.com

Copyright 2008 Red Hat, Inc.


All rights reserved. | 46

NEC

Copyright 2008 Red Hat, Inc.


All rights reserved. | 47

You might also like