SlideShare a Scribd company logo
OSGiTM Resolver in
action
Peergreen Deployment System
Guillaume.sauthier@peergreen.com @sauthieg
© 2013 Peergreen, Confidential & Proprietary
285 seconds left
What do we do in Peergreen?
I’ll talk about …
© 2013 Peergreen, Confidential & Proprietary
270 seconds left
We need
(for deployment at least …)
Efficiency
(multi-core architectures)
Heterogeneity
(different kind of artifacts) Ease of use
© 2013 Peergreen, Confidential & Proprietary
255 seconds left
Specification:
OSGi Resolver 1.0
• Part of OSGi Enterprise R5
• Build relationships
• Implemented in Apache Felix
Requirement
“I want …”
Capability
“I offer …”Resolver
Namespace + LDAP filter Namespace + attributes
© 2013 Peergreen, Confidential & Proprietary
240 seconds left
Resolver production
• Wire(s) (satisfied requirements)
• Or Exception (unsatisfied requirements)
Requirement CapabilityWire
Need Interpretation
(use resources, make decisions, …)
© 2013 Peergreen, Confidential & Proprietary
225 seconds left
Peergreen
Deployment System Goals
Efficient (multi-threading)
Resource Neutral
Plug-able architecture
Artifact Model
© 2013 Peergreen, Confidential & Proprietary
210 seconds left
Artifacts
Name + URI
(File, Directory, Maven, …)
Resolver Resource
(provides capabilities)
© 2013 Peergreen, Confidential & Proprietary
195 seconds left
Facets
Specialized View
Artifact Decoration
(Webapp, Bundle, Configadmin, …)
Dictates Lifecycle
(phase sequence)
Express Capability
(when installed)
© 2013 Peergreen, Confidential & Proprietary
180 seconds left
Phases
Execution Controller
Logical Steps
(read-xml, install, start, stop, …)
Resolver Client
(find compatible processors)
Pipeline / Parallel
(execution)
© 2013 Peergreen, Confidential & Proprietary
165 seconds left
Processors
Unit of Work
Chained Together
(Transformer, Facet producer, …)
Resolver Resource
(requirements, capabilities)
© 2013 Peergreen, Confidential & Proprietary
150 seconds left
High level view
Discovery Phase
• Download
• Scan
• Find
dependencies
Execution Phase
• Facet’s
lifecycle
• Concurrency
© 2013 Peergreen, Confidential & Proprietary
135 seconds left
@bundle
Execution phase
Concurrent Execution
(per facet lifecycle)
Multiple Artifacts
(sharing same lifecycle)
Facet Decoration
(on the fly)start
install
@webapp
start
configure
read-xml
© 2013 Peergreen, Confidential & Proprietary
120 seconds left
Processor Resolution
Per Phase
Resolving bound processor’s requirements
against artifact’s capabilities
Satisfied processors are executed
© 2013 Peergreen, Confidential & Proprietary
1 23
105 seconds left
Interpretation
Missing Capabilities
(unsatisfied processors)
B
A
DC
E ?
Requires Sorting
& Filtering
(linearize graph)
E C B
© 2013 Peergreen, Confidential & Proprietary
90 seconds left
Extensibility
OSGi Services
Facet addition
Facet Lifecycle
(phases definition)
New Processors
© 2013 Peergreen, Confidential & Proprietary
75 seconds leftExample
© 2013 Peergreen, Confidential & Proprietary
60 seconds left
Model
Query-able
Useful for Reporting
Introspection capabilities
(facets, processors, execution times)
Store relations
(transformations, creations, dependencies)
© 2013 Peergreen, Confidential & Proprietary
45 seconds left
plan
plan
web ejbjar
mvn
bundle
Artifact Tree
Report
Meta-information
(root, report, …)
© 2013 Peergreen, Confidential & Proprietary
30 seconds left
Benefits
Extensibility
(new requirements and capabilities)
Dynamism
(processors, facet and phases)
Ease of Use
(extension development, deployment reporting)
Efficiency
(maximize concurrency)
© 2013 Peergreen, Confidential & Proprietary
15 seconds left
Thanks
Follow Us
(@peergreeninfo)
Get your copy
(M1 is there, M2 soon)
www.peergreen.com

More Related Content

What's hot

CAPS: What's best for deploying and managing OpenStack? Chef vs. Ansible vs. ...
CAPS: What's best for deploying and managing OpenStack? Chef vs. Ansible vs. ...CAPS: What's best for deploying and managing OpenStack? Chef vs. Ansible vs. ...
CAPS: What's best for deploying and managing OpenStack? Chef vs. Ansible vs. ...
Daniel Krook
 
OpenStack for devops environment
OpenStack for devops environment OpenStack for devops environment
OpenStack for devops environment
Orgad Kimchi
 
One tool, two fabrics: Ansible and Nexus 9000
One tool, two fabrics: Ansible and Nexus 9000One tool, two fabrics: Ansible and Nexus 9000
One tool, two fabrics: Ansible and Nexus 9000
Joel W. King
 
Oracle on kubernetes 101 - Dec/2021
Oracle on kubernetes 101 - Dec/2021Oracle on kubernetes 101 - Dec/2021
Oracle on kubernetes 101 - Dec/2021
Nelson Calero
 
OSDC2014: Testing Server Infrastructure with #serverspec
OSDC2014: Testing Server Infrastructure with #serverspecOSDC2014: Testing Server Infrastructure with #serverspec
OSDC2014: Testing Server Infrastructure with #serverspec
Andreas Schmidt
 
