SlideShare a Scribd company logo
1 of 14
Download to read offline
A Fault Tolerance Concept for
Distributed OSGi Applications
Patrick Deuster, Fabian Meyer, Reinhold Kröger

RheinMain University of Applied Sciences

September 21, 2011




                                                           OSGi Alliance Marketing © 2008-2010 . 1
                                                                                           Page
COPYRIGHT © 2008-2011 OSGi Alliance. All Rights Reserved
                                                           All Rights Reserved
Agenda

•   Motivation
•   Related Work
•   Approach
•   Evaluation
•   Conclusion




    Page 2   OSGi Alliance Community Event 2011© 2008-2011. All Rights Reserved
Motivation

• OSGi is a commonly used service platform
• Distribution supported by Remote Service specification
  in R4.2
• Remote Services can be used as a basis for a fault
  tolerance concept

• Based on Patrick Deuster’s M.Sc. Thesis [1] at
  Wiesbaden University of Applied Sciences


   Page 3   OSGi Alliance Marketing © 2008-2011 . All Rights Reserved
Requirements

• No modification of the underlying OSGi framework
  implementation
• Transparency for service consumers
• Administration interface
• Configurable redundancy mechanisms
• Synchronization of replicas




   Page 4   OSGi Alliance Marketing © 2008-2011 . All Rights Reserved
Related Work

• DR-OSGi [2]
   •    Aspect oriented
   •    Caching, redundancy
   •    Major disadvantage: Can only be bound to local replica

• Towards reliable OSGi framework and applications [3]
   •    Proxy layer
   •    Service call forwarding to replicas
   •    Major disadvantage: Modification of the OSGi framework implementation

• FT-OSGi [4]
   •    Proxy layer
   •    Configuration and synchronisation
   •    Major disadvantage: No transparency for service consumers

   Page 5   OSGi Alliance Marketing © 2008-2011 . All Rights Reserved
Approach

• Redundant service instances
• Active and passive replicas
• Proxy layer
• Service call forwarding from proxy to service replicas
• Flexible result evaluation in proxy to determine reply to
  caller
• OSGi Remote Service specification used
• Apache Zookeeper used for group communication to
  establish consistent views

    Page 6   OSGi Alliance Marketing © 2008-2011 . All Rights Reserved
Architecture




  Page 7   OSGi Alliance Marketing © 2008-2011 . All Rights Reserved
Configuration Setup




  Page 8   OSGi Alliance Marketing © 2008-2011 . All Rights Reserved
Runtime




  Page 9   OSGi Alliance Marketing © 2008-2011 . All Rights Reserved
Performance Evaluation (1/2)

• Call time (2000 service calls)
Configuration               Avg (ms)            Min (ms)            Max (ms)        Std. Dev. (ms)

No Fault Tolerance                      2,4                    1             26                      1,3
                                                                                                           Setup:
1 Active / 1 Passive                    7,1                    4             64                      3,6   CPU: Intel Core 2 6320
2 Active / 1 Passive                    8,2                    4             61                      5,6
                                                                                                           Phys. Mem.: 3 GB
                                                                                                           Java: JDK 1.6
                                                                                                           OSGi-FW.:
• Reconfiguration time (50 failovers)                                                                       Eclipse Equinox 3.6
                                                                                                           RS-Impl.:
Type                                 Avg (ms)          Min (ms)         Max (ms)     Std. Dev. (ms)         Eclipse Communication
Service Instance Failover                     11,1                 1           30                    7,0    Framework

Framework Instance                       3881,9              3013            5391              687,7
Failover


       Page 10   OSGi Alliance Marketing © 2008-2011 . All Rights Reserved
Performance Evaluation (2/2)




                                                                        4,1 ms


                                                                        4,1 ms




  Page 11   OSGi Alliance Marketing © 2008-2011 . All Rights Reserved
Conclusion

• Design and implementation of a fault tolerance concept
  for distributed OSGi applications
   •    Transparent proxy layer with call forwarding
   •    Automated replica distribution
   •    Active and passive redundancy
   •    Flexible result evaluation in proxy to determine reply to caller
   •    State synchronization between replicas

