SlideShare a Scribd company logo
1 of 33
All About Virgo
Christopher Frost – Virgo Committer
Martin Lippert – Lead, Spring Development Tools
SpringSource, a division of VMware
3rd November 2011
OSGi Alliance Marketing © 2008-2010 .
All Rights Reserved
Page 1
Page 2
First
Hands up if you have used Virgo before?
Page 3
Agenda
• Back to basics, Virgo Catch up
• What's new
• Tooling
• Snaps
• Regions
• The Future
Page 4
Virgo – Catch up
To be the best OSGi runtime environment we can be
●
OSGi as the programming model
●
Standards compliant
●
Simplifies the managing Enterprise OSGi
●
Simplifies the use of existing containers
Page 5
Virgo – Catch up
Page 6
Virgo 3.0 – What's new
• Regions have replaced Nested Frameworks
• New Shell based on Apache GoGo
• Spring 3.0.5.RELEASE & Equinox Indigo
• Declarative Service & Log Service support
Page 7
Virgo 3.0 – Regions
Page 8
Virgo 3.0 – Demo
The GoGo Shell & Regions
For more about GoGo see Fridays Talk
“Next Generation Equinox Shell”
Page 9
Virgo 3.0 – What's new
• Servlet 3.0 with Tomcat 7.x
• Gemini.Web, strict compliance to OSGi web container
spec
• Jetty version (based on 7.x)
• Updated sample application, Greenpages
• Lots of Bugfixes etc...
Page 10
Tooling - History
dm Server Tooling
becomes
Virgo IDE
Page 11
Tooling
• Bundle and PAR projects
• Including Bundlor
• PDE-like editors
• Server integration
• Launching
• Deployment
• Introspection
• EBR – Enterprise Bundle Repository
Page 12
Tooling – Demo
Virgo IDE
Page 13
Virgo 3.0 – What's new
Snaps gets its first release
• Some features tidied up
• Documentation written
• Single sample app showing everything Snaps can do
• All available in a Zip from the Virgo website
Page 14
Snaps – Basics
• Lots of Snaps (Web Application Bundles)
• Snaps have the hosts ServletContext
• Uses a filter to dispatch requests from the host
• Everything else is business as normal
Page 15
Snaps – Nested Context Paths
/app/orders /app/billing
Page 16
Snaps – A filter for Snaps
• Still just web.xml
• Define the subpath for Snaps with a filter
Page 17
Snaps – Manifest
• Attaching Snaps to hosts
Page 18
Snaps – Taglibs
• JSP tag to look up slices & their properties
Page 19
Snaps – Host Properties
• Looking up resources & properties from the host
Page 20
Virgo 3.0 – Demo
Snaps
Page 21
Regions – Background
Bundle ≠ Application
●
Need higher level scoping construct than a bundle
●
Simpler management applications
Page 22
Regions – Scoping in Virgo
●
Region scoping - Kernel Space vs User Space
●
Application scoping
●
PARs and scoped Plans
●
Metadata rewriting for bundle/package scoping
●
Service registry hooks for service scoping
Page 23
Regions & Hook Usability
• Control the visibility of bundles, packages, generic
capabilities
• Bundle Resolver, Find and Event hooks
• Service Find and Event hooks
• Hard to ensure consistent behaviour across hooks
• Need higher level abstraction
• Enter..... Region digraph
Page 24
Regions – Region Digraph
• A directed graph of "regions"
• A region is a group of bundles
• Regions may be connected by directed arcs
• Each directed arc has a filter which controls visibility:
• bundles
• packages
• services
• generic capabilities
Page 25
Regions – Region Digraph
Page 26
Regions – Region Digraph
Page 27
Regions – Region Digraph (cont.)
• Developed as part of Virgo
• Formal model specified in Z
• Seen to be useful outside Virgo
• Moved to Equinox
• Used in Virgo 3.0
• Used in Apache Aries
Page 28
Regions & Subsystems
• OSGi standard multi-bundle scoping mechanism
• Work in progress, public draft soon
• Inspired by
Virgo regions & scopes, Apache Aries applications,
Apache Felix Karaf features, Eclipse features,
Deployment Admin deployment packages etc...
• Virgo to implement subsystems in a future release
Page 29
Regions & Subsystems
For more information
Go to the talk later today on
“Multi-bundle Scoping in OSGi”
For even more
see Subsystems RFC 152
Page 30
Virgo Future
• Web Admin Console (Demo at the BoF later)
• Nano Virgo based around P2
• Subsystems
• Snaps, Nesting & Listener Support
• Cloud
Come to the BoF, tonight at 18:30 ...
Page 31
Virgo Future -Tooling
Libra:
• Tooling for Enterprise OSGi
• Spec compatible only
Virgo IDE:
• Tooling for Virgo
• Not spec compatible (there is no spec)
• Very much specialized
Page 32
Virgo Future - Tooling
Move spec-compatible parts to Libra
• Launcher, server visualization, Bundlor, …
Let Virgo consume and enhance Libra
• With Virgo-specific parts, like PAR projects, EBR integration, …
Enhance modularization
• Separate build tools (Bundlor, bndtools, PDE) from server integration
Remove Spring IDE dependencies
Improve performance/footprint
Page 33
Questions
Martin Lippert
mlippert@vmware.com
@martinlippert
QuestionsQuestions
Christopher Frost
frostc@vmware.com
@cgfrost