Zenith Arca Business Introduction
Zenith Arca Business IntroductionZenith Arca Business Introduction
Zenith Arca Business Introduction
sgo4th
 
Ambari Meetup: What's New in Ambari
Ambari Meetup: What's New in AmbariAmbari Meetup: What's New in Ambari
Ambari Meetup: What's New in Ambari
Hortonworks
 
Building a REST Service in minutes with Spring Boot
Building a REST Service in minutes with Spring BootBuilding a REST Service in minutes with Spring Boot
Building a REST Service in minutes with Spring Boot
Omri Spector
 
SharePoint 24x7x365 Architecting for High Availability, Fault Tolerance and D...
SharePoint 24x7x365 Architecting for High Availability, Fault Tolerance and D...SharePoint 24x7x365 Architecting for High Availability, Fault Tolerance and D...
SharePoint 24x7x365 Architecting for High Availability, Fault Tolerance and D...
Eric Shupps
 
Rackspace Private Cloud presentation for ChefConf 2013
Rackspace Private Cloud presentation for ChefConf 2013Rackspace Private Cloud presentation for ChefConf 2013
Rackspace Private Cloud presentation for ChefConf 2013
Joe Breu
 
Meetup Angular.JS #12 Paris
Meetup Angular.JS #12 ParisMeetup Angular.JS #12 Paris
Meetup Angular.JS #12 Paris
Sylvain Utard
 
DevOps with Ansible
DevOps with AnsibleDevOps with Ansible
DevOps with Ansible
Swapnil Jain
 
Pie on AWS
Pie on AWSPie on AWS
Pie on AWS
Kuan Yen Heng
 
Spark HBase Connector: Feature Rich and Efficient Access to HBase Through Spa...
Spark HBase Connector: Feature Rich and Efficient Access to HBase Through Spa...Spark HBase Connector: Feature Rich and Efficient Access to HBase Through Spa...
Spark HBase Connector: Feature Rich and Efficient Access to HBase Through Spa...
Databricks
 
Haute Disponibilité et Reprise sur incidents en SharePoint 2013 avec Sql Serv...
Haute Disponibilité et Reprise sur incidents en SharePoint 2013 avec Sql Serv...Haute Disponibilité et Reprise sur incidents en SharePoint 2013 avec Sql Serv...
Haute Disponibilité et Reprise sur incidents en SharePoint 2013 avec Sql Serv...
serge luca
 
Heat - keep the clouds up
Heat - keep the clouds upHeat - keep the clouds up
Heat - keep the clouds up
Kiran Murari
 
Livy: A REST Web Service for Spark
Livy: A REST Web Service for SparkLivy: A REST Web Service for Spark
Livy: A REST Web Service for Spark
Ashish kumar
 
Exachk and oem12c
Exachk and oem12cExachk and oem12c
Exachk and oem12c
Bobby Curtis
 
Akka in Practice: Designing Actor-based Applications
Akka in Practice: Designing Actor-based ApplicationsAkka in Practice: Designing Actor-based Applications
Akka in Practice: Designing Actor-based Applications
NLJUG
 
Coscup 2013 : Continuous Integration on top of hadoop
Coscup 2013 : Continuous Integration on top of hadoopCoscup 2013 : Continuous Integration on top of hadoop
Coscup 2013 : Continuous Integration on top of hadoop
Wisely chen
 

What's hot (20)

CAPS: What's best for deploying and managing OpenStack? Chef vs. Ansible vs. ...
CAPS: What's best for deploying and managing OpenStack? Chef vs. Ansible vs. ...CAPS: What's best for deploying and managing OpenStack? Chef vs. Ansible vs. ...
CAPS: What's best for deploying and managing OpenStack? Chef vs. Ansible vs. ...
 
OpenStack for devops environment
OpenStack for devops environment OpenStack for devops environment
OpenStack for devops environment
 
One tool, two fabrics: Ansible and Nexus 9000
One tool, two fabrics: Ansible and Nexus 9000One tool, two fabrics: Ansible and Nexus 9000
One tool, two fabrics: Ansible and Nexus 9000
 
Oracle on kubernetes 101 - Dec/2021
Oracle on kubernetes 101 - Dec/2021Oracle on kubernetes 101 - Dec/2021
Oracle on kubernetes 101 - Dec/2021
 
OSDC2014: Testing Server Infrastructure with #serverspec
OSDC2014: Testing Server Infrastructure with #serverspecOSDC2014: Testing Server Infrastructure with #serverspec
OSDC2014: Testing Server Infrastructure with #serverspec
 
Zenith Arca Business Introduction
Zenith Arca Business IntroductionZenith Arca Business Introduction
Zenith Arca Business Introduction
 
Ambari Meetup: What's New in Ambari
Ambari Meetup: What's New in AmbariAmbari Meetup: What's New in Ambari
Ambari Meetup: What's New in Ambari
 
Building a REST Service in minutes with Spring Boot
Building a REST Service in minutes with Spring BootBuilding a REST Service in minutes with Spring Boot
Building a REST Service in minutes with Spring Boot
 
SharePoint 24x7x365 Architecting for High Availability, Fault Tolerance and D...
SharePoint 24x7x365 Architecting for High Availability, Fault Tolerance and D...SharePoint 24x7x365 Architecting for High Availability, Fault Tolerance and D...
SharePoint 24x7x365 Architecting for High Availability, Fault Tolerance and D...
 