• Future Work:
   •    Detailed performance evaluation
   •    Utilization in real application
   •    Cooperation with industrial partners



   Page 12   OSGi Alliance Marketing © 2008-2011 . All Rights Reserved
Thank you for your attention!

                                           Questions?




Page 13   OSGi Alliance Marketing © 2008-2011 . All Rights Reserved
References

[1] Deuster, Patrick. Ein Fehlertoleranzkonzept für verteilte OSGi-Anwendungen.
    Master Thesis, Wiesbaden University of Applied Sciences (2011)

[2] Kwon, Young-Woo; Tilevich, Eli; Apiwattanapong. Taweesup: DR-OSGi:
    Hardening Distributed Components with Network Volatility Resilency. In:
    Middleware (2009), 1-20.

[3] Ahn, Heejune; Oh, Hyukjun; Sung, Chang O.: Towards reliable OSGi
    framework and applications. In: Proceedings of the 2006 ACM synposium on
    Applied computing. ACM (SAC ´06).

[4] Torrão, Carlos; Carvalho, Nuno A.; Rodrigues, Luís: FT-OSGi: Fault Tolerant
    Extensions to the OSGi Service Platform. In: Proceedings of the Confederated
    International Conferences, CoopIS, DAO, IS, and ODBASE 2009 on On the
    Move to Meaningful Internet Systems: Part 1. Springer-Verlag (OTM ´09)



    Page 14   OSGi Alliance Marketing © 2008-2011 . All Rights Reserved

More Related Content

Similar to A Fault Tolerance Concept for Distributed OSGi Applications - Fabian Meyer

GlassFish Server 3.1: Deploying your Java EE 6 Applications
GlassFish Server 3.1: Deploying your Java EE 6 ApplicationsGlassFish Server 3.1: Deploying your Java EE 6 Applications
GlassFish Server 3.1: Deploying your Java EE 6 Applications
Arun Gupta
 
Singularity Rethinking The Software Stack
Singularity    Rethinking The  Software  StackSingularity    Rethinking The  Software  Stack
Singularity Rethinking The Software Stack
alanocu
 
Java EE 6 Clustering with Glassfish 3.1
Java EE 6 Clustering with Glassfish 3.1 Java EE 6 Clustering with Glassfish 3.1
Java EE 6 Clustering with Glassfish 3.1
Shreedhar Ganapathy
 
Resume_George
Resume_GeorgeResume_George
Resume_George
George lv
 

Similar to A Fault Tolerance Concept for Distributed OSGi Applications - Fabian Meyer (20)

GlassFish Server 3.1: Deploying your Java EE 6 Applications
GlassFish Server 3.1: Deploying your Java EE 6 ApplicationsGlassFish Server 3.1: Deploying your Java EE 6 Applications
GlassFish Server 3.1: Deploying your Java EE 6 Applications
 
Deploying Java EE 6 Apps in a Cluster: GlassFish 3.1 at Dallas Tech Fest 2011
Deploying Java EE 6 Apps in a Cluster: GlassFish 3.1 at Dallas Tech Fest 2011Deploying Java EE 6 Apps in a Cluster: GlassFish 3.1 at Dallas Tech Fest 2011
Deploying Java EE 6 Apps in a Cluster: GlassFish 3.1 at Dallas Tech Fest 2011
 
OSGi and Java EE: A Hybrid Approach to Enterprise Java Application Development
OSGi and Java EE: A Hybrid Approach to Enterprise Java Application DevelopmentOSGi and Java EE: A Hybrid Approach to Enterprise Java Application Development
OSGi and Java EE: A Hybrid Approach to Enterprise Java Application Development
 
OSGi and Java EE in GlassFish - Tech Days 2010 India
OSGi and Java EE in GlassFish - Tech Days 2010 IndiaOSGi and Java EE in GlassFish - Tech Days 2010 India
OSGi and Java EE in GlassFish - Tech Days 2010 India
 
GlassFish OSGi - Java2days 2010
GlassFish OSGi - Java2days 2010GlassFish OSGi - Java2days 2010
GlassFish OSGi - Java2days 2010
 
MySQL Replication Performance in the Cloud
MySQL Replication Performance in the CloudMySQL Replication Performance in the Cloud
MySQL Replication Performance in the Cloud
 
