SlideShare a Scribd company logo
Netbinox
The fastest OSGi Container on the Planet
Jaroslav Tulach
NetBeans Platform Architect
http://netbinox.apidesign.org
Agenda
• Being Fast!?
• A bit of history
• Demo
• Technical details
• Q/A
http://netbinox.apidesign.org
Slow I/O During Startup
Demo
http://netbinox.apidesign.org
History 1 - Experiments
• Sun and OSGi
> Glassfish adopted OSGi in 2008
• Netigso
> Friday project
> Felix based
> Parallel mode
> Reuse of bundles
• Glassfish in Nb
> Middle of 2009
• Problem: How to get this into release?
The Garage Days
http://netbinox.apidesign.org
History 2 - Acquisition
18 months of despair
• Sun collapsed in Spring 2009
> Acquired by Oracle
> Approved in January 2010
> Czech Republic LEC on Sep 1, 2010
• JDeveloper
> Primary IDE for Oracle Enterprise Technologies
• Eclipse Foundation
> Member and Contributor
• Problem: Can NetBeans be useful for Oracle?
http://netbinox.apidesign.org
History 3 - NetBeans 6.9 Theme
• NetBeans Platform based on standards
> Standard UI - Swing
> Adopt OSGi as de-facto standard
• OSGi interoperability
> Reuse existing bundles
> Use bundles on server/client side
> Use NetBeans APIs in OSGi mode
• Problem:
> Is that enough to align with JDev?
The public plan
http://netbinox.apidesign.org
JDeveloper
Going the same direction
• JDev converted to OSGi meanwhile
> Most of the work done
> Big Bang rewrite
> Using Equinox
• Long term synergy vs. short term benefits
> Reuse pieces of NetBeans in future
> More speed right now
• Netbinox on the rise
> “Just” reuse NetBeans “startup caches”
http://netbinox.apidesign.org
Being Fast with Caches
Demo
http://netbinox.apidesign.org
Caches & Speed
Avoid I/O
• 40% faster
• Useful for desktop applications
> Start speed is important
> “Morning” launch
• Intercept I/O queries
> loadClass, getResource
> File.exists()
• Modular vs. monolithic apps
> Deployment modular
> Start is monolithic
http://netbinox.apidesign.org
The Differences
What is different in Netbinox?
• 100% compatibility for bundles
• Class and resource loading
> ZipBundleFile replaced by JarBundleFile
> Thread Context Class Loader
• Equinox hooks
> Registered slightly differently
• OSGi APIs in Separate JARs
> Shared by Felix & Equinox
• Own Launcher
> Configuration files use NetBeans format
http://netbinox.apidesign.org
The Presence
• NetBeans IDE 7.1 uses Netbinox
> Mylyn + Bugzilla Connectors
> Orbit bundles (JSCh, Apache)
• JDeveloper on Netbinox
> Other features than a speed
• The common ground
> OSGi as lingua franca
> How do we share?
With future outlook
http://netbinox.apidesign.org
Give Feedback on the Sessions
1
Sign In: www.eclipsecon.org
2
Select Session Evaluate
3
Vote
Experiences from
building the fastest
OSGi container on
the Planet
Jaroslav Tulach

More Related Content

PPTX
From OpenStack to Docker swarm
PPTX
DockerCon SF 2015: Docker Community in China
PDF
KubeCon Europe 2017: Running Workloads in Kubernetes
PPT
CloudMonkey
PDF
DockerCon SF 2015: Networking Breakout
PPT
Apache CloudStack Google Summer of Code
PPTX
DockerCon SF 2015: Networking Breakout
PDF
Bosh 2-0-reloaded
From OpenStack to Docker swarm
DockerCon SF 2015: Docker Community in China
KubeCon Europe 2017: Running Workloads in Kubernetes
CloudMonkey
DockerCon SF 2015: Networking Breakout
Apache CloudStack Google Summer of Code
DockerCon SF 2015: Networking Breakout
Bosh 2-0-reloaded

What's hot (20)

KEY
CloudFoundry@home
PDF
Git 101 for CloudStack
PPTX
jclouds workshop
PDF
ConcourseCi overview
PDF
gRPC @ Weaveworks
PPT
Docker and CloudStack
PPTX
Static Site Generators - Developing Websites in Low-resource Condition
PPT
CloudStack Clients and Tools
PDF
Provisioning Rails Servers with Ansible
PDF
Serverless framework on kubernetes
PDF
OpenFaaS KubeCon Zero to Serverless in 60 seconds anywhere
PPT
Intro to CloudStack API
PDF
GitOps meets Serverless
PPTX
Container Days Conference Plesk 2016 - How AWS, Docker and Microservices infl...
PDF
Kubernetes User Group: 維運 Kubernetes 的兩三事
PDF
One Neos CMS - many websites
PPTX
Docker crash course
PPTX
React Fiber
PDF
OpenFaaS serverless framework for Docker and Kubernetes - London
PDF
DockerDay2015: Getting started with Docker
CloudFoundry@home
Git 101 for CloudStack
jclouds workshop
ConcourseCi overview
gRPC @ Weaveworks
Docker and CloudStack
Static Site Generators - Developing Websites in Low-resource Condition
CloudStack Clients and Tools
Provisioning Rails Servers with Ansible
Serverless framework on kubernetes
OpenFaaS KubeCon Zero to Serverless in 60 seconds anywhere
Intro to CloudStack API
GitOps meets Serverless
Container Days Conference Plesk 2016 - How AWS, Docker and Microservices infl...
Kubernetes User Group: 維運 Kubernetes 的兩三事
One Neos CMS - many websites
Docker crash course
React Fiber
OpenFaaS serverless framework for Docker and Kubernetes - London
DockerDay2015: Getting started with Docker
Ad

