Neo4j - How KGs are shaping the future of Generative AI at AWS Summit London ...
OSGi Community Event 2010 - OSGi and Terracotta - replication of states for clustered services
1. Anthony Gelibert - LIG Grenoble
OSGi and Terracotta:
State replication of clustered
services
2. September 2010 GELIBERT – OSGi and Terracotta: Repliation of states for clustered services 2
Agenda
• Context
• Terracotta
• OSGi and Terracotta
• Future work
3. September 2010 GELIBERT – OSGi and Terracotta: Repliation of states for clustered services 3
Agenda
•Context
• Terracotta
• OSGi and Terracotta
• Future work
4. 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)
5. 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
6. 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
7. September 2010 GELIBERT – OSGi and Terracotta: Repliation of states for clustered services 7
Objective
8. 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.
9. September 2010 GELIBERT – OSGi and Terracotta: Repliation of states for clustered services 9
Agenda
• Context
•Terracotta
• OSGi and Terracotta
• Future work
10. 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
11. September 2010 GELIBERT – OSGi and Terracotta: Repliation of states for clustered services 11
Terracotta: configuration
• No API: declarative configuration
12. 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
13. 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.
14. September 2010 GELIBERT – OSGi and Terracotta: Repliation of states for clustered services 14
Agenda
• Context
• Terracotta
•OSGi and Terracotta
• Future work
15. 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.
16. September 2010 GELIBERT – OSGi and Terracotta: Repliation of states for clustered services 16
Toolchain (cont.)
17. September 2010 GELIBERT – OSGi and Terracotta: Repliation of states for clustered services 17
Toolchain (cont.)
18. 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
19. September 2010 GELIBERT – OSGi and Terracotta: Repliation of states for clustered services 19
Agenda
• Context
• Terracotta
• OSGi and Terracotta
•Future work
20. 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
21. September 2010 GELIBERT – OSGi and Terracotta: Repliation of states for clustered services 21
For more information
• Terracotta
Documentation, download, …
http://www.terracotta.org
Open Source
http://www.terracotta.org/open-source
• Felix
http://felix.apache.org
• Chameleon
http://wiki.chameleon.ow2.org
22. September 2010 GELIBERT – OSGi and Terracotta: Repliation of states for clustered services 22
THANK YOU FOR YOUR
ATTENTION!
Contact: anthony.gelibert@me.com