Rackspace Private Cloud presentation for ChefConf 2013
Rackspace Private Cloud presentation for ChefConf 2013Rackspace Private Cloud presentation for ChefConf 2013
Rackspace Private Cloud presentation for ChefConf 2013
 
Meetup Angular.JS #12 Paris
Meetup Angular.JS #12 ParisMeetup Angular.JS #12 Paris
Meetup Angular.JS #12 Paris
 
DevOps with Ansible
DevOps with AnsibleDevOps with Ansible
DevOps with Ansible
 
Pie on AWS
Pie on AWSPie on AWS
Pie on AWS
 
Spark HBase Connector: Feature Rich and Efficient Access to HBase Through Spa...
Spark HBase Connector: Feature Rich and Efficient Access to HBase Through Spa...Spark HBase Connector: Feature Rich and Efficient Access to HBase Through Spa...
Spark HBase Connector: Feature Rich and Efficient Access to HBase Through Spa...
 
Haute Disponibilité et Reprise sur incidents en SharePoint 2013 avec Sql Serv...
Haute Disponibilité et Reprise sur incidents en SharePoint 2013 avec Sql Serv...Haute Disponibilité et Reprise sur incidents en SharePoint 2013 avec Sql Serv...
Haute Disponibilité et Reprise sur incidents en SharePoint 2013 avec Sql Serv...
 
Heat - keep the clouds up
Heat - keep the clouds upHeat - keep the clouds up
Heat - keep the clouds up
 
Livy: A REST Web Service for Spark
Livy: A REST Web Service for SparkLivy: A REST Web Service for Spark
Livy: A REST Web Service for Spark
 
Exachk and oem12c
Exachk and oem12cExachk and oem12c
Exachk and oem12c
 
Akka in Practice: Designing Actor-based Applications
Akka in Practice: Designing Actor-based ApplicationsAkka in Practice: Designing Actor-based Applications
Akka in Practice: Designing Actor-based Applications
 
Coscup 2013 : Continuous Integration on top of hadoop
Coscup 2013 : Continuous Integration on top of hadoopCoscup 2013 : Continuous Integration on top of hadoop
Coscup 2013 : Continuous Integration on top of hadoop
 

Similar to EclipseCon FR : Ignite talks, OSGi Resolver in action

Cloud Platforms for Java
Cloud Platforms for JavaCloud Platforms for Java
Cloud Platforms for Java
3Pillar Global
 
BYOP: Custom Processor Development with Apache NiFi
BYOP: Custom Processor Development with Apache NiFiBYOP: Custom Processor Development with Apache NiFi
BYOP: Custom Processor Development with Apache NiFi
DataWorks Summit
 
SAP TechEd 2013 session Tec118 managing your-environment
SAP TechEd 2013 session Tec118 managing your-environmentSAP TechEd 2013 session Tec118 managing your-environment
SAP TechEd 2013 session Tec118 managing your-environment
Chris Kernaghan
 
JAX-RS.next
JAX-RS.nextJAX-RS.next
JAX-RS.next
Michal Gajdos
 
Database as a Service, Collaborate 2016
Database as a Service, Collaborate 2016Database as a Service, Collaborate 2016
Database as a Service, Collaborate 2016
Kellyn Pot'Vin-Gorman
 
WebSockets in Enterprise Applications
WebSockets in Enterprise ApplicationsWebSockets in Enterprise Applications
WebSockets in Enterprise Applications
Pavel Bucek
 
IT PRO | Connections 2020 : Introduction to Logic Apps and automation solutio...
IT PRO | Connections 2020 : Introduction to Logic Apps and automation solutio...IT PRO | Connections 2020 : Introduction to Logic Apps and automation solutio...
IT PRO | Connections 2020 : Introduction to Logic Apps and automation solutio...
George Grammatikos
 
[Serverless OpenHack Tokyo] Azure Serverless (English)
[Serverless OpenHack Tokyo] Azure Serverless (English)[Serverless OpenHack Tokyo] Azure Serverless (English)
[Serverless OpenHack Tokyo] Azure Serverless (English)
Naoki (Neo) SATO
 
Apache Tajo - BWC 2014
Apache Tajo - BWC 2014Apache Tajo - BWC 2014
Apache Tajo - BWC 2014
Gruter
 
Escaping Test Hell - ACCU 2014
Escaping Test Hell - ACCU 2014Escaping Test Hell - ACCU 2014
Escaping Test Hell - ACCU 2014
Wojciech Seliga
 
OSGi Enterprise R6 specs are out! - David Bosschaert & Carsten Ziegeler
OSGi Enterprise R6 specs are out! - David Bosschaert & Carsten ZiegelerOSGi Enterprise R6 specs are out! - David Bosschaert & Carsten Ziegeler
OSGi Enterprise R6 specs are out! - David Bosschaert & Carsten Ziegeler
mfrancis
 
Provisioning with Oracle Cloud Stack Manager
Provisioning with Oracle Cloud Stack ManagerProvisioning with Oracle Cloud Stack Manager
Provisioning with Oracle Cloud Stack Manager
Simon Haslam
 
OUGLS 2016: Guided Tour On The MySQL Source Code
OUGLS 2016: Guided Tour On The MySQL Source CodeOUGLS 2016: Guided Tour On The MySQL Source Code
OUGLS 2016: Guided Tour On The MySQL Source Code
Georgi Kodinov
 
Servlet 4.0 Adopt-a-JSR 10 Minute Infodeck
Servlet 4.0 Adopt-a-JSR 10 Minute InfodeckServlet 4.0 Adopt-a-JSR 10 Minute Infodeck
Servlet 4.0 Adopt-a-JSR 10 Minute Infodeck
Edward Burns
 