Similar to Experiences from Building the Fastest OSGi Container on the Planet - Jaroslav Tulach (20)

PPTX
AFNetworking
PDF
Cloud stack design camp on jun 15
PPTX
Background processing with hangfire
PDF
Eclipse Apricot
PDF
Module Web Applications - Pierre Dubois, Chief Executive and President, Requea
PDF
Manage your external libraries with CocoaPods
PDF
Shift Remote: JS - Javascript Build Tools: Past & Beyond - Shedrack Akintayo
KEY
A Platform Approach to Enterprise Content Management with Eclipse Apricot, CM...
KEY
Introducing Apricot, The Eclipse Content Management Platform
PPTX
React native - React(ive) Way To Build Native Mobile Apps
PPTX
Urbanesia - Development History
KEY
Google App Engine Java, Groovy and Gaelyk
PPTX
PPTX
How to be successful running Docker in Production
PPTX
Plone FSR
PDF
Pydata 2020 containers meetup
PPTX
Trends and future of java
PPTX
Dockercon EU 2015
PPTX
Why Play Framework is fast
AFNetworking
Cloud stack design camp on jun 15
Background processing with hangfire
Eclipse Apricot
Module Web Applications - Pierre Dubois, Chief Executive and President, Requea
Manage your external libraries with CocoaPods
Shift Remote: JS - Javascript Build Tools: Past & Beyond - Shedrack Akintayo
A Platform Approach to Enterprise Content Management with Eclipse Apricot, CM...
Introducing Apricot, The Eclipse Content Management Platform
React native - React(ive) Way To Build Native Mobile Apps
Urbanesia - Development History
Google App Engine Java, Groovy and Gaelyk
How to be successful running Docker in Production
Plone FSR
Pydata 2020 containers meetup
Trends and future of java
Dockercon EU 2015
Why Play Framework is fast
Ad

More from mfrancis (20)

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

Recently uploaded (20)

PDF
CIFDAQ's Market Insight: SEC Turns Pro Crypto
PPTX
Understanding_Digital_Forensics_Presentation.pptx
PDF
cuic standard and advanced reporting.pdf
PPTX
A Presentation on Artificial Intelligence
PPT
Teaching material agriculture food technology
PDF
Unlocking AI with Model Context Protocol (MCP)
PDF
Spectral efficient network and resource selection model in 5G networks
PDF
Per capita expenditure prediction using model stacking based on satellite ima...
PDF
Bridging biosciences and deep learning for revolutionary discoveries: a compr...
PPT
“AI and Expert System Decision Support & Business Intelligence Systems”
PDF
7 ChatGPT Prompts to Help You Define Your Ideal Customer Profile.pdf
PDF
Review of recent advances in non-invasive hemoglobin estimation
PDF
Encapsulation theory and applications.pdf
PDF
Agricultural_Statistics_at_a_Glance_2022_0.pdf
PPTX
Cloud computing and distributed systems.
PPTX
Big Data Technologies - Introduction.pptx
PPTX
KOM of Painting work and Equipment Insulation REV00 update 25-dec.pptx
PDF
The Rise and Fall of 3GPP – Time for a Sabbatical?
PDF
Blue Purple Modern Animated Computer Science Presentation.pdf.pdf
PDF
Shreyas Phanse Resume: Experienced Backend Engineer | Java • Spring Boot • Ka...
CIFDAQ's Market Insight: SEC Turns Pro Crypto
Understanding_Digital_Forensics_Presentation.pptx
cuic standard and advanced reporting.pdf
A Presentation on Artificial Intelligence
Teaching material agriculture food technology
Unlocking AI with Model Context Protocol (MCP)
Spectral efficient network and resource selection model in 5G networks
Per capita expenditure prediction using model stacking based on satellite ima...
Bridging biosciences and deep learning for revolutionary discoveries: a compr...
“AI and Expert System Decision Support & Business Intelligence Systems”
7 ChatGPT Prompts to Help You Define Your Ideal Customer Profile.pdf
Review of recent advances in non-invasive hemoglobin estimation
Encapsulation theory and applications.pdf
Agricultural_Statistics_at_a_Glance_2022_0.pdf
Cloud computing and distributed systems.
Big Data Technologies - Introduction.pptx
KOM of Painting work and Equipment Insulation REV00 update 25-dec.pptx
The Rise and Fall of 3GPP – Time for a Sabbatical?
Blue Purple Modern Animated Computer Science Presentation.pdf.pdf
Shreyas Phanse Resume: Experienced Backend Engineer | Java • Spring Boot • Ka...

Experiences from Building the Fastest OSGi Container on the Planet - Jaroslav Tulach