Smalltalk in Enterprise Applications
Smalltalk in Enterprise ApplicationsSmalltalk in Enterprise Applications
Smalltalk in Enterprise Applications
 
Gf University 27may09 Amersfoort
Gf University 27may09 AmersfoortGf University 27may09 Amersfoort
Gf University 27may09 Amersfoort
 
Singularity Rethinking The Software Stack
Singularity    Rethinking The  Software  StackSingularity    Rethinking The  Software  Stack
Singularity Rethinking The Software Stack
 
OpenSSO Roadmap Aquarium
OpenSSO Roadmap AquariumOpenSSO Roadmap Aquarium
OpenSSO Roadmap Aquarium
 
Using Device Abstraction Layers in OSGi based Embedded Systems - Dimitar Valt...
Using Device Abstraction Layers in OSGi based Embedded Systems - Dimitar Valt...Using Device Abstraction Layers in OSGi based Embedded Systems - Dimitar Valt...
Using Device Abstraction Layers in OSGi based Embedded Systems - Dimitar Valt...
 
GlassFish 3.1 – Simplifying your Java EE 6 Development and Deployment @ JAX L...
GlassFish 3.1 – Simplifying your Java EE 6 Development and Deployment @ JAX L...GlassFish 3.1 – Simplifying your Java EE 6 Development and Deployment @ JAX L...
GlassFish 3.1 – Simplifying your Java EE 6 Development and Deployment @ JAX L...
 
Java EE 6 Clustering with Glassfish 3.1
Java EE 6 Clustering with Glassfish 3.1 Java EE 6 Clustering with Glassfish 3.1
Java EE 6 Clustering with Glassfish 3.1
 
Oracle Fusion Middleware - pragmatic approach to build up your applications -...
Oracle Fusion Middleware - pragmatic approach to build up your applications -...Oracle Fusion Middleware - pragmatic approach to build up your applications -...
Oracle Fusion Middleware - pragmatic approach to build up your applications -...
 
Boston 2011 OTN Developer Days - GlassFish
Boston 2011 OTN Developer Days - GlassFishBoston 2011 OTN Developer Days - GlassFish
Boston 2011 OTN Developer Days - GlassFish
 
Foundation for optimized data center & private cloud
Foundation for optimized data center & private cloudFoundation for optimized data center & private cloud
Foundation for optimized data center & private cloud
 
Resume_George
Resume_GeorgeResume_George
Resume_George
 
Structuring software systems with OSGi - Ulf Fildebrandt
Structuring software systems with OSGi - Ulf FildebrandtStructuring software systems with OSGi - Ulf Fildebrandt
Structuring software systems with OSGi - Ulf Fildebrandt
 
GlassFish OSGi Server
GlassFish OSGi ServerGlassFish OSGi Server
GlassFish OSGi Server
 
OSGi enRoute Unveiled - P Kriens
OSGi enRoute Unveiled - P KriensOSGi enRoute Unveiled - P Kriens
OSGi enRoute Unveiled - P Kriens
 

More from mfrancis