[Rakuten TechConf2014] [C-5] Ichiba Architecture on ExaLogic
[Rakuten TechConf2014] [C-5] Ichiba Architecture on ExaLogic[Rakuten TechConf2014] [C-5] Ichiba Architecture on ExaLogic
[Rakuten TechConf2014] [C-5] Ichiba Architecture on ExaLogic
Rakuten Group, Inc.
 
Stateful Interaction In Serverless Architecture With Redis: Pyounguk Cho
Stateful Interaction In Serverless Architecture With Redis: Pyounguk ChoStateful Interaction In Serverless Architecture With Redis: Pyounguk Cho
Stateful Interaction In Serverless Architecture With Redis: Pyounguk Cho
Redis Labs
 
Coherence RoadMap 2018
Coherence RoadMap 2018Coherence RoadMap 2018
Coherence RoadMap 2018
harvraja
 
Oracle Database Cloud Service
Oracle Database Cloud ServiceOracle Database Cloud Service
Oracle Database Cloud Service
Jean-Philippe PINTE
 
Enterprise Ready Test Execution Platform for Mobile Apps
Enterprise Ready Test Execution Platform for Mobile AppsEnterprise Ready Test Execution Platform for Mobile Apps
Enterprise Ready Test Execution Platform for Mobile Apps
Vijayan Srinivasan
 
SERVERLESS MIDDLEWARE IN AZURE FUNCTIONS
SERVERLESS MIDDLEWARE IN AZURE FUNCTIONSSERVERLESS MIDDLEWARE IN AZURE FUNCTIONS
SERVERLESS MIDDLEWARE IN AZURE FUNCTIONS
CodeOps Technologies LLP
 

Similar to EclipseCon FR : Ignite talks, OSGi Resolver in action (20)

Cloud Platforms for Java
Cloud Platforms for JavaCloud Platforms for Java
Cloud Platforms for Java
 
BYOP: Custom Processor Development with Apache NiFi
BYOP: Custom Processor Development with Apache NiFiBYOP: Custom Processor Development with Apache NiFi
BYOP: Custom Processor Development with Apache NiFi
 
SAP TechEd 2013 session Tec118 managing your-environment
SAP TechEd 2013 session Tec118 managing your-environmentSAP TechEd 2013 session Tec118 managing your-environment
SAP TechEd 2013 session Tec118 managing your-environment
 
JAX-RS.next
JAX-RS.nextJAX-RS.next
JAX-RS.next
 
Database as a Service, Collaborate 2016
Database as a Service, Collaborate 2016Database as a Service, Collaborate 2016
Database as a Service, Collaborate 2016
 
WebSockets in Enterprise Applications
WebSockets in Enterprise ApplicationsWebSockets in Enterprise Applications
WebSockets in Enterprise Applications
 
IT PRO | Connections 2020 : Introduction to Logic Apps and automation solutio...
IT PRO | Connections 2020 : Introduction to Logic Apps and automation solutio...IT PRO | Connections 2020 : Introduction to Logic Apps and automation solutio...
IT PRO | Connections 2020 : Introduction to Logic Apps and automation solutio...
 
[Serverless OpenHack Tokyo] Azure Serverless (English)
[Serverless OpenHack Tokyo] Azure Serverless (English)[Serverless OpenHack Tokyo] Azure Serverless (English)
[Serverless OpenHack Tokyo] Azure Serverless (English)
 
Apache Tajo - BWC 2014
Apache Tajo - BWC 2014Apache Tajo - BWC 2014
Apache Tajo - BWC 2014
 
Escaping Test Hell - ACCU 2014
Escaping Test Hell - ACCU 2014Escaping Test Hell - ACCU 2014
Escaping Test Hell - ACCU 2014
 
OSGi Enterprise R6 specs are out! - David Bosschaert & Carsten Ziegeler
OSGi Enterprise R6 specs are out! - David Bosschaert & Carsten ZiegelerOSGi Enterprise R6 specs are out! - David Bosschaert & Carsten Ziegeler
OSGi Enterprise R6 specs are out! - David Bosschaert & Carsten Ziegeler
 
Provisioning with Oracle Cloud Stack Manager
Provisioning with Oracle Cloud Stack ManagerProvisioning with Oracle Cloud Stack Manager
Provisioning with Oracle Cloud Stack Manager
 
OUGLS 2016: Guided Tour On The MySQL Source Code
OUGLS 2016: Guided Tour On The MySQL Source CodeOUGLS 2016: Guided Tour On The MySQL Source Code
OUGLS 2016: Guided Tour On The MySQL Source Code
 
Servlet 4.0 Adopt-a-JSR 10 Minute Infodeck
Servlet 4.0 Adopt-a-JSR 10 Minute InfodeckServlet 4.0 Adopt-a-JSR 10 Minute Infodeck
Servlet 4.0 Adopt-a-JSR 10 Minute Infodeck
 
[Rakuten TechConf2014] [C-5] Ichiba Architecture on ExaLogic
[Rakuten TechConf2014] [C-5] Ichiba Architecture on ExaLogic[Rakuten TechConf2014] [C-5] Ichiba Architecture on ExaLogic
[Rakuten TechConf2014] [C-5] Ichiba Architecture on ExaLogic
 
Stateful Interaction In Serverless Architecture With Redis: Pyounguk Cho
Stateful Interaction In Serverless Architecture With Redis: Pyounguk ChoStateful Interaction In Serverless Architecture With Redis: Pyounguk Cho
Stateful Interaction In Serverless Architecture With Redis: Pyounguk Cho
 