More Related Content

What's hot

Making Wallstreet talk with GO (GO India Conference 2015)
Making Wallstreet talk with GO (GO India Conference 2015)Making Wallstreet talk with GO (GO India Conference 2015)
Making Wallstreet talk with GO (GO India Conference 2015)Matthew Campbell
 
Lean Microservices with OSGi - Christian Schneider
Lean Microservices with OSGi - Christian SchneiderLean Microservices with OSGi - Christian Schneider
Lean Microservices with OSGi - Christian Schneidermfrancis
 
CloudStack EU User Group - Making stuff better through CloudStack
CloudStack EU User Group - Making stuff better through CloudStackCloudStack EU User Group - Making stuff better through CloudStack
CloudStack EU User Group - Making stuff better through CloudStackShapeBlue
 
Policy driven SDN in CloudStack
Policy driven SDN in CloudStack Policy driven SDN in CloudStack
Policy driven SDN in CloudStack ShapeBlue
 
Kubernetes User Group: 維運 Kubernetes 的兩三事
Kubernetes User Group: 維運 Kubernetes 的兩三事Kubernetes User Group: 維運 Kubernetes 的兩三事
Kubernetes User Group: 維運 Kubernetes 的兩三事smalltown
 
Telia latvija cloudstack
Telia latvija cloudstackTelia latvija cloudstack
Telia latvija cloudstackShapeBlue
 
TechTalk - Building Serverless Applications with IBM Bluemix
TechTalk - Building Serverless Applications with IBM BluemixTechTalk - Building Serverless Applications with IBM Bluemix
TechTalk - Building Serverless Applications with IBM BluemixJanakiram MSV
 
Fast SAP system provisioning based on CloudStack
Fast SAP system provisioning based on CloudStack Fast SAP system provisioning based on CloudStack
Fast SAP system provisioning based on CloudStack ShapeBlue
 
It's a Serverless World
It's a Serverless WorldIt's a Serverless World
It's a Serverless WorldEran Stiller
 
Magento Cloud - Introduction
Magento Cloud - IntroductionMagento Cloud - Introduction
Magento Cloud - IntroductionOleg Posyniak
 
Luigi Hostplumber intro slide.pptx (1).pdf
Luigi Hostplumber intro slide.pptx (1).pdfLuigi Hostplumber intro slide.pptx (1).pdf
Luigi Hostplumber intro slide.pptx (1).pdfLibbySchulze
 
TechTalk Webinar Series - Getting Started with Apache OpenWhisk
TechTalk Webinar Series - Getting Started with Apache OpenWhiskTechTalk Webinar Series - Getting Started with Apache OpenWhisk
TechTalk Webinar Series - Getting Started with Apache OpenWhiskJanakiram MSV
 
NGINX Microservices Reference Architecture: Ask Me Anything
NGINX Microservices Reference Architecture: Ask Me AnythingNGINX Microservices Reference Architecture: Ask Me Anything
NGINX Microservices Reference Architecture: Ask Me AnythingNGINX, Inc.
 
From PHP monolith to polyglot microservices
From PHP monolith to polyglot microservicesFrom PHP monolith to polyglot microservices
From PHP monolith to polyglot microservicesKazki Matsumoto
 
Using an API Gateway for Microservices
Using an API Gateway for MicroservicesUsing an API Gateway for Microservices
Using an API Gateway for MicroservicesNGINX, Inc.
 
Dynamic routing in microservice oriented architecture
Dynamic routing in microservice oriented architectureDynamic routing in microservice oriented architecture
Dynamic routing in microservice oriented architectureDaniel Leon
 
Disaster Recovery in GIS: FME Cloud Server Saves the Day
Disaster Recovery in GIS: FME Cloud Server Saves the DayDisaster Recovery in GIS: FME Cloud Server Saves the Day
Disaster Recovery in GIS: FME Cloud Server Saves the DaySafe Software
 
[GID Live] Open-Source Cloud-Native Programming Language
[GID Live] Open-Source Cloud-Native Programming Language[GID Live] Open-Source Cloud-Native Programming Language
[GID Live] Open-Source Cloud-Native Programming LanguageBallerinalang
 

What's hot (19)

Making Wallstreet talk with GO (GO India Conference 2015)
Making Wallstreet talk with GO (GO India Conference 2015)Making Wallstreet talk with GO (GO India Conference 2015)
Making Wallstreet talk with GO (GO India Conference 2015)
 
