osgi community event 2010 — osgi and terracotta - replication of states for clustered services

Post on 19-May-2015

1.055 Views

Category:

Technology

0 Downloads

Preview:

Click to see full reader

DESCRIPTION

Presentation given at OSGi Community Event 2010 concerning my master thesis. It’s the integration of Terracotta into an OSGi framework to create distributed services, which replicate their internal states.

TRANSCRIPT

Anthony Gelibert - LIG Grenoble

OSGi and Terracotta: State replication of clustered

services

September 2010 GELIBERT – OSGi and Terracotta: Repliation of states for clustered services 2

Agenda• Context

• Terracotta

• OSGi and Terracotta

• Future work

September 2010 GELIBERT – OSGi and Terracotta: Repliation of states for clustered services 3

Agenda

•Context• Terracotta

• OSGi and Terracotta

• Future work

September 2010 GELIBERT – OSGi and Terracotta: Repliation of states for clustered services 4

About

• Anthony Gelibert– MSc at Master of Science in Informatics

at Grenoble (2010)– Engineer Degree at École Nationale

Supérieure d’Informatique et de Mathématiques Appliquées de Grenoble (2010)

September 2010 GELIBERT – OSGi and Terracotta: Repliation of states for clustered services 5

OSGi and distribution

• Distributed execution:– R-OSGi (Research)– OSGi Remote Services (Specification)

• Distributed deployment:– OSGi4C (Research)

• Shared Memory : our approach

September 2010 GELIBERT – OSGi and Terracotta: Repliation of states for clustered services 6

OSGi and distribution (cont.)• R-OSGi:

– Transparently invoke distant services– RMI-like

• OSGi4C:– Distributed bundle deployment– Runs locally

• Terracotta:– Shared memory

September 2010 GELIBERT – OSGi and Terracotta: Repliation of states for clustered services 7

Objective

September 2010 GELIBERT – OSGi and Terracotta: Repliation of states for clustered services 8

Use cases• Traditional targets of distributed

shared memory:– State share, Message bus, …

• Problems requiring the use of distributed methods.

• Re-engineering of existing solutions.

September 2010 GELIBERT – OSGi and Terracotta: Repliation of states for clustered services 9

Agenda• Context

•Terracotta• OSGi and Terracotta

• Future work

September 2010 GELIBERT – OSGi and Terracotta: Repliation of states for clustered services 10

Terracotta: N.A.M.• Network-Attached Memory• No API• No Serialization• Cross-JVM coordination• Distributed Method Invocations• Runtime monitoring and control

September 2010 GELIBERT – OSGi and Terracotta: Repliation of states for clustered services 11

Terracotta: configuration• No API: declarative configuration

September 2010 GELIBERT – OSGi and Terracotta: Repliation of states for clustered services 12

Teracotta: no serialization

• Plain POJO clustering

• Dynamic instrumentation through a Java Agent

• Fine-grained replication

September 2010 GELIBERT – OSGi and Terracotta: Repliation of states for clustered services 13

Terracotta: D.M.I

• Distributed Method Invocations.• When a node calls a method, all

nodes replicate it (locally). • Development close to MPI:

– The same code is executed at the same time on each node.

– Requires distinguishing each element.

September 2010 GELIBERT – OSGi and Terracotta: Repliation of states for clustered services 14

Agenda• Context

• Terracotta

•OSGi and Terracotta• Future work

September 2010 GELIBERT – OSGi and Terracotta: Repliation of states for clustered services 15

OSGi and Terracotta: Toolchain• Delegate class loading from OSGi to

Terracotta.

• A set of Java 5 Annotations.

• An APT processor to generate the Terracotta config file.

September 2010 GELIBERT – OSGi and Terracotta: Repliation of states for clustered services 16

Toolchain (cont.)

September 2010 GELIBERT – OSGi and Terracotta: Repliation of states for clustered services 17

Toolchain (cont.)

September 2010 GELIBERT – OSGi and Terracotta: Repliation of states for clustered services 18

Validation• EventAdmin: propagation of events

across multiple platforms.• Cilia: replication/persistence in

pervasive applications.• H-Omega: Replacement of message

passing by a shared memory.• uGASP: State share for a DTN

application

September 2010 GELIBERT – OSGi and Terracotta: Repliation of states for clustered services 19

Agenda• Context

• Terracotta

• OSGi and Terracotta

•Future work

September 2010 GELIBERT – OSGi and Terracotta: Repliation of states for clustered services 20

Future work

• Extension of the container:– Enhancement Terracotta integration– Add persistence, cache, …

• Dynamically update clustered services at run-time

September 2010 GELIBERT – OSGi and Terracotta: Repliation of states for clustered services 21

For more information• Terracotta

Documentation, download, …http://www.terracotta.orgOpen Sourcehttp://www.terracotta.org/open-source

• Felixhttp://felix.apache.org

• Chameleonhttp://wiki.chameleon.ow2.org

September 2010 GELIBERT – OSGi and Terracotta: Repliation of states for clustered services 22

THANK YOU FOR YOUR ATTENTION!

Contact: anthony.gelibert@me.com

top related