Coherence RoadMap 2018
Coherence RoadMap 2018Coherence RoadMap 2018
Coherence RoadMap 2018
 
Oracle Database Cloud Service
Oracle Database Cloud ServiceOracle Database Cloud Service
Oracle Database Cloud Service
 
Enterprise Ready Test Execution Platform for Mobile Apps
Enterprise Ready Test Execution Platform for Mobile AppsEnterprise Ready Test Execution Platform for Mobile Apps
Enterprise Ready Test Execution Platform for Mobile Apps
 
SERVERLESS MIDDLEWARE IN AZURE FUNCTIONS
SERVERLESS MIDDLEWARE IN AZURE FUNCTIONSSERVERLESS MIDDLEWARE IN AZURE FUNCTIONS
SERVERLESS MIDDLEWARE IN AZURE FUNCTIONS
 

More from Guillaume Sauthier

Data Privacy, reprenez le contrôle
Data Privacy, reprenez le contrôleData Privacy, reprenez le contrôle
Data Privacy, reprenez le contrôle
Guillaume Sauthier
 
La Grande Famille OAuth 2.0
La Grande Famille OAuth 2.0La Grande Famille OAuth 2.0
La Grande Famille OAuth 2.0
Guillaume Sauthier
 
Peergreen Platform Overview
Peergreen Platform OverviewPeergreen Platform Overview
Peergreen Platform Overview
Guillaume Sauthier
 
Ow2 Utilities - The Swiss Army Knife Of Ow2 Projects
Ow2 Utilities - The Swiss Army Knife Of Ow2 ProjectsOw2 Utilities - The Swiss Army Knife Of Ow2 Projects
Ow2 Utilities - The Swiss Army Knife Of Ow2 Projects
Guillaume Sauthier
 
Java dans Windows Azure, l'exemple de JOnAS
Java dans Windows Azure, l'exemple de JOnASJava dans Windows Azure, l'exemple de JOnAS
Java dans Windows Azure, l'exemple de JOnAS
Guillaume Sauthier
 
Leverage OSGi in business application with JOnAS
Leverage OSGi in business application with JOnASLeverage OSGi in business application with JOnAS
Leverage OSGi in business application with JOnAS
Guillaume Sauthier
 
JO2nAS Collaboration
JO2nAS CollaborationJO2nAS Collaboration
JO2nAS Collaboration
Guillaume Sauthier
 
OUGF - OSAmI - OSGi Ubiquity
OUGF - OSAmI - OSGi UbiquityOUGF - OSAmI - OSGi Ubiquity
OUGF - OSAmI - OSGi Ubiquity
Guillaume Sauthier
 
OW2 JASMINe
OW2 JASMINeOW2 JASMINe
OW2 JASMINe
Guillaume Sauthier
 
#5 Java EE5 Client Lourd et Smart Client
#5 Java EE5  Client Lourd  et Smart Client#5 Java EE5  Client Lourd  et Smart Client
#5 Java EE5 Client Lourd et Smart Client
Guillaume Sauthier
 
#4 Applications Convergentes JavaEE/OSGi
#4 Applications Convergentes JavaEE/OSGi#4 Applications Convergentes JavaEE/OSGi
#4 Applications Convergentes JavaEE/OSGi
Guillaume Sauthier
 
#7 Migration
#7 Migration#7 Migration
#7 Migration
Guillaume Sauthier
 
#6 Outils De Developpement
#6 Outils De Developpement#6 Outils De Developpement
#6 Outils De Developpement
Guillaume Sauthier
 
#3 Nouveautes Deploiement Demarrage
#3 Nouveautes Deploiement Demarrage#3 Nouveautes Deploiement Demarrage
#3 Nouveautes Deploiement Demarrage
Guillaume Sauthier
 
#0 Accueil
#0 Accueil#0 Accueil
#0 Accueil
Guillaume Sauthier
 
#2 Architecture OSGi
#2 Architecture OSGi#2 Architecture OSGi
#2 Architecture OSGi
Guillaume Sauthier
 
#11 Introduction JASMINe
#11 Introduction JASMINe#11 Introduction JASMINe
#11 Introduction JASMINe
Guillaume Sauthier
 
#8 Tour des Consoles d'Administration
#8 Tour des Consoles d'Administration#8 Tour des Consoles d'Administration
#8 Tour des Consoles d'Administration
Guillaume Sauthier
 
#9 Deploiement Complexe
#9 Deploiement Complexe#9 Deploiement Complexe
#9 Deploiement Complexe
Guillaume Sauthier
 
#1 Introduction
#1 Introduction#1 Introduction
#1 Introduction
Guillaume Sauthier
 

More from Guillaume Sauthier (20)

Data Privacy, reprenez le contrôle
Data Privacy, reprenez le contrôleData Privacy, reprenez le contrôle
Data Privacy, reprenez le contrôle
 
La Grande Famille OAuth 2.0
La Grande Famille OAuth 2.0La Grande Famille OAuth 2.0
La Grande Famille OAuth 2.0
 
Peergreen Platform Overview
Peergreen Platform OverviewPeergreen Platform Overview
Peergreen Platform Overview
 
Ow2 Utilities - The Swiss Army Knife Of Ow2 Projects
Ow2 Utilities - The Swiss Army Knife Of Ow2 ProjectsOw2 Utilities - The Swiss Army Knife Of Ow2 Projects
Ow2 Utilities - The Swiss Army Knife Of Ow2 Projects
 