Lean Microservices with OSGi - Christian Schneider
Lean Microservices with OSGi - Christian SchneiderLean Microservices with OSGi - Christian Schneider
Lean Microservices with OSGi - Christian Schneider
 
CloudStack EU User Group - Making stuff better through CloudStack
CloudStack EU User Group - Making stuff better through CloudStackCloudStack EU User Group - Making stuff better through CloudStack
CloudStack EU User Group - Making stuff better through CloudStack
 
Policy driven SDN in CloudStack
Policy driven SDN in CloudStack Policy driven SDN in CloudStack
Policy driven SDN in CloudStack
 
Kubernetes User Group: 維運 Kubernetes 的兩三事
Kubernetes User Group: 維運 Kubernetes 的兩三事Kubernetes User Group: 維運 Kubernetes 的兩三事
Kubernetes User Group: 維運 Kubernetes 的兩三事
 
Telia latvija cloudstack
Telia latvija cloudstackTelia latvija cloudstack
Telia latvija cloudstack
 
TechTalk - Building Serverless Applications with IBM Bluemix
TechTalk - Building Serverless Applications with IBM BluemixTechTalk - Building Serverless Applications with IBM Bluemix
TechTalk - Building Serverless Applications with IBM Bluemix
 
Fast SAP system provisioning based on CloudStack
Fast SAP system provisioning based on CloudStack Fast SAP system provisioning based on CloudStack
Fast SAP system provisioning based on CloudStack
 
It's a Serverless World
It's a Serverless WorldIt's a Serverless World
It's a Serverless World
 
Magento Cloud - Introduction
Magento Cloud - IntroductionMagento Cloud - Introduction
Magento Cloud - Introduction
 
Luigi Hostplumber intro slide.pptx (1).pdf
Luigi Hostplumber intro slide.pptx (1).pdfLuigi Hostplumber intro slide.pptx (1).pdf
Luigi Hostplumber intro slide.pptx (1).pdf
 
TechTalk Webinar Series - Getting Started with Apache OpenWhisk
TechTalk Webinar Series - Getting Started with Apache OpenWhiskTechTalk Webinar Series - Getting Started with Apache OpenWhisk
TechTalk Webinar Series - Getting Started with Apache OpenWhisk
 
NGINX Microservices Reference Architecture: Ask Me Anything
NGINX Microservices Reference Architecture: Ask Me AnythingNGINX Microservices Reference Architecture: Ask Me Anything
NGINX Microservices Reference Architecture: Ask Me Anything
 
From PHP monolith to polyglot microservices
From PHP monolith to polyglot microservicesFrom PHP monolith to polyglot microservices
From PHP monolith to polyglot microservices
 
Cloud in your Cloud
Cloud in your CloudCloud in your Cloud
Cloud in your Cloud
 
Using an API Gateway for Microservices
Using an API Gateway for MicroservicesUsing an API Gateway for Microservices
Using an API Gateway for Microservices
 
Dynamic routing in microservice oriented architecture
Dynamic routing in microservice oriented architectureDynamic routing in microservice oriented architecture
Dynamic routing in microservice oriented architecture
 
Disaster Recovery in GIS: FME Cloud Server Saves the Day
Disaster Recovery in GIS: FME Cloud Server Saves the DayDisaster Recovery in GIS: FME Cloud Server Saves the Day
Disaster Recovery in GIS: FME Cloud Server Saves the Day
 
[GID Live] Open-Source Cloud-Native Programming Language
[GID Live] Open-Source Cloud-Native Programming Language[GID Live] Open-Source Cloud-Native Programming Language
[GID Live] Open-Source Cloud-Native Programming Language
 

Viewers also liked

Unit ! post assessment(1)
Unit ! post assessment(1)Unit ! post assessment(1)
Unit ! post assessment(1)LM9
 
투이컨설팅 제11회 Y세미나 : 설문결과
투이컨설팅 제11회 Y세미나 : 설문결과투이컨설팅 제11회 Y세미나 : 설문결과
투이컨설팅 제11회 Y세미나 : 설문결과2econsulting
 
国際分科会中間報告
国際分科会中間報告国際分科会中間報告
国際分科会中間報告SonyShimmei
 
Curiosities1
Curiosities1Curiosities1
Curiosities1kentexas
 
V2 digital collaboration
V2 digital collaborationV2 digital collaboration
V2 digital collaborationMary Jo Davis
 
CETS 2012, Susan Fisher, slides for Mobile Decisions: Ensuring the Solution M...
CETS 2012, Susan Fisher, slides for Mobile Decisions: Ensuring the Solution M...CETS 2012, Susan Fisher, slides for Mobile Decisions: Ensuring the Solution M...
CETS 2012, Susan Fisher, slides for Mobile Decisions: Ensuring the Solution M...Chicago eLearning & Technology Showcase
 