Migrating from PDE to Bndtools in Practice - Amit Kumar Mondal (Deutsche Tele...
Migrating from PDE to Bndtools in Practice - Amit Kumar Mondal (Deutsche Tele...Migrating from PDE to Bndtools in Practice - Amit Kumar Mondal (Deutsche Tele...
Migrating from PDE to Bndtools in Practice - Amit Kumar Mondal (Deutsche Tele...
mfrancis
 
How OSGi drives cross-sector energy management - Jörn Tümmler (SMA Solar Tech...
How OSGi drives cross-sector energy management - Jörn Tümmler (SMA Solar Tech...How OSGi drives cross-sector energy management - Jörn Tümmler (SMA Solar Tech...
How OSGi drives cross-sector energy management - Jörn Tümmler (SMA Solar Tech...
mfrancis
 
Improved developer productivity thanks to Maven and OSGi - Lukasz Dywicki (Co...
Improved developer productivity thanks to Maven and OSGi - Lukasz Dywicki (Co...Improved developer productivity thanks to Maven and OSGi - Lukasz Dywicki (Co...
Improved developer productivity thanks to Maven and OSGi - Lukasz Dywicki (Co...
mfrancis
 
Prototyping IoT systems with a hybrid OSGi & Node-RED platform - Bruce Jackso...
Prototyping IoT systems with a hybrid OSGi & Node-RED platform - Bruce Jackso...Prototyping IoT systems with a hybrid OSGi & Node-RED platform - Bruce Jackso...
Prototyping IoT systems with a hybrid OSGi & Node-RED platform - Bruce Jackso...
mfrancis
 

More from mfrancis (20)

Eclipse Modeling Framework and plain OSGi the easy way - Mark Hoffman (Data I...
Eclipse Modeling Framework and plain OSGi the easy way - Mark Hoffman (Data I...Eclipse Modeling Framework and plain OSGi the easy way - Mark Hoffman (Data I...
Eclipse Modeling Framework and plain OSGi the easy way - Mark Hoffman (Data I...
 
OSGi and Java 9+ - BJ Hargrave (IBM)
OSGi and Java 9+ - BJ Hargrave (IBM)OSGi and Java 9+ - BJ Hargrave (IBM)
OSGi and Java 9+ - BJ Hargrave (IBM)
 
Simplify Web UX Coding using OSGi Modularity Magic - Paul Fraser (A2Z Living)
Simplify Web UX Coding using OSGi Modularity Magic - Paul Fraser (A2Z Living)Simplify Web UX Coding using OSGi Modularity Magic - Paul Fraser (A2Z Living)
Simplify Web UX Coding using OSGi Modularity Magic - Paul Fraser (A2Z Living)
 
OSGi for the data centre - Connecting OSGi to Kubernetes - Frank Lyaruu
OSGi for the data centre - Connecting OSGi to Kubernetes - Frank LyaruuOSGi for the data centre - Connecting OSGi to Kubernetes - Frank Lyaruu
OSGi for the data centre - Connecting OSGi to Kubernetes - Frank Lyaruu
 
Remote Management and Monitoring of Distributed OSGi Applications - Tim Verbe...
Remote Management and Monitoring of Distributed OSGi Applications - Tim Verbe...Remote Management and Monitoring of Distributed OSGi Applications - Tim Verbe...
Remote Management and Monitoring of Distributed OSGi Applications - Tim Verbe...
 
OSGi with Docker - a powerful way to develop Java systems - Udo Hafermann (So...
OSGi with Docker - a powerful way to develop Java systems - Udo Hafermann (So...OSGi with Docker - a powerful way to develop Java systems - Udo Hafermann (So...
OSGi with Docker - a powerful way to develop Java systems - Udo Hafermann (So...
 
A real world use case with OSGi R7 - Jurgen Albert (Data In Motion Consulting...
A real world use case with OSGi R7 - Jurgen Albert (Data In Motion Consulting...A real world use case with OSGi R7 - Jurgen Albert (Data In Motion Consulting...
A real world use case with OSGi R7 - Jurgen Albert (Data In Motion Consulting...
 
OSGi Feature Model - Where Art Thou - David Bosschaert (Adobe)
OSGi Feature Model - Where Art Thou - David Bosschaert (Adobe)OSGi Feature Model - Where Art Thou - David Bosschaert (Adobe)
OSGi Feature Model - Where Art Thou - David Bosschaert (Adobe)
 
Migrating from PDE to Bndtools in Practice - Amit Kumar Mondal (Deutsche Tele...
Migrating from PDE to Bndtools in Practice - Amit Kumar Mondal (Deutsche Tele...Migrating from PDE to Bndtools in Practice - Amit Kumar Mondal (Deutsche Tele...
Migrating from PDE to Bndtools in Practice - Amit Kumar Mondal (Deutsche Tele...
 
OSGi CDI Integration Specification - Ray Augé (Liferay)
OSGi CDI Integration Specification - Ray Augé (Liferay)OSGi CDI Integration Specification - Ray Augé (Liferay)
OSGi CDI Integration Specification - Ray Augé (Liferay)
 
How OSGi drives cross-sector energy management - Jörn Tümmler (SMA Solar Tech...
How OSGi drives cross-sector energy management - Jörn Tümmler (SMA Solar Tech...How OSGi drives cross-sector energy management - Jörn Tümmler (SMA Solar Tech...
How OSGi drives cross-sector energy management - Jörn Tümmler (SMA Solar Tech...
 
Improved developer productivity thanks to Maven and OSGi - Lukasz Dywicki (Co...
Improved developer productivity thanks to Maven and OSGi - Lukasz Dywicki (Co...Improved developer productivity thanks to Maven and OSGi - Lukasz Dywicki (Co...
Improved developer productivity thanks to Maven and OSGi - Lukasz Dywicki (Co...
 
It Was Twenty Years Ago Today - Building an OSGi based Smart Home System - Ch...
It Was Twenty Years Ago Today - Building an OSGi based Smart Home System - Ch...It Was Twenty Years Ago Today - Building an OSGi based Smart Home System - Ch...
It Was Twenty Years Ago Today - Building an OSGi based Smart Home System - Ch...
 
Popular patterns revisited on OSGi - Christian Schneider (Adobe)
Popular patterns revisited on OSGi - Christian Schneider (Adobe)Popular patterns revisited on OSGi - Christian Schneider (Adobe)
Popular patterns revisited on OSGi - Christian Schneider (Adobe)
 
Integrating SLF4J and the new OSGi LogService 1.4 - BJ Hargrave (IBM)
Integrating SLF4J and the new OSGi LogService 1.4 - BJ Hargrave (IBM)Integrating SLF4J and the new OSGi LogService 1.4 - BJ Hargrave (IBM)
Integrating SLF4J and the new OSGi LogService 1.4 - BJ Hargrave (IBM)
 
OSG(a)i: because AI needs a runtime - Tim Verbelen (imec)
OSG(a)i: because AI needs a runtime - Tim Verbelen (imec)OSG(a)i: because AI needs a runtime - Tim Verbelen (imec)
OSG(a)i: because AI needs a runtime - Tim Verbelen (imec)
 
Flying to Jupiter with OSGi - Tony Walsh (ESA) & Hristo Indzhov (Telespazio V...
Flying to Jupiter with OSGi - Tony Walsh (ESA) & Hristo Indzhov (Telespazio V...Flying to Jupiter with OSGi - Tony Walsh (ESA) & Hristo Indzhov (Telespazio V...
Flying to Jupiter with OSGi - Tony Walsh (ESA) & Hristo Indzhov (Telespazio V...
 
MicroProfile, OSGi was meant for this - Ray Auge (Liferay)
MicroProfile, OSGi was meant for this - Ray Auge (Liferay)MicroProfile, OSGi was meant for this - Ray Auge (Liferay)
MicroProfile, OSGi was meant for this - Ray Auge (Liferay)
 
Prototyping IoT systems with a hybrid OSGi & Node-RED platform - Bruce Jackso...
Prototyping IoT systems with a hybrid OSGi & Node-RED platform - Bruce Jackso...Prototyping IoT systems with a hybrid OSGi & Node-RED platform - Bruce Jackso...
Prototyping IoT systems with a hybrid OSGi & Node-RED platform - Bruce Jackso...
 
How to connect your OSGi application - Dirk Fauth (Bosch)
How to connect your OSGi application - Dirk Fauth (Bosch)How to connect your OSGi application - Dirk Fauth (Bosch)
How to connect your OSGi application - Dirk Fauth (Bosch)
 

Recently uploaded

Recently uploaded (20)

Real Time Object Detection Using Open CV
Real Time Object Detection Using Open CVReal Time Object Detection Using Open CV
Real Time Object Detection Using Open CV
 
04-2024-HHUG-Sales-and-Marketing-Alignment.pptx
04-2024-HHUG-Sales-and-Marketing-Alignment.pptx04-2024-HHUG-Sales-and-Marketing-Alignment.pptx
04-2024-HHUG-Sales-and-Marketing-Alignment.pptx
 
08448380779 Call Girls In Greater Kailash - I Women Seeking Men
08448380779 Call Girls In Greater Kailash - I Women Seeking Men08448380779 Call Girls In Greater Kailash - I Women Seeking Men
08448380779 Call Girls In Greater Kailash - I Women Seeking Men
 
GenCyber Cyber Security Day Presentation
GenCyber Cyber Security Day PresentationGenCyber Cyber Security Day Presentation
GenCyber Cyber Security Day Presentation
 
A Domino Admins Adventures (Engage 2024)
A Domino Admins Adventures (Engage 2024)A Domino Admins Adventures (Engage 2024)
A Domino Admins Adventures (Engage 2024)
 
Understanding Discord NSFW Servers A Guide for Responsible Users.pdf
Understanding Discord NSFW Servers A Guide for Responsible Users.pdfUnderstanding Discord NSFW Servers A Guide for Responsible Users.pdf
Understanding Discord NSFW Servers A Guide for Responsible Users.pdf
 
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...
 
Exploring the Future Potential of AI-Enabled Smartphone Processors
Exploring the Future Potential of AI-Enabled Smartphone ProcessorsExploring the Future Potential of AI-Enabled Smartphone Processors
Exploring the Future Potential of AI-Enabled Smartphone Processors
 
Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...
Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...
Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...
 
The Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdf
The Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdfThe Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdf
The Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdf
 
From Event to Action: Accelerate Your Decision Making with Real-Time Automation
From Event to Action: Accelerate Your Decision Making with Real-Time AutomationFrom Event to Action: Accelerate Your Decision Making with Real-Time Automation
From Event to Action: Accelerate Your Decision Making with Real-Time Automation
 
Presentation on how to chat with PDF using ChatGPT code interpreter
Presentation on how to chat with PDF using ChatGPT code interpreterPresentation on how to chat with PDF using ChatGPT code interpreter
Presentation on how to chat with PDF using ChatGPT code interpreter
 
Advantages of Hiring UIUX Design Service Providers for Your Business
Advantages of Hiring UIUX Design Service Providers for Your BusinessAdvantages of Hiring UIUX Design Service Providers for Your Business
Advantages of Hiring UIUX Design Service Providers for Your Business
 
Axa Assurance Maroc - Insurer Innovation Award 2024
Axa Assurance Maroc - Insurer Innovation Award 2024Axa Assurance Maroc - Insurer Innovation Award 2024
Axa Assurance Maroc - Insurer Innovation Award 2024
 
Boost PC performance: How more available memory can improve productivity
Boost PC performance: How more available memory can improve productivityBoost PC performance: How more available memory can improve productivity
Boost PC performance: How more available memory can improve productivity
 
A Call to Action for Generative AI in 2024
A Call to Action for Generative AI in 2024A Call to Action for Generative AI in 2024
A Call to Action for Generative AI in 2024
 
Driving Behavioral Change for Information Management through Data-Driven Gree...
Driving Behavioral Change for Information Management through Data-Driven Gree...Driving Behavioral Change for Information Management through Data-Driven Gree...
Driving Behavioral Change for Information Management through Data-Driven Gree...
 
Finology Group – Insurtech Innovation Award 2024
Finology Group – Insurtech Innovation Award 2024Finology Group – Insurtech Innovation Award 2024
Finology Group – Insurtech Innovation Award 2024
 
[2024]Digital Global Overview Report 2024 Meltwater.pdf
[2024]Digital Global Overview Report 2024 Meltwater.pdf[2024]Digital Global Overview Report 2024 Meltwater.pdf
[2024]Digital Global Overview Report 2024 Meltwater.pdf
 
How to convert PDF to text with Nanonets
How to convert PDF to text with NanonetsHow to convert PDF to text with Nanonets
How to convert PDF to text with Nanonets
 

A Fault Tolerance Concept for Distributed OSGi Applications - Fabian Meyer

  • 1. A Fault Tolerance Concept for Distributed OSGi Applications Patrick Deuster, Fabian Meyer, Reinhold Kröger RheinMain University of Applied Sciences September 21, 2011 OSGi Alliance Marketing © 2008-2010 . 1 Page COPYRIGHT © 2008-2011 OSGi Alliance. All Rights Reserved All Rights Reserved
  • 2. Agenda • Motivation • Related Work • Approach • Evaluation • Conclusion Page 2 OSGi Alliance Community Event 2011© 2008-2011. All Rights Reserved
  • 3. Motivation • OSGi is a commonly used service platform • Distribution supported by Remote Service specification in R4.2 • Remote Services can be used as a basis for a fault tolerance concept • Based on Patrick Deuster’s M.Sc. Thesis [1] at Wiesbaden University of Applied Sciences Page 3 OSGi Alliance Marketing © 2008-2011 . All Rights Reserved
  • 4. Requirements • No modification of the underlying OSGi framework implementation • Transparency for service consumers • Administration interface • Configurable redundancy mechanisms • Synchronization of replicas Page 4 OSGi Alliance Marketing © 2008-2011 . All Rights Reserved
  • 5. Related Work • DR-OSGi [2] • Aspect oriented • Caching, redundancy • Major disadvantage: Can only be bound to local replica • Towards reliable OSGi framework and applications [3] • Proxy layer • Service call forwarding to replicas • Major disadvantage: Modification of the OSGi framework implementation • FT-OSGi [4] • Proxy layer • Configuration and synchronisation • Major disadvantage: No transparency for service consumers Page 5 OSGi Alliance Marketing © 2008-2011 . All Rights Reserved
  • 6. Approach • Redundant service instances • Active and passive replicas • Proxy layer • Service call forwarding from proxy to service replicas • Flexible result evaluation in proxy to determine reply to caller • OSGi Remote Service specification used • Apache Zookeeper used for group communication to establish consistent views Page 6 OSGi Alliance Marketing © 2008-2011 . All Rights Reserved
  • 7. Architecture Page 7 OSGi Alliance Marketing © 2008-2011 . All Rights Reserved
  • 8. Configuration Setup Page 8 OSGi Alliance Marketing © 2008-2011 . All Rights Reserved
  • 9. Runtime Page 9 OSGi Alliance Marketing © 2008-2011 . All Rights Reserved
  • 10. Performance Evaluation (1/2) • Call time (2000 service calls) Configuration Avg (ms) Min (ms) Max (ms) Std. Dev. (ms) No Fault Tolerance 2,4 1 26 1,3 Setup: 1 Active / 1 Passive 7,1 4 64 3,6 CPU: Intel Core 2 6320 2 Active / 1 Passive 8,2 4 61 5,6 Phys. Mem.: 3 GB Java: JDK 1.6 OSGi-FW.: • Reconfiguration time (50 failovers) Eclipse Equinox 3.6 RS-Impl.: Type Avg (ms) Min (ms) Max (ms) Std. Dev. (ms) Eclipse Communication Service Instance Failover 11,1 1 30 7,0 Framework Framework Instance 3881,9 3013 5391 687,7 Failover Page 10 OSGi Alliance Marketing © 2008-2011 . All Rights Reserved
  • 11. Performance Evaluation (2/2) 4,1 ms 4,1 ms Page 11 OSGi Alliance Marketing © 2008-2011 . All Rights Reserved
  • 12. Conclusion • Design and implementation of a fault tolerance concept for distributed OSGi applications • Transparent proxy layer with call forwarding • Automated replica distribution • Active and passive redundancy • Flexible result evaluation in proxy to determine reply to caller • State synchronization between replicas • Future Work: • Detailed performance evaluation • Utilization in real application • Cooperation with industrial partners Page 12 OSGi Alliance Marketing © 2008-2011 . All Rights Reserved
  • 13. Thank you for your attention! Questions? Page 13 OSGi Alliance Marketing © 2008-2011 . All Rights Reserved
  • 14. References [1] Deuster, Patrick. Ein Fehlertoleranzkonzept für verteilte OSGi-Anwendungen. Master Thesis, Wiesbaden University of Applied Sciences (2011) [2] Kwon, Young-Woo; Tilevich, Eli; Apiwattanapong. Taweesup: DR-OSGi: Hardening Distributed Components with Network Volatility Resilency. In: Middleware (2009), 1-20. [3] Ahn, Heejune; Oh, Hyukjun; Sung, Chang O.: Towards reliable OSGi framework and applications. In: Proceedings of the 2006 ACM synposium on Applied computing. ACM (SAC ´06). [4] Torrão, Carlos; Carvalho, Nuno A.; Rodrigues, Luís: FT-OSGi: Fault Tolerant Extensions to the OSGi Service Platform. In: Proceedings of the Confederated International Conferences, CoopIS, DAO, IS, and ODBASE 2009 on On the Move to Meaningful Internet Systems: Part 1. Springer-Verlag (OTM ´09) Page 14 OSGi Alliance Marketing © 2008-2011 . All Rights Reserved