Java dans Windows Azure, l'exemple de JOnAS
Java dans Windows Azure, l'exemple de JOnASJava dans Windows Azure, l'exemple de JOnAS
Java dans Windows Azure, l'exemple de JOnAS
 
Leverage OSGi in business application with JOnAS
Leverage OSGi in business application with JOnASLeverage OSGi in business application with JOnAS
Leverage OSGi in business application with JOnAS
 
JO2nAS Collaboration
JO2nAS CollaborationJO2nAS Collaboration
JO2nAS Collaboration
 
OUGF - OSAmI - OSGi Ubiquity
OUGF - OSAmI - OSGi UbiquityOUGF - OSAmI - OSGi Ubiquity
OUGF - OSAmI - OSGi Ubiquity
 
OW2 JASMINe
OW2 JASMINeOW2 JASMINe
OW2 JASMINe
 
#5 Java EE5 Client Lourd et Smart Client
#5 Java EE5  Client Lourd  et Smart Client#5 Java EE5  Client Lourd  et Smart Client
#5 Java EE5 Client Lourd et Smart Client
 
#4 Applications Convergentes JavaEE/OSGi
#4 Applications Convergentes JavaEE/OSGi#4 Applications Convergentes JavaEE/OSGi
#4 Applications Convergentes JavaEE/OSGi
 
#7 Migration
#7 Migration#7 Migration
#7 Migration
 
#6 Outils De Developpement
#6 Outils De Developpement#6 Outils De Developpement
#6 Outils De Developpement
 
#3 Nouveautes Deploiement Demarrage
#3 Nouveautes Deploiement Demarrage#3 Nouveautes Deploiement Demarrage
#3 Nouveautes Deploiement Demarrage
 
#0 Accueil
#0 Accueil#0 Accueil
#0 Accueil
 
#2 Architecture OSGi
#2 Architecture OSGi#2 Architecture OSGi
#2 Architecture OSGi
 
#11 Introduction JASMINe
#11 Introduction JASMINe#11 Introduction JASMINe
#11 Introduction JASMINe
 
#8 Tour des Consoles d'Administration
#8 Tour des Consoles d'Administration#8 Tour des Consoles d'Administration
#8 Tour des Consoles d'Administration
 
#9 Deploiement Complexe
#9 Deploiement Complexe#9 Deploiement Complexe
#9 Deploiement Complexe
 
#1 Introduction
#1 Introduction#1 Introduction
#1 Introduction
 

Recently uploaded

Mariano G Tinti - Decoding SpaceX
Mariano G Tinti - Decoding SpaceXMariano G Tinti - Decoding SpaceX
Mariano G Tinti - Decoding SpaceX
Mariano Tinti
 
TrustArc Webinar - 2024 Global Privacy Survey
TrustArc Webinar - 2024 Global Privacy SurveyTrustArc Webinar - 2024 Global Privacy Survey
TrustArc Webinar - 2024 Global Privacy Survey
TrustArc
 
Recommendation System using RAG Architecture
Recommendation System using RAG ArchitectureRecommendation System using RAG Architecture
Recommendation System using RAG Architecture
fredae14
 
Driving Business Innovation: Latest Generative AI Advancements & Success Story
Driving Business Innovation: Latest Generative AI Advancements & Success StoryDriving Business Innovation: Latest Generative AI Advancements & Success Story
Driving Business Innovation: Latest Generative AI Advancements & Success Story
Safe Software
 
Taking AI to the Next Level in Manufacturing.pdf
Taking AI to the Next Level in Manufacturing.pdfTaking AI to the Next Level in Manufacturing.pdf
Taking AI to the Next Level in Manufacturing.pdf
ssuserfac0301
 
Best 20 SEO Techniques To Improve Website Visibility In SERP
Best 20 SEO Techniques To Improve Website Visibility In SERPBest 20 SEO Techniques To Improve Website Visibility In SERP
Best 20 SEO Techniques To Improve Website Visibility In SERP
Pixlogix Infotech
 
Main news related to the CCS TSI 2023 (2023/1695)
Main news related to the CCS TSI 2023 (2023/1695)Main news related to the CCS TSI 2023 (2023/1695)
Main news related to the CCS TSI 2023 (2023/1695)
Jakub Marek
 
Introduction of Cybersecurity with OSS at Code Europe 2024
Introduction of Cybersecurity with OSS  at Code Europe 2024Introduction of Cybersecurity with OSS  at Code Europe 2024
Introduction of Cybersecurity with OSS at Code Europe 2024
Hiroshi SHIBATA
 
5th LF Energy Power Grid Model Meet-up Slides
5th LF Energy Power Grid Model Meet-up Slides5th LF Energy Power Grid Model Meet-up Slides
5th LF Energy Power Grid Model Meet-up Slides
DanBrown980551
 
Serial Arm Control in Real Time Presentation
Serial Arm Control in Real Time PresentationSerial Arm Control in Real Time Presentation
Serial Arm Control in Real Time Presentation
tolgahangng
 
National Security Agency - NSA mobile device best practices
National Security Agency - NSA mobile device best practicesNational Security Agency - NSA mobile device best practices
National Security Agency - NSA mobile device best practices
Quotidiano Piemontese
 
Energy Efficient Video Encoding for Cloud and Edge Computing Instances
Energy Efficient Video Encoding for Cloud and Edge Computing InstancesEnergy Efficient Video Encoding for Cloud and Edge Computing Instances
Energy Efficient Video Encoding for Cloud and Edge Computing Instances
Alpen-Adria-Universität
 