CETS 2012, Christine O'Malley, slides for Using Variables in Lectora to Colle...
CETS 2012, Christine O'Malley, slides for Using Variables in Lectora to Colle...CETS 2012, Christine O'Malley, slides for Using Variables in Lectora to Colle...
CETS 2012, Christine O'Malley, slides for Using Variables in Lectora to Colle...Chicago eLearning & Technology Showcase
 

Viewers also liked (20)

Rudens
RudensRudens
Rudens
 
Bgt5
Bgt5Bgt5
Bgt5
 
Bob brown
Bob brownBob brown
Bob brown
 
Kre8tif XML 2010
Kre8tif XML 2010Kre8tif XML 2010
Kre8tif XML 2010
 
Pavasaris
PavasarisPavasaris
Pavasaris
 
Unit ! post assessment(1)
Unit ! post assessment(1)Unit ! post assessment(1)
Unit ! post assessment(1)
 
Pharma
PharmaPharma
Pharma
 
투이컨설팅 제11회 Y세미나 : 설문결과
투이컨설팅 제11회 Y세미나 : 설문결과투이컨설팅 제11회 Y세미나 : 설문결과
투이컨설팅 제11회 Y세미나 : 설문결과
 
Malaysia Freight Logistics: The Way Forward
Malaysia Freight Logistics: The Way ForwardMalaysia Freight Logistics: The Way Forward
Malaysia Freight Logistics: The Way Forward
 
CETS 2010, Steve Lowenthal, How Companies Are Making the Most of Moodle
CETS 2010, Steve Lowenthal, How Companies Are Making the Most of MoodleCETS 2010, Steve Lowenthal, How Companies Are Making the Most of Moodle
CETS 2010, Steve Lowenthal, How Companies Are Making the Most of Moodle
 
RULES OF THE ROAD-RAM
RULES  OF THE ROAD-RAMRULES  OF THE ROAD-RAM
RULES OF THE ROAD-RAM
 
国際分科会中間報告
国際分科会中間報告国際分科会中間報告
国際分科会中間報告
 
MARKETING PARA INMOBILIARIAS
MARKETING PARA INMOBILIARIASMARKETING PARA INMOBILIARIAS
MARKETING PARA INMOBILIARIAS
 
Curiosities1
Curiosities1Curiosities1
Curiosities1
 
V2 digital collaboration
V2 digital collaborationV2 digital collaboration
V2 digital collaboration
 
Qinetics case study
Qinetics case studyQinetics case study
Qinetics case study
 
Unit 7 lesson d
Unit 7  lesson dUnit 7  lesson d
Unit 7 lesson d
 
Words
WordsWords
Words
 
CETS 2012, Susan Fisher, slides for Mobile Decisions: Ensuring the Solution M...
CETS 2012, Susan Fisher, slides for Mobile Decisions: Ensuring the Solution M...CETS 2012, Susan Fisher, slides for Mobile Decisions: Ensuring the Solution M...
CETS 2012, Susan Fisher, slides for Mobile Decisions: Ensuring the Solution M...
 
CETS 2012, Christine O'Malley, slides for Using Variables in Lectora to Colle...
CETS 2012, Christine O'Malley, slides for Using Variables in Lectora to Colle...CETS 2012, Christine O'Malley, slides for Using Variables in Lectora to Colle...
CETS 2012, Christine O'Malley, slides for Using Variables in Lectora to Colle...
 

Similar to EclipseCon Europe 2011 Virgo 3.0

Twelve-Factor application pattern with Spring Framework
Twelve-Factor application pattern with Spring FrameworkTwelve-Factor application pattern with Spring Framework
Twelve-Factor application pattern with Spring Frameworkdinkar thakur
 
HTML5 Apps on AGL Platform with the Web Application Manager (Automotive Grade...
HTML5 Apps on AGL Platform with the Web Application Manager (Automotive Grade...HTML5 Apps on AGL Platform with the Web Application Manager (Automotive Grade...
HTML5 Apps on AGL Platform with the Web Application Manager (Automotive Grade...Igalia
 
Google App Engine Java, Groovy and Gaelyk
Google App Engine Java, Groovy and GaelykGoogle App Engine Java, Groovy and Gaelyk
Google App Engine Java, Groovy and GaelykGuillaume Laforge
 
SAP Inside Track Singapore 2014
SAP Inside Track Singapore 2014SAP Inside Track Singapore 2014
SAP Inside Track Singapore 2014mharkus
 
Openshift serverless Solution
Openshift serverless SolutionOpenshift serverless Solution
Openshift serverless SolutionRyan ZhangCheng
 
Cloud Native Camel Design Patterns
Cloud Native Camel Design PatternsCloud Native Camel Design Patterns
Cloud Native Camel Design PatternsBilgin Ibryam
 
Kubernetes vs dockers swarm supporting onap oom on multi-cloud multi-stack en...
Kubernetes vs dockers swarm supporting onap oom on multi-cloud multi-stack en...Kubernetes vs dockers swarm supporting onap oom on multi-cloud multi-stack en...
Kubernetes vs dockers swarm supporting onap oom on multi-cloud multi-stack en...Arthur Berezin
 
Surviving a Plane Crash, a NU.nl case-study
Surviving a Plane Crash, a NU.nl case-studySurviving a Plane Crash, a NU.nl case-study
Surviving a Plane Crash, a NU.nl case-studypeter_ibuildings
 
Automating OpenStack Deployment with Fuel
Automating OpenStack Deployment with FuelAutomating OpenStack Deployment with Fuel
Automating OpenStack Deployment with FuelTomasz Zen Napierala
 
Mysql ecosystem in 2019
Mysql ecosystem in 2019Mysql ecosystem in 2019
Mysql ecosystem in 2019Alkin Tezuysal
 
Knative from an Enterprise Perspective
Knative from an Enterprise PerspectiveKnative from an Enterprise Perspective
Knative from an Enterprise PerspectiveQAware GmbH
 
Portal / BI 2008 Presentation by Ted Tschopp
Portal / BI 2008 Presentation by Ted TschoppPortal / BI 2008 Presentation by Ted Tschopp
Portal / BI 2008 Presentation by Ted TschoppTed Tschopp
 
Stay productive while slicing up the monolith
Stay productive while slicing up the monolith Stay productive while slicing up the monolith
Stay productive while slicing up the monolith Markus Eisele
 
Monitor OpenStack Environments from the bottom up and front to back
Monitor OpenStack Environments from the bottom up and front to backMonitor OpenStack Environments from the bottom up and front to back
Monitor OpenStack Environments from the bottom up and front to backIcinga
 
LINE's Private Cloud - Meet Cloud Native World
LINE's Private Cloud - Meet Cloud Native WorldLINE's Private Cloud - Meet Cloud Native World
LINE's Private Cloud - Meet Cloud Native WorldLINE Corporation
 
The Twelve Factor App - Pivotal Tracker
The Twelve Factor App - Pivotal TrackerThe Twelve Factor App - Pivotal Tracker
The Twelve Factor App - Pivotal Trackerlauriepino
 
Webinar- Tea for the Tillerman
Webinar- Tea for the TillermanWebinar- Tea for the Tillerman
Webinar- Tea for the TillermanCumulus Networks
 
Cloud Computing for Barcamp NOLA 2009
Cloud Computing for Barcamp NOLA 2009Cloud Computing for Barcamp NOLA 2009
Cloud Computing for Barcamp NOLA 2009Steven Evatt
 

Similar to EclipseCon Europe 2011 Virgo 3.0 (20)

Twelve-Factor application pattern with Spring Framework
Twelve-Factor application pattern with Spring FrameworkTwelve-Factor application pattern with Spring Framework
Twelve-Factor application pattern with Spring Framework
 
HTML5 Apps on AGL Platform with the Web Application Manager (Automotive Grade...
HTML5 Apps on AGL Platform with the Web Application Manager (Automotive Grade...HTML5 Apps on AGL Platform with the Web Application Manager (Automotive Grade...
HTML5 Apps on AGL Platform with the Web Application Manager (Automotive Grade...
 
Google App Engine Java, Groovy and Gaelyk
Google App Engine Java, Groovy and GaelykGoogle App Engine Java, Groovy and Gaelyk
Google App Engine Java, Groovy and Gaelyk
 
SAP Inside Track Singapore 2014
SAP Inside Track Singapore 2014SAP Inside Track Singapore 2014
SAP Inside Track Singapore 2014
 
PaaS with Java
PaaS with JavaPaaS with Java
PaaS with Java
 
Openshift serverless Solution
Openshift serverless SolutionOpenshift serverless Solution
Openshift serverless Solution
 
Cloud Native Camel Design Patterns
Cloud Native Camel Design PatternsCloud Native Camel Design Patterns
Cloud Native Camel Design Patterns
 
Kubernetes vs dockers swarm supporting onap oom on multi-cloud multi-stack en...
Kubernetes vs dockers swarm supporting onap oom on multi-cloud multi-stack en...Kubernetes vs dockers swarm supporting onap oom on multi-cloud multi-stack en...
Kubernetes vs dockers swarm supporting onap oom on multi-cloud multi-stack en...
 
Surviving a Plane Crash, a NU.nl case-study
Surviving a Plane Crash, a NU.nl case-studySurviving a Plane Crash, a NU.nl case-study
Surviving a Plane Crash, a NU.nl case-study
 
Automating OpenStack Deployment with Fuel
Automating OpenStack Deployment with FuelAutomating OpenStack Deployment with Fuel
Automating OpenStack Deployment with Fuel
 
Mysql ecosystem in 2019
Mysql ecosystem in 2019Mysql ecosystem in 2019
Mysql ecosystem in 2019
 
Knative from an Enterprise Perspective
Knative from an Enterprise PerspectiveKnative from an Enterprise Perspective
Knative from an Enterprise Perspective
 
Portal / BI 2008 Presentation by Ted Tschopp
Portal / BI 2008 Presentation by Ted TschoppPortal / BI 2008 Presentation by Ted Tschopp
Portal / BI 2008 Presentation by Ted Tschopp
 
Stay productive while slicing up the monolith
Stay productive while slicing up the monolith Stay productive while slicing up the monolith
Stay productive while slicing up the monolith
 
Monitor OpenStack Environments from the bottom up and front to back
Monitor OpenStack Environments from the bottom up and front to backMonitor OpenStack Environments from the bottom up and front to back
Monitor OpenStack Environments from the bottom up and front to back
 
LINE's Private Cloud - Meet Cloud Native World
LINE's Private Cloud - Meet Cloud Native WorldLINE's Private Cloud - Meet Cloud Native World
LINE's Private Cloud - Meet Cloud Native World
 
The Twelve Factor App - Pivotal Tracker
The Twelve Factor App - Pivotal TrackerThe Twelve Factor App - Pivotal Tracker
The Twelve Factor App - Pivotal Tracker
 
Webinar- Tea for the Tillerman
Webinar- Tea for the TillermanWebinar- Tea for the Tillerman
Webinar- Tea for the Tillerman
 
Cloud Computing for Barcamp NOLA 2009
Cloud Computing for Barcamp NOLA 2009Cloud Computing for Barcamp NOLA 2009
Cloud Computing for Barcamp NOLA 2009
 
Lattice yapc-slideshare
Lattice yapc-slideshareLattice yapc-slideshare
Lattice yapc-slideshare
 

Recently uploaded

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 interpreternaman860154
 
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...apidays
 
CNv6 Instructor Chapter 6 Quality of Service
CNv6 Instructor Chapter 6 Quality of ServiceCNv6 Instructor Chapter 6 Quality of Service
CNv6 Instructor Chapter 6 Quality of Servicegiselly40
 
The 7 Things I Know About Cyber Security After 25 Years | April 2024
The 7 Things I Know About Cyber Security After 25 Years | April 2024The 7 Things I Know About Cyber Security After 25 Years | April 2024
The 7 Things I Know About Cyber Security After 25 Years | April 2024Rafal Los
 
EIS-Webinar-Prompt-Knowledge-Eng-2024-04-08.pptx
EIS-Webinar-Prompt-Knowledge-Eng-2024-04-08.pptxEIS-Webinar-Prompt-Knowledge-Eng-2024-04-08.pptx
EIS-Webinar-Prompt-Knowledge-Eng-2024-04-08.pptxEarley Information Science
 
Unblocking The Main Thread Solving ANRs and Frozen Frames
Unblocking The Main Thread Solving ANRs and Frozen FramesUnblocking The Main Thread Solving ANRs and Frozen Frames
Unblocking The Main Thread Solving ANRs and Frozen FramesSinan KOZAK
 
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 2024The Digital Insurer
 
Handwritten Text Recognition for manuscripts and early printed texts
Handwritten Text Recognition for manuscripts and early printed textsHandwritten Text Recognition for manuscripts and early printed texts
Handwritten Text Recognition for manuscripts and early printed textsMaria Levchenko
 
Breaking the Kubernetes Kill Chain: Host Path Mount
Breaking the Kubernetes Kill Chain: Host Path MountBreaking the Kubernetes Kill Chain: Host Path Mount
Breaking the Kubernetes Kill Chain: Host Path MountPuma Security, LLC
 
🐬 The future of MySQL is Postgres 🐘
🐬  The future of MySQL is Postgres   🐘🐬  The future of MySQL is Postgres   🐘
🐬 The future of MySQL is Postgres 🐘RTylerCroy
 
Slack Application Development 101 Slides
Slack Application Development 101 SlidesSlack Application Development 101 Slides
Slack Application Development 101 Slidespraypatel2
 
GenCyber Cyber Security Day Presentation
GenCyber Cyber Security Day PresentationGenCyber Cyber Security Day Presentation
GenCyber Cyber Security Day PresentationMichael W. Hawkins
 
Partners Life - Insurer Innovation Award 2024
Partners Life - Insurer Innovation Award 2024Partners Life - Insurer Innovation Award 2024
Partners Life - Insurer Innovation Award 2024The Digital Insurer
 
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 AutomationSafe Software
 
Kalyanpur ) Call Girls in Lucknow Finest Escorts Service 🍸 8923113531 🎰 Avail...
Kalyanpur ) Call Girls in Lucknow Finest Escorts Service 🍸 8923113531 🎰 Avail...Kalyanpur ) Call Girls in Lucknow Finest Escorts Service 🍸 8923113531 🎰 Avail...
Kalyanpur ) Call Girls in Lucknow Finest Escorts Service 🍸 8923113531 🎰 Avail...gurkirankumar98700
 
Factors to Consider When Choosing Accounts Payable Services Providers.pptx
Factors to Consider When Choosing Accounts Payable Services Providers.pptxFactors to Consider When Choosing Accounts Payable Services Providers.pptx
Factors to Consider When Choosing Accounts Payable Services Providers.pptxKatpro Technologies
 
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 productivityPrincipled Technologies
 
Data Cloud, More than a CDP by Matt Robison
Data Cloud, More than a CDP by Matt RobisonData Cloud, More than a CDP by Matt Robison
Data Cloud, More than a CDP by Matt RobisonAnna Loughnan Colquhoun
 
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...Enterprise Knowledge
 
08448380779 Call Girls In Friends Colony Women Seeking Men
08448380779 Call Girls In Friends Colony Women Seeking Men08448380779 Call Girls In Friends Colony Women Seeking Men
08448380779 Call Girls In Friends Colony Women Seeking MenDelhi Call girls
 

Recently uploaded (20)

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
 
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...
 
CNv6 Instructor Chapter 6 Quality of Service
CNv6 Instructor Chapter 6 Quality of ServiceCNv6 Instructor Chapter 6 Quality of Service
CNv6 Instructor Chapter 6 Quality of Service
 
The 7 Things I Know About Cyber Security After 25 Years | April 2024
The 7 Things I Know About Cyber Security After 25 Years | April 2024The 7 Things I Know About Cyber Security After 25 Years | April 2024
The 7 Things I Know About Cyber Security After 25 Years | April 2024
 
EIS-Webinar-Prompt-Knowledge-Eng-2024-04-08.pptx
EIS-Webinar-Prompt-Knowledge-Eng-2024-04-08.pptxEIS-Webinar-Prompt-Knowledge-Eng-2024-04-08.pptx
EIS-Webinar-Prompt-Knowledge-Eng-2024-04-08.pptx
 
Unblocking The Main Thread Solving ANRs and Frozen Frames
Unblocking The Main Thread Solving ANRs and Frozen FramesUnblocking The Main Thread Solving ANRs and Frozen Frames
Unblocking The Main Thread Solving ANRs and Frozen Frames
 
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
 
Handwritten Text Recognition for manuscripts and early printed texts
Handwritten Text Recognition for manuscripts and early printed textsHandwritten Text Recognition for manuscripts and early printed texts
Handwritten Text Recognition for manuscripts and early printed texts
 
Breaking the Kubernetes Kill Chain: Host Path Mount
Breaking the Kubernetes Kill Chain: Host Path MountBreaking the Kubernetes Kill Chain: Host Path Mount
Breaking the Kubernetes Kill Chain: Host Path Mount
 
🐬 The future of MySQL is Postgres 🐘
🐬  The future of MySQL is Postgres   🐘🐬  The future of MySQL is Postgres   🐘
🐬 The future of MySQL is Postgres 🐘
 
Slack Application Development 101 Slides
Slack Application Development 101 SlidesSlack Application Development 101 Slides
Slack Application Development 101 Slides
 
GenCyber Cyber Security Day Presentation
GenCyber Cyber Security Day PresentationGenCyber Cyber Security Day Presentation
GenCyber Cyber Security Day Presentation
 
Partners Life - Insurer Innovation Award 2024
Partners Life - Insurer Innovation Award 2024Partners Life - Insurer Innovation Award 2024
Partners Life - Insurer Innovation Award 2024
 
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
 
Kalyanpur ) Call Girls in Lucknow Finest Escorts Service 🍸 8923113531 🎰 Avail...
Kalyanpur ) Call Girls in Lucknow Finest Escorts Service 🍸 8923113531 🎰 Avail...Kalyanpur ) Call Girls in Lucknow Finest Escorts Service 🍸 8923113531 🎰 Avail...
Kalyanpur ) Call Girls in Lucknow Finest Escorts Service 🍸 8923113531 🎰 Avail...
 