Webinar: Designing a schema for a Data Warehouse
Webinar: Designing a schema for a Data WarehouseWebinar: Designing a schema for a Data Warehouse
Webinar: Designing a schema for a Data Warehouse
Federico Razzoli
 
HCL Notes and Domino License Cost Reduction in the World of DLAU
HCL Notes and Domino License Cost Reduction in the World of DLAUHCL Notes and Domino License Cost Reduction in the World of DLAU
HCL Notes and Domino License Cost Reduction in the World of DLAU
panagenda
 
Presentation of the OECD Artificial Intelligence Review of Germany
Presentation of the OECD Artificial Intelligence Review of GermanyPresentation of the OECD Artificial Intelligence Review of Germany
Presentation of the OECD Artificial Intelligence Review of Germany
innovationoecd
 
Fueling AI with Great Data with Airbyte Webinar
Fueling AI with Great Data with Airbyte WebinarFueling AI with Great Data with Airbyte Webinar
Fueling AI with Great Data with Airbyte Webinar
Zilliz
 
Nordic Marketo Engage User Group_June 13_ 2024.pptx
Nordic Marketo Engage User Group_June 13_ 2024.pptxNordic Marketo Engage User Group_June 13_ 2024.pptx
Nordic Marketo Engage User Group_June 13_ 2024.pptx
MichaelKnudsen27
 
GraphRAG for Life Science to increase LLM accuracy
GraphRAG for Life Science to increase LLM accuracyGraphRAG for Life Science to increase LLM accuracy
GraphRAG for Life Science to increase LLM accuracy
Tomaz Bratanic
 
WeTestAthens: Postman's AI & Automation Techniques
WeTestAthens: Postman's AI & Automation TechniquesWeTestAthens: Postman's AI & Automation Techniques
WeTestAthens: Postman's AI & Automation Techniques
Postman
 
Programming Foundation Models with DSPy - Meetup Slides
Programming Foundation Models with DSPy - Meetup SlidesProgramming Foundation Models with DSPy - Meetup Slides
Programming Foundation Models with DSPy - Meetup Slides
Zilliz
 

Recently uploaded (20)

Mariano G Tinti - Decoding SpaceX
Mariano G Tinti - Decoding SpaceXMariano G Tinti - Decoding SpaceX
Mariano G Tinti - Decoding SpaceX
 
TrustArc Webinar - 2024 Global Privacy Survey
TrustArc Webinar - 2024 Global Privacy SurveyTrustArc Webinar - 2024 Global Privacy Survey
TrustArc Webinar - 2024 Global Privacy Survey
 
Recommendation System using RAG Architecture
Recommendation System using RAG ArchitectureRecommendation System using RAG Architecture
Recommendation System using RAG Architecture
 
Driving Business Innovation: Latest Generative AI Advancements & Success Story
Driving Business Innovation: Latest Generative AI Advancements & Success StoryDriving Business Innovation: Latest Generative AI Advancements & Success Story
Driving Business Innovation: Latest Generative AI Advancements & Success Story
 
Taking AI to the Next Level in Manufacturing.pdf
Taking AI to the Next Level in Manufacturing.pdfTaking AI to the Next Level in Manufacturing.pdf
Taking AI to the Next Level in Manufacturing.pdf
 
Best 20 SEO Techniques To Improve Website Visibility In SERP
Best 20 SEO Techniques To Improve Website Visibility In SERPBest 20 SEO Techniques To Improve Website Visibility In SERP
Best 20 SEO Techniques To Improve Website Visibility In SERP
 
Main news related to the CCS TSI 2023 (2023/1695)
Main news related to the CCS TSI 2023 (2023/1695)Main news related to the CCS TSI 2023 (2023/1695)
Main news related to the CCS TSI 2023 (2023/1695)
 
Introduction of Cybersecurity with OSS at Code Europe 2024
Introduction of Cybersecurity with OSS  at Code Europe 2024Introduction of Cybersecurity with OSS  at Code Europe 2024
Introduction of Cybersecurity with OSS at Code Europe 2024
 
5th LF Energy Power Grid Model Meet-up Slides
5th LF Energy Power Grid Model Meet-up Slides5th LF Energy Power Grid Model Meet-up Slides
5th LF Energy Power Grid Model Meet-up Slides
 
Serial Arm Control in Real Time Presentation
Serial Arm Control in Real Time PresentationSerial Arm Control in Real Time Presentation
Serial Arm Control in Real Time Presentation
 
National Security Agency - NSA mobile device best practices
National Security Agency - NSA mobile device best practicesNational Security Agency - NSA mobile device best practices
National Security Agency - NSA mobile device best practices
 
Energy Efficient Video Encoding for Cloud and Edge Computing Instances
Energy Efficient Video Encoding for Cloud and Edge Computing InstancesEnergy Efficient Video Encoding for Cloud and Edge Computing Instances
Energy Efficient Video Encoding for Cloud and Edge Computing Instances
 
Webinar: Designing a schema for a Data Warehouse
Webinar: Designing a schema for a Data WarehouseWebinar: Designing a schema for a Data Warehouse
Webinar: Designing a schema for a Data Warehouse
 
HCL Notes and Domino License Cost Reduction in the World of DLAU
HCL Notes and Domino License Cost Reduction in the World of DLAUHCL Notes and Domino License Cost Reduction in the World of DLAU
HCL Notes and Domino License Cost Reduction in the World of DLAU
 