Factors to Consider When Choosing Accounts Payable Services Providers.pptx
Factors to Consider When Choosing Accounts Payable Services Providers.pptxFactors to Consider When Choosing Accounts Payable Services Providers.pptx
Factors to Consider When Choosing Accounts Payable Services Providers.pptx
 
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
 
Data Cloud, More than a CDP by Matt Robison
Data Cloud, More than a CDP by Matt RobisonData Cloud, More than a CDP by Matt Robison
Data Cloud, More than a CDP by Matt Robison
 
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...
 
08448380779 Call Girls In Friends Colony Women Seeking Men
08448380779 Call Girls In Friends Colony Women Seeking Men08448380779 Call Girls In Friends Colony Women Seeking Men
08448380779 Call Girls In Friends Colony Women Seeking Men
 

EclipseCon Europe 2011 Virgo 3.0

  • 1. All About Virgo Christopher Frost – Virgo Committer Martin Lippert – Lead, Spring Development Tools SpringSource, a division of VMware 3rd November 2011 OSGi Alliance Marketing © 2008-2010 . All Rights Reserved Page 1
  • 2. Page 2 First Hands up if you have used Virgo before?
  • 3. Page 3 Agenda • Back to basics, Virgo Catch up • What's new • Tooling • Snaps • Regions • The Future
  • 4. Page 4 Virgo – Catch up To be the best OSGi runtime environment we can be ● OSGi as the programming model ● Standards compliant ● Simplifies the managing Enterprise OSGi ● Simplifies the use of existing containers
  • 5. Page 5 Virgo – Catch up
  • 6. Page 6 Virgo 3.0 – What's new • Regions have replaced Nested Frameworks • New Shell based on Apache GoGo • Spring 3.0.5.RELEASE & Equinox Indigo • Declarative Service & Log Service support
  • 7. Page 7 Virgo 3.0 – Regions
  • 8. Page 8 Virgo 3.0 – Demo The GoGo Shell & Regions For more about GoGo see Fridays Talk “Next Generation Equinox Shell”
  • 9. Page 9 Virgo 3.0 – What's new • Servlet 3.0 with Tomcat 7.x • Gemini.Web, strict compliance to OSGi web container spec • Jetty version (based on 7.x) • Updated sample application, Greenpages • Lots of Bugfixes etc...
  • 10. Page 10 Tooling - History dm Server Tooling becomes Virgo IDE
  • 11. Page 11 Tooling • Bundle and PAR projects • Including Bundlor • PDE-like editors • Server integration • Launching • Deployment • Introspection • EBR – Enterprise Bundle Repository
  • 12. Page 12 Tooling – Demo Virgo IDE
  • 13. Page 13 Virgo 3.0 – What's new Snaps gets its first release • Some features tidied up • Documentation written • Single sample app showing everything Snaps can do • All available in a Zip from the Virgo website
  • 14. Page 14 Snaps – Basics • Lots of Snaps (Web Application Bundles) • Snaps have the hosts ServletContext • Uses a filter to dispatch requests from the host • Everything else is business as normal
  • 15. Page 15 Snaps – Nested Context Paths /app/orders /app/billing
  • 16. Page 16 Snaps – A filter for Snaps • Still just web.xml • Define the subpath for Snaps with a filter
  • 17. Page 17 Snaps – Manifest • Attaching Snaps to hosts
  • 18. Page 18 Snaps – Taglibs • JSP tag to look up slices & their properties
  • 19. Page 19 Snaps – Host Properties • Looking up resources & properties from the host
  • 20. Page 20 Virgo 3.0 – Demo Snaps
  • 21. Page 21 Regions – Background Bundle ≠ Application ● Need higher level scoping construct than a bundle ● Simpler management applications
  • 22. Page 22 Regions – Scoping in Virgo ● Region scoping - Kernel Space vs User Space ● Application scoping ● PARs and scoped Plans ● Metadata rewriting for bundle/package scoping ● Service registry hooks for service scoping
  • 23. Page 23 Regions & Hook Usability • Control the visibility of bundles, packages, generic capabilities • Bundle Resolver, Find and Event hooks • Service Find and Event hooks • Hard to ensure consistent behaviour across hooks • Need higher level abstraction • Enter..... Region digraph
  • 24. Page 24 Regions – Region Digraph • A directed graph of "regions" • A region is a group of bundles • Regions may be connected by directed arcs • Each directed arc has a filter which controls visibility: • bundles • packages • services • generic capabilities
  • 25. Page 25 Regions – Region Digraph
  • 26. Page 26 Regions – Region Digraph
  • 27. Page 27 Regions – Region Digraph (cont.) • Developed as part of Virgo • Formal model specified in Z • Seen to be useful outside Virgo • Moved to Equinox • Used in Virgo 3.0 • Used in Apache Aries
  • 28. Page 28 Regions & Subsystems • OSGi standard multi-bundle scoping mechanism • Work in progress, public draft soon • Inspired by Virgo regions & scopes, Apache Aries applications, Apache Felix Karaf features, Eclipse features, Deployment Admin deployment packages etc... • Virgo to implement subsystems in a future release
  • 29. Page 29 Regions & Subsystems For more information Go to the talk later today on “Multi-bundle Scoping in OSGi” For even more see Subsystems RFC 152
  • 30. Page 30 Virgo Future • Web Admin Console (Demo at the BoF later) • Nano Virgo based around P2 • Subsystems • Snaps, Nesting & Listener Support • Cloud Come to the BoF, tonight at 18:30 ...
  • 31. Page 31 Virgo Future -Tooling Libra: • Tooling for Enterprise OSGi • Spec compatible only Virgo IDE: • Tooling for Virgo • Not spec compatible (there is no spec) • Very much specialized
  • 32. Page 32 Virgo Future - Tooling Move spec-compatible parts to Libra • Launcher, server visualization, Bundlor, … Let Virgo consume and enhance Libra • With Virgo-specific parts, like PAR projects, EBR integration, … Enhance modularization • Separate build tools (Bundlor, bndtools, PDE) from server integration Remove Spring IDE dependencies Improve performance/footprint