Presentation of the OECD Artificial Intelligence Review of Germany
Presentation of the OECD Artificial Intelligence Review of GermanyPresentation of the OECD Artificial Intelligence Review of Germany
Presentation of the OECD Artificial Intelligence Review of Germany
 
Fueling AI with Great Data with Airbyte Webinar
Fueling AI with Great Data with Airbyte WebinarFueling AI with Great Data with Airbyte Webinar
Fueling AI with Great Data with Airbyte Webinar
 
Nordic Marketo Engage User Group_June 13_ 2024.pptx
Nordic Marketo Engage User Group_June 13_ 2024.pptxNordic Marketo Engage User Group_June 13_ 2024.pptx
Nordic Marketo Engage User Group_June 13_ 2024.pptx
 
GraphRAG for Life Science to increase LLM accuracy
GraphRAG for Life Science to increase LLM accuracyGraphRAG for Life Science to increase LLM accuracy
GraphRAG for Life Science to increase LLM accuracy
 
WeTestAthens: Postman's AI & Automation Techniques
WeTestAthens: Postman's AI & Automation TechniquesWeTestAthens: Postman's AI & Automation Techniques
WeTestAthens: Postman's AI & Automation Techniques
 
Programming Foundation Models with DSPy - Meetup Slides
Programming Foundation Models with DSPy - Meetup SlidesProgramming Foundation Models with DSPy - Meetup Slides
Programming Foundation Models with DSPy - Meetup Slides
 

EclipseCon FR : Ignite talks, OSGi Resolver in action

  • 1. OSGiTM Resolver in action Peergreen Deployment System Guillaume.sauthier@peergreen.com @sauthieg
  • 2. © 2013 Peergreen, Confidential & Proprietary 285 seconds left What do we do in Peergreen? I’ll talk about …
  • 3. © 2013 Peergreen, Confidential & Proprietary 270 seconds left We need (for deployment at least …) Efficiency (multi-core architectures) Heterogeneity (different kind of artifacts) Ease of use
  • 4. © 2013 Peergreen, Confidential & Proprietary 255 seconds left Specification: OSGi Resolver 1.0 • Part of OSGi Enterprise R5 • Build relationships • Implemented in Apache Felix Requirement “I want …” Capability “I offer …”Resolver Namespace + LDAP filter Namespace + attributes
  • 5. © 2013 Peergreen, Confidential & Proprietary 240 seconds left Resolver production • Wire(s) (satisfied requirements) • Or Exception (unsatisfied requirements) Requirement CapabilityWire Need Interpretation (use resources, make decisions, …)
  • 6. © 2013 Peergreen, Confidential & Proprietary 225 seconds left Peergreen Deployment System Goals Efficient (multi-threading) Resource Neutral Plug-able architecture Artifact Model
  • 7. © 2013 Peergreen, Confidential & Proprietary 210 seconds left Artifacts Name + URI (File, Directory, Maven, …) Resolver Resource (provides capabilities)
  • 8. © 2013 Peergreen, Confidential & Proprietary 195 seconds left Facets Specialized View Artifact Decoration (Webapp, Bundle, Configadmin, …) Dictates Lifecycle (phase sequence) Express Capability (when installed)
  • 9. © 2013 Peergreen, Confidential & Proprietary 180 seconds left Phases Execution Controller Logical Steps (read-xml, install, start, stop, …) Resolver Client (find compatible processors) Pipeline / Parallel (execution)
  • 10. © 2013 Peergreen, Confidential & Proprietary 165 seconds left Processors Unit of Work Chained Together (Transformer, Facet producer, …) Resolver Resource (requirements, capabilities)
  • 11. © 2013 Peergreen, Confidential & Proprietary 150 seconds left High level view Discovery Phase • Download • Scan • Find dependencies Execution Phase • Facet’s lifecycle • Concurrency
  • 12. © 2013 Peergreen, Confidential & Proprietary 135 seconds left @bundle Execution phase Concurrent Execution (per facet lifecycle) Multiple Artifacts (sharing same lifecycle) Facet Decoration (on the fly)start install @webapp start configure read-xml
  • 13. © 2013 Peergreen, Confidential & Proprietary 120 seconds left Processor Resolution Per Phase Resolving bound processor’s requirements against artifact’s capabilities Satisfied processors are executed
  • 14. © 2013 Peergreen, Confidential & Proprietary 1 23 105 seconds left Interpretation Missing Capabilities (unsatisfied processors) B A DC E ? Requires Sorting & Filtering (linearize graph) E C B
  • 15. © 2013 Peergreen, Confidential & Proprietary 90 seconds left Extensibility OSGi Services Facet addition Facet Lifecycle (phases definition) New Processors
  • 16. © 2013 Peergreen, Confidential & Proprietary 75 seconds leftExample
  • 17. © 2013 Peergreen, Confidential & Proprietary 60 seconds left Model Query-able Useful for Reporting Introspection capabilities (facets, processors, execution times) Store relations (transformations, creations, dependencies)
  • 18. © 2013 Peergreen, Confidential & Proprietary 45 seconds left plan plan web ejbjar mvn bundle Artifact Tree Report Meta-information (root, report, …)
  • 19. © 2013 Peergreen, Confidential & Proprietary 30 seconds left Benefits Extensibility (new requirements and capabilities) Dynamism (processors, facet and phases) Ease of Use (extension development, deployment reporting) Efficiency (maximize concurrency)
  • 20. © 2013 Peergreen, Confidential & Proprietary 15 seconds left Thanks Follow Us (@peergreeninfo) Get your copy (M1 is there, M2 soon) www.peergreen.com