Building LinkedIn's Next Generation Architecture with OSGI
|
|
- Elwin Clarke
- 5 years ago
- Views:
Transcription
1 OSGi Building LinkedIn's Next Generation Architecture with OSGI Yan Pujante Distinguished Software Engineer Member of the Founding LinkedIn ypujante@linkedin.com Yan Pujante OSGi: Building LinkedIn's Next Generation Architecture with OSGI Slide 1
2 Background LinkedIn created in 03/2003 close to 30M members profitable with 5 revenue lines HQ in Mountain View (400 employees) Technologies 2 datacenters (~ 600 machines) SOA, java, tomcat, spring framework, http, Oracle, MySQL, servlets, jsp, graph, OSGi... dev on MacOS X, prod on Solaris Yan Pujante OSGi: Building LinkedIn's Next Generation Architecture with OSGI Slide 2
3 Challenges Growing engineering team on a monolithic code base (still modular) Growing product team wanting more and more feature, faster Growing operations team deploying more and more servers Yan Pujante OSGi: Building LinkedIn's Next Generation Architecture with OSGI Slide 3
4 Challenges (SOA in dev) Front-End Back-End N P webapp tomcat X webapp Y webapp webapp jetty (1) Z M webapp R N webapp webapp jetty (2) Front-end: many BL services in one webapp (in tomcat) Back-end: many wars in 5 containers (jetty) with 1 service per war Note that prod and dev are different Yan Pujante OSGi: Building LinkedIn's Next Generation Architecture with OSGI Slide 4
5 Container Challenge 1 war with N services does not scale for dev (conflicts, monolithic...) N wars with 1 service does not scale from a container point of view (no shared jars) Can add containers but only 12Gb of RAM :( Yan Pujante OSGi: Building LinkedIn's Next Generation Architecture with OSGI Slide 5
6 Challenges (SOA in prod) Upgrading back-end service to new version requires downtime Hardware LB does not account for version Upgrading front-end service to new version requires redeploy N services in 1 war Adding new back-end service painful lots of manual configuration (LB, frontend...) Yan Pujante OSGi: Building LinkedIn's Next Generation Architecture with OSGI Slide 6
7 Solution: OSGi Belief that OSGi is one of the tools that will help us address those challenges Why OSGi? Yan Pujante OSGi: Building LinkedIn's Next Generation Architecture with OSGI Slide 7
8 OSGi intro OSGi means Open Services Gateway initiative OSGi is a spec with several implementations Equinox (eclipse!) Knoplerfish Felix (Apache) Yan Pujante OSGi: Building LinkedIn's Next Generation Architecture with OSGI Slide 8
9 OSGi intro (cont.) OSGi has some very good properties Smart class loading => multiple versions jars ok Highly dynamic => deploy / undeploy built in Services registry Highly extensible / configurable OSGi bundle = Jar File with OSGi manifests Yan Pujante OSGi: Building LinkedIn's Next Generation Architecture with OSGI Slide 9
10 OSGi bundle Specification-Title: Colorado Software Summit 2008 Hello Wolrd Client Bundle-Activator: com.linkedin.colorado.helloworld.client.helloworldclientactivator Import-Package: com.linkedin.colorado.helloworld.api;version="[1.0.0,1.0.1)", com.linkedin.colorado.helloworld.client;version="[1.0.0,1.0.1)", org.osgi.framework;version="[1.4.0,1.4.1)" Export-Package: com.linkedin.colorado.helloworld.client;version="1.0.0" Bundle-Version: Bundle-Name: colorado-helloworld-client Bundle-ManifestVersion: 2 Bundle-SymbolicName: colorado-helloworld-client Bnd-LastModified: Generated-On: Tool: Bnd-<unknown version> Implementation-Version: DevBuild Yan Pujante OSGi: Building LinkedIn's Next Generation Architecture with OSGI Slide 10
11 BundleActivator In a war: ServletContextListener public interface ServletContextListener extends EventListener { void contextinitialized(servletcontextevent event); void contextdestroyed(servletcontextevent event); } web.xml <listener> <listener-class>com.colorado.mylistener</listenerclass> </listener> In a Bundle: BundleActivator public interface BundleActivator { void start(bundlecontext bundlecontext) throws Exception; void stop(bundlecontext bundlecontext) throws Exception; } MANIFEST.MF Bundle-Activator: com.colorado.myactivator Yan Pujante OSGi: Building LinkedIn's Next Generation Architecture with OSGI Slide 11
12 BundleContext The bundle context is the entry point: registerservice / getservicereference => to register / get services from registry addbundlelistener / addservicelistener => to listens / extends the framework even installbundle!... and more Yan Pujante OSGi: Building LinkedIn's Next Generation Architecture with OSGI Slide 12
13 Demo Equinox demo... stay tuned... Yan Pujante OSGi: Building LinkedIn's Next Generation Architecture with OSGI Slide 13
14 Web Container Services exported with Spring/RPC Services in same war can see each other Share the jars JARs Services SpringRPC WAR WEB Container HTTP Yan Pujante OSGi: Building LinkedIn's Next Generation Architecture with OSGI Slide 14
15 Web Container Cannot share jars Cannot talk directly JARs Services SpringRPC JARs Services SpringRPC WEB Container HTTP Yan Pujante OSGi: Building LinkedIn's Next Generation Architecture with OSGI Slide 15
16 OSGi container Bundles (jars) shared Services shared Dynamic replacement of bundles OSGi solves the container challenge Bundles Service Registry OSGi Container Yan Pujante OSGi: Building LinkedIn's Next Generation Architecture with OSGI Slide 16
17 Distributed OSGi OSGi is currently container centric Next version (4.2) will introduce distributed OSGi What do we do in the meantime? Yan Pujante OSGi: Building LinkedIn's Next Generation Architecture with OSGI Slide 17
18 LinkedIn distributed OSGi Bundles Service Service Registry Registry Service red talks to service green (local) What happens if we move green to a different container? C1 Yan Pujante OSGi: Building LinkedIn's Next Generation Architecture with OSGI Slide 18
19 LinkedIn distributed OSGi Bundles Bundles Service Registry Service Registry C2 C1 Service Registry Bundles C3 Yan Pujante OSGi: Building LinkedIn's Next Generation Architecture with OSGI Slide 19
20 LinkedIn distributed OSGi Bundles Bundles Service Registry 2 Service Registry C2 2 C1 Service Registry Bundles C3 Yan Pujante OSGi: Building LinkedIn's Next Generation Architecture with OSGI Slide 20
21 LinkedIn distributed OSGi Bundles Bundles Service Registry 2 2 Service Registry C2 3 C1 Service Registry Bundles 3 C3 Yan Pujante OSGi: Building LinkedIn's Next Generation Architecture with OSGI Slide 21
22 LinkedIn distributed OSGi Bundles Bundles Service Registry 2 2 Service Registry C2 3 C1 Service Registry Bundles 3 C3 Yan Pujante OSGi: Building LinkedIn's Next Generation Architecture with OSGI Slide 22
23 LinkedIn distributed OSGi no more N-1 / 1-N problem libraries and services can be shared in 1 container (mem. footprint smaller) services shared across containers transparent location to clients no more configurations to change when adding/removing/moving services software load balancer much more flexible (handle version) Yan Pujante OSGi: Building LinkedIn's Next Generation Architecture with OSGI Slide 23
24 LB and version Bundles Bundles Service Registry 2 2 Service Registry C2 3 C1 Service Registry Bundles 3 C3 Yan Pujante OSGi: Building LinkedIn's Next Generation Architecture with OSGI Slide 24
25 Everything is perfect......not really OSGi has some problems Yan Pujante OSGi: Building LinkedIn's Next Generation Architecture with OSGI Slide 25
26 OSGi problems OSGi is great, but tooling is not quite there yet Not every lib is a bundle OSGi was designed for embedded devices => using it for server side is recent (but very active) Yan Pujante OSGi: Building LinkedIn's Next Generation Architecture with OSGI Slide 26
27 OSGi problems OSGi is quite low level => but there is some work to hide the complexity spring DM (spring dynamic module) multiple vendors containers Spring DM Server, Glassfish, Infiniflow OSGi is container centric, but next version will add distributed OSGi (although no support for LB) Yan Pujante OSGi: Building LinkedIn's Next Generation Architecture with OSGI Slide 27
28 OSGi problems (cont.) version management can be nightmarish Import-Package: com.linkedin.util;version=1.0.0 version=1.0.0 means [1.0.0, ) should use at least: version=[1.0.0,2.0.0) runtime is dynamic and can result in untested code being executed! Yan Pujante OSGi: Building LinkedIn's Next Generation Architecture with OSGI Slide 28
29 Runtime version problem client1 and client2 uses Service Dependencies are loose : [3.0.0, 4.0.0) Yan Pujante OSGi: Building LinkedIn's Next Generation Architecture with OSGI Slide 29
30 Runtime version problem We upgrade client1 and service client2 starts using green bundles => Most likely untested Yan Pujante OSGi: Building LinkedIn's Next Generation Architecture with OSGI Slide 30
31 Runtime version solutions? A solution is to lock version: [1.0.0,1.0.0] => no slack [1.0.0,1.0.1) => tiny bit of slack for emergency mode Does it really work? spring imports hibernate version [3.1, ) Can OSGi even resolve with everything locked down? Yan Pujante OSGi: Building LinkedIn's Next Generation Architecture with OSGI Slide 31
32 Runtime version problem With maximal lock-down, client2 cannot use the new service Yan Pujante OSGi: Building LinkedIn's Next Generation Architecture with OSGI Slide 32
33 Runtime version solutions? Services cannot talk to each other directly => need serialization for backward compatible services (dynamic proxy) Yan Pujante OSGi: Building LinkedIn's Next Generation Architecture with OSGI Slide 33
34 Despite problems......osgi and community moving in the right direction Yan Pujante OSGi: Building LinkedIn's Next Generation Architecture with OSGI Slide 34
35 Where are we? Bundle repository (big amount of work... in progress) Use ivy/bnd for generating bundles Evaluating container Infiniflow (from Paremus) most likely the one LinkedIn spring / SCA to deploy composites Work on the load balancer/distribution (in progress) Work on tooling / build integration (Sigil from Paremus) Much much more to do... Yan Pujante OSGi: Building LinkedIn's Next Generation Architecture with OSGI Slide 35
36 Conclusion Using OSGi... definitely! But we do not want application developers to have to deal with it. Yan Pujante OSGi: Building LinkedIn's Next Generation Architecture with OSGI Slide 36
37 More information Check my posts on the LinkedIn blog (OSGi series). More to come... Yan Pujante OSGi: Building LinkedIn's Next Generation Architecture with OSGI Slide 37
OSGi. Building LinkedIn's Next Generation Architecture with OSGI
OSGi Building LinkedIn's Next Generation Architecture with OSGI Yan Pujante Distinguished Software Engineer Member of the Founding Team @ LinkedIn ypujante@linkedin.com http://www.linkedin.com/in/yan Background
More informationModular Java Applications with Spring, dm Server and OSGi
Modular Java Applications with Spring, dm Server and OSGi Copyright 2005-2008 SpringSource. Copying, publishing or distributing without express written permission is prohibit Topics in this session Introduction
More informationHow LinkedIn changed its security model in order to offer an API
Security 2.0 How LinkedIn changed its security model in order to offer an API Yan Pujante Distinguished Software Engineer Member of the Founding Team @ LinkedIn ypujante@linkedin.com http://www.linkedin.com/in/yan
More informationOSGi on the Server. Martin Lippert (it-agile GmbH)
OSGi on the Server Martin Lippert (it-agile GmbH) lippert@acm.org 2009 by Martin Lippert; made available under the EPL v1.0 October 6 th, 2009 Overview OSGi in 5 minutes Apps on the server (today and tomorrow)
More informationAgenda. Why OSGi. What is OSGi. How OSGi Works. Apache projects related to OSGi Progress Software Corporation. All rights reserved.
OSGi Overview freeman.fang@gmail.com ffang@apache.org Apache Servicemix Commiter/PMC member Apache Cxf Commiter/PMC member Apache Karaf Commiter/PMC member Apache Felix Commiter Agenda Why OSGi What is
More informationChristopher Frost Virgo Committer Martin Lippert Lead, Spring Development Tools SpringSource, a division of VMware 3rd November 2011
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 Page. 1 All Rights
More informationEquinox OSGi: Pervasive Componentization
Equinox OSGi: Pervasive Componentization Thomas Watson Equinox Development Lead IBM Lotus Jeff McAffer, Eclipse RCP and Equinox Lead IBM Rational Software 10/3/2006 Why is Eclipse interesting? Extensible
More informationBreaking Apart the Monolith with Modularity and Microservices CON3127
Breaking Apart the Monolith with Modularity and Microservices CON3127 Neil Griffin Software Architect, Liferay Inc. Specification Lead, JSR 378 Portlet 3.0 Bridge for JavaServer Faces 2.2 Michael Han Vice
More informationModularity in Java. With OSGi. Alex Docklands.LJC January Copyright 2016 Alex Blewitt
Modularity in Java With OSGi Alex Blewitt @alblue Docklands.LJC January 2016 Modularity in Java Modularity is Easy? Modularity is Hard! Modularity is Hard! Modularity is Hard! Modularity is Hard! Modularity
More informationTuscany: Applying OSGi modularity after the fact
Tuscany: Applying OSGi modularity after the fact Luciano Resende lresende@apache.org http://lresende.blogspot.com Raymond Feng rfeng@apache.org Agenda Introduction and Motivation Status of current Tools
More informationPatterns and Best Practices for dynamic OSGi Applications
Patterns and Best Practices for dynamic OSGi Applications Kai Tödter, Siemens Corporate Technology Gerd Wütherich, Freelancer Martin Lippert, akquinet it-agile GmbH Agenda» Dynamic OSGi applications» Basics»
More informationOSGi Best Practices. Emily
OSGi Best Practices Emily Jiang @IBM Use OSGi in the correct way... AGENDA > Why OSGi? > What is OSGi? > How to best use OSGi? 3 Modularization in Java > Jars have no modularization characteristics No
More informationDeveloping Java Applications with OSGi Capital District Java Developers Network. Michael P. Redlich March 20, 2008
Developing Java Applications with OSGi Capital District Java Developers Network Michael P. Redlich March 20, My Background (1) Degree B.S. in Computer Science Rutgers University (go Scarlet Knights!) Petrochemical
More informationOSGi in Action. Ada Diaconescu
OSGi in Action Karl Pauls Clement Escoffier karl.pauls@akquinet.de clement.escoffier@akquinet.de INF 346. Ada Diaconescu ada.diaconescu@telecom-paristech.fr 2 OSGi in Action - Clement Escoffier (clement.escoffier@akquinet.de)
More informationCS486: Tutorial on SOC, OSGi, and Knopflerfish. Ryan Babbitt (props to Dr. Hen-I Yang, CS415X) Feb. 3, 2011
CS486: Tutorial on SOC, OSGi, and Knopflerfish Ryan Babbitt (rbabbitt@iastate.edu) (props to Dr. Hen-I Yang, CS415X) Feb. 3, 2011 Basic Concepts Service-oriented computing (SOC) Service-oriented architectures
More informationOSGi. Tales from the Trenches. OSGitales from the trenches
OSGi Tales from the Trenches Bertrand Delacretaz Senior R&D Developer, Day Software, www.day.com Apache Software Foundation Member and Director bdelacretaz@apache.org blog: http://grep.codeconsult.ch twitter:
More informationCreate your own Carbon Component. Sameera Jayasoma Technical Lead and Product Manager of WSO2 Carbon
Create your own Carbon Component Sameera Jayasoma Technical Lead and Product Manager of WSO2 Carbon sameera@wso2.com WSO2 Founded in 2005 by acknowledged leaders in XML, Web Services Technologies & Standards
More informationESB, OSGi, and the Cloud
ESB, OSGi, and the Cloud Making it Rain with ServiceMix 4 Jeff Genender CTO Savoir Technologies Jeff Genender - Who is this Shmoe? Apache CXF JSR 316 - Java EE 6 Rules of Engagement Engage yourself! Agenda
More informationUsing Apache Felix: OSGi best practices. Marcel Offermans luminis
Using Apache Felix: OSGi best practices Marcel Offermans luminis 1 About me Marcel Offermans Software architect at luminis Consultancy & product development Over 4 years of experience with OSGi Committer
More information11-15 DECEMBER ANTWERP BELGIUM
1 Java EE Enhancements for Real World Deployments Nagesh Susarla Staff Software Engineer BEA Systems www.javapolis.com 2 Overall Presentation Goal Get an understanding of the latest application packaging,
More informationIntroduction to OSGi. Marcel Offermans. luminis
Introduction to OSGi Marcel Offermans luminis Introduction Marcel Offermans marcel.offermans@luminis.nl Luminis Arnhem Apeldoorn Enschede IT solutions from idea to implementation with and for customers:
More informationAPPLICATION ARCHITECTURE JAVA SERVICE MANUAL
29 March, 2018 APPLICATION ARCHITECTURE JAVA SERVICE MANUAL Document Filetype: PDF 152.54 KB 0 APPLICATION ARCHITECTURE JAVA SERVICE MANUAL When building a (Micro-)Service Architecture, you may need a
More informationCS5233 Components Models and Engineering
Prof. Dr. Th. Letschert CS5233 Components Models and Engineering (Komponententechnologien) Master of Science (Informatik) OSGI Bundles and Services Slides on OSGi are based on OSGi Alliance: OSGi Service
More informationEquinox Project Update
Equinox Project Update Jeff McAffer, Senior Technical Staff Member Eclipse RCP and Equinox Lead 2007 by IBM Corp; made available under the Creative Commons Att. Nc Nd 2.5 license October 2007 What is Equinox?
More informationUsing OSGi in Modular WebSphere Applications
Using OSGi in Modular WebSphere Applications Hannah Ramlee, IBM Software Engineer 2010 IBM Corporation 2 Cutting to the chase What: The WAS V7 Feature Pack for OSGi Applications and JPA 2.0 Why: Common
More informationSpring and OSGi. Martin Lippert akquinet agile GmbH Bernd Kolb Gerd Wütherich
Spring and OSGi Martin Lippert akquinet agile GmbH lippert@acm.org Bernd Kolb b.kolb@kolbware.de Gerd Wütherich gerd@gerd-wuetherich.de 2006 by Martin Lippert, Bernd Kolb & Gerd Wütherich, made available
More informationglu deployment automation platform July 2011 Yan Pujante in: blog:
glu deployment automation platform July 2011 Yan Pujante in: http://www.linkedin.com/in/yan blog: http://pongasoft.com/blog/yan @yanpujante * To see a video of this presentation given at Chicago devops,
More informationSCA Java Runtime Overview
SCA Java Runtime Overview Software Organization Source Code Locations If you take a Tuscany SCA Java source distribution or look in the Tuscany subversion repository (http://svn.apache.org/repos/asf/tuscany/java/sc
More information7. Component Models. Distributed Systems Prof. Dr. Alexander Schill
7. Component Models Distributed Systems http://www.rn.inf.tu-dresden.de Outline Motivation for Component Approach Software Components - Definition Component Platforms EJB (Enterprise JavaBeans) Spring
More informationApache Felix Shell. Apache Felix Shell. Overview. How the Shell Service Works. package org.apache.felix.shell;
Apache Felix Shell Apache Felix Shell Overview How the Shell Service Works How Commands Work Creating a Command Security and the Shell Service Feedback Overview In order to interact with Felix it is necessary
More informationCopyright Oracle Corporation and VMware Inc, Enterprise Modules Project (Gemini) Proposal
Enterprise Modules Project (Gemini) Proposal The Enterprise Modules Project is a proposed open source project under the Eclipse Runtime Project. This project is in the Project Proposal Phase (as defined
More informationOSGi and Spring Data for simple (Web) Application Development
OSGi and Spring Data for simple (Web) Application Development Christian Baranowski Content of my talk in a sentence Java development with Bndtools and bnd is so much fun! My Talk in three Words - Bndtools
More informationModularity in Java 9. Balázs Lájer Software Architect, GE HealthCare. HOUG Oracle Java conference, 04. Apr
Modularity in Java 9 Balázs Lájer Software Architect, GE HealthCare HOUG Oracle Java conference, 04. Apr. 2016. Modularity in Java before Java 9 Source: https://www.osgi.org/developer/architecture/ 2 MANIFEST.MF
More informationOSGi. Building and Managing Pluggable Applications
OSGi Building and Managing Pluggable Applications What A Mess Billing Service Orders Shipping Accounting Workflow Inventory Application From The View Of... Building monolithic applications is evil nuf
More informationSemantic Versioning A Large Existing Codebase
Case Study Semantic Versioning A Large Existing Codebase EclipseCon 2014 Raymond Augé @rotty3000 #eclipsecon #semver Outline The Goal The Problem
More informationLeverage Rational Application Developer v8 to develop OSGi application and test with Websphere Application Server v8
Leverage Rational Application Developer v8 to develop OSGi application and test with Websphere Application Server v8 Author: Ying Liu cdlliuy@cn.ibm.com Date: June,29 2011 2010 IBM Corporation THE INFORMATION
More informationOSGi and Equinox. Creating Highly Modular Java. Systems
OSGi and Equinox Creating Highly Modular Java Systems Part I: Introduction This first part of the book introduces OSGi and Equinox, Eclipse s implementation of the OSGi standard. Chapter 1outlines the
More informationTestingofScout Application. Ludwigsburg,
TestingofScout Application Ludwigsburg, 27.10.2014 The Tools approach The Testing Theory approach Unit testing White box testing Black box testing Integration testing Functional testing System testing
More informationApache Felix. Richard S. Hall. A Standard Plugin Model for Apache. Atlanta, Georgia U.S.A. November 13th, 2007
Apache Felix A Standard Plugin Model for Apache Richard S. Hall Atlanta, Georgia U.S.A. November 13th, 2007 Agenda Why OSGi technology? OSGi technology overview Apache Felix status Example application
More informationOSGi Application Development using GlassFish Server. Version 1.0
OSGi Application Development using GlassFish Server Table of Contents Version 1.0 1 Introduction:...3 1.1 New to OSGi?...3 1.2 Relationship between GlassFish Server & OSGi...4 2 OSGi Applications in GlassFish
More informationManaging Installations and Provisioning of OSGi Applications. Carsten Ziegeler
Managing Installations and Provisioning of OSGi Applications Carsten Ziegeler cziegeler@apache.org About Member of the ASF Current PMC Chair of Apache Sling Apache Sling, Felix, ACE, Portals (Incubator,
More informationPatterns and Best Practices for Dynamic OSGi Applications
Patterns and Best Practices for Dynamic OSGi Applications Kai Tödter, Siemens Corporate Technology Gerd Wütherich, Freelancer Martin Lippert, akquinet it-agile GmbH Agenda» Dynamic OSGi applications» Basics»
More informationSpoilt for Choice Which Integration Framework to choose? Mule ESB. Integration. Kai Wähner
Spoilt for Choice Which Integration Framework to choose? Integration vs. Mule ESB vs. Main Tasks Evaluation of Technologies and Products Requirements Engineering Enterprise Architecture Management Business
More informationCarsten Ziegeler
Embrace OSGi Change A Developer's Quickstart Carsten Ziegeler cziegeler@apache.org About Member of the ASF Sling, Felix, Cocoon, Portals, Sanselan, Excalibur, Incubator PMC: Felix, Portals, Cocoon, Incubator,
More informationJigsaw and OSGi: What the Heck Happens Now?
Jigsaw and OSGi: What the Heck Happens Now? Neil Bartlett neil.bartlett@paremus.com Jigsaw and OSGi: WTF Happens Now? Neil Bartlett neil.bartlett@paremus.com Agenda WTF is a Module System? How do OSGi
More informationAdvanced HTTP session management with Oracle Coherence
Advanced HTTP session management with Oracle Coherence Michał Kuratczyk principal solution architect, Oracle Oracle Coherence distributed in memory key value NoSQL data grid for Java,.NET and C++ objects
More informationJava Architectures A New Hope. Eberhard Wolff
Java Architectures A New Hope Eberhard Wolff http://ewolff.com What happens with a talk titled like this? Architecture of Enterprise Java Apps How can I implement a new feature??? ! ECommerce System
More informationCom S/Geron 415X Gerontechnology in Smart Home Environments Lecture 9 Intro to Service Computing. Dr. Hen-I Yang ComS Dept., ISU
Com S/Geron 415X Gerontechnology in Smart Home Environments Lecture 9 Intro to Service Computing Dr. Hen-I Yang ComS Dept., ISU Feb. 22, 2011 Reflection Peeking Ahead Today (2/22) Introduction to Service
More informationPowered by. These slides are powered by Open Source softwares : Debian GNU Linux Beamer LaTeX mode LaTeX Emacs. Context. Last night OSGi saved my life
Powered by Context These slides are powered by Open Source softwares : Debian GNU Linux Beamer LaTeX mode LaTeX Emacs Course menu... Context 1 Context 2 3 4 5 Summary I Context the application Original
More informationOSGi & Java Modularity
OSGi & Java Modularity Jazoon 2009, Zürich by Peter Kriens Productivity Application Complexity Productivity Assembly Application Complexity Productivity Structured Programming Assembly Application Complexity
More information1.2. Name(s) and address of Document Author(s)/Supplier: Sahoo: 1.3. Date of This Document: 12 July 2008
01234567890123456789012345678901234567890123456789012345678901234567890123456789 1. Introduction 1.1. Project/Component Working Name: Modularization of GlassFish using OSGi 1.2. Name(s) and e-mail address
More informationSmartPatch. Installation Manual Version 6.x
SmartPatch Installation Manual Version 6.x Copyright Copyright 2017 Brand-Rex Ltd. All rights reserved. No part of this publication or of the SmartPatch software, in source code or object code form, may
More informationFirst Steps in RCP. Jan Blankenhorn, WeigleWilczek GmbH, Stuttgart, Germany. February 19th, 2009
First Steps in RCP Jan Blankenhorn, WeigleWilczek GmbH, Stuttgart, Germany February 19th, 2009 Agenda» About us» RCP Architecture and Bundles» Extension Points and Views» Bundle Dependencies 2 Jan Blankenhorn»
More informationLearning Karaf Cellar
Learning Karaf Cellar Jean-Baptiste Onofré Chapter No. 1 "Apache Karaf Provisioning and Clusters" In this package, you will find: The author s biography A preview chapter from the book, Chapter no.1 "Apache
More informationWhat s next for e4. Tom Schindl Website:
What s next for e4 Tom Schindl Twitter: @tomsontom Website: http://www.bestsolution.at About Tom CTO BestSolution.at Systemhaus GmbH Eclipse Committer e4 Platform EMF Project
More information20. Eclipse and Framework Extension Languages
20. Eclipse and Framework Extension Languages Prof. Uwe Aßmann TU Dresden Institut für Software und Multimediatechnik Lehrstuhl Softwaretechnologie Version 11-1.0, 12/17/11 Design Patterns and Frameworks,
More informationSpring Dynamic Modules
June 10-11, 2008 Berlin, Germany Spring Dynamic Modules by Example Martin Lippert Gerd Wütherich Agenda Spring Overview of the Spring framework A short example Spring Dynamic Modules Overview of Spring
More informationGlassFish : From the clustering to the cloud. Fabien LEROY
GlassFish : From the clustering to the cloud Fabien LEROY 10/02/2012 A few words about SERLI Software engineering company based in France 65 people Small company working for big ones 80% of the business
More informationIs OSGi Modularity Always Worth It? Glyn Normington
Is OSGi Modularity Always Worth It? Glyn Normington Agenda Costs and benefits Case studies When is OSGi worth it? OSGi Benefits Encapsulated module internals Easier to understand, maintain, and extend
More informationWebSphere Application Server Support for OSGi Applications
23/03/2011 WebSphere Application Server Support for OSGi Applications 2009 IBM Corporation Agenda Standards and Open Source WAS v7 OSGi Feature Pack WAS v8 Beta OSGi Applications Support WAS v8 Beta Demo
More informationModular Java EE in the cloud
Modular Java EE in the cloud A practical guide to mixing java EE and OSGi Jfokus 2013 Practical Guide to Modularity in the Cloud Age Jfokus 2013 Bert Ertman Fellow at Luminis in the Netherlands JUG Leader
More informationMicroservices Beyond the Hype. SATURN San Diego May 3, 2016 Paulo Merson
Microservices Beyond the Hype SATURN San Diego May 3, 2016 Paulo Merson Our goal Try to define microservice Discuss what you gain and what you lose with microservices 2 Defining Microservice Unfortunately
More informationTutorial: Developing a Simple Hello World Portlet
Venkata Sri Vatsav Reddy Konreddy Tutorial: Developing a Simple Hello World Portlet CIS 764 This Tutorial helps to create and deploy a simple Portlet. This tutorial uses Apache Pluto Server, a freeware
More information8. Component Software
8. Component Software Overview 8.1 Component Frameworks: An Introduction 8.2 OSGi Component Framework 8.2.1 Component Model and Bundles 8.2.2 OSGi Container and Framework 8.2.3 Further Features of the
More informationOSGi in WebSphere : The Story so far
OSGi in WebSphere : The Story so far, IBM Hursley chris.wilkinson@uk.ibm.com Disclaimer IBM s statements regarding its plans, directions, and intent are subject to change or withdrawal without notice at
More informationJBI based ESB as backbone for SOI applications. Michael Wisler Zühlke Engineering AG Submission ID: 687
JBI based ESB as backbone for SOI applications Michael Wisler Zühlke Engineering AG Submission ID: 687 Goal of this talk 2 This session brings the JBI (Java Business Integration) standard in contex t to
More informationCreating an application with dm Server
Creating an application with dm Server GreenPages: a demonstration Christopher Frost Ben Hale Rob Harrop Glyn Normington Steve Powell Andy Wilkinson 2.0.0.RC1 Abstract Spring application programmers are
More informationJava Platform, Enterprise Edition 6 with Extensible GlassFish Application Server v3
Java Platform, Enterprise Edition 6 with Extensible GlassFish Application Server v3 Jerome Dochez Mahesh Kannan Sun Microsystems, Inc. Agenda > Java EE 6 and GlassFish V3 > Modularity, Runtime > Service
More informationSpring Framework 5.0 on JDK 8 & 9
Spring Framework 5.0 on JDK 8 & 9 Juergen Hoeller Spring Framework Lead Pivotal 1 Spring Framework 5.0 (Overview) 5.0 GA as of September 28 th, 2017 one week after JDK 9 GA! Embracing JDK 9 as well as
More informationBiZZdesign. InSite Server Installation Guide
BiZZdesign InSite Server Installation Guide 2015-02-02 www.bizzdesign.com 2 Table of contents 1. Introduction 4 2. System requirements 5 3. Contents of the installation bundle 6 4. InSite Server installation
More informationCOPYRIGHTED MATERIAL
Introduction xxiii Chapter 1: Apache Tomcat 1 Humble Beginnings: The Apache Project 2 The Apache Software Foundation 3 Tomcat 3 Distributing Tomcat: The Apache License 4 Comparison with Other Licenses
More informationDistributed OSGi through Apache CXF and Web Services
Distributed OSGi through Apache CXF and Web Services Irina Astrova Arne Koschel Institute of Cybernetics Faculty IV, Department for Computer Science Tallinn University of Technology University of Applied
More informationService Discovery and Remote Services with the Eclipse Communication Framework
Service Discovery and Remote Services with the Eclipse Communication Framework Jan S. Rellermeyer, ETH Zürich Markus Kuppe, Versant GmbH Scott Lewis, Code 9 2008 by the ECF team; made available under the
More informationCreating an application with the Virgo Web Server
Creating an application with the Virgo Web Server GreenPages: a demonstration Christopher Frost Ben Hale Rob Harrop Glyn Normington Steve Powell Andy Wilkinson Abstract 2.1.0.CI-10 Warning Please note
More informationGlassFish Survival Guide. Alexis Moussine-Pouchkine GlassFish Team Sun Microsystems
GlassFish Survival Guide Alexis Moussine-Pouchkine GlassFish Team Sun Microsystems 1 Agenda Resources Release numbering Installers Profiles Config files Deployment options Update Center Useful asadmin
More informationMIGRATION GUIDE DIGITAL EXPERIENCE MANAGER 7.2
1 SUMMARY 1 INTRODUCTION... 4 2 HOW TO UPGRADE FROM DIGITAL EXPERIENCE MANAGER 7.1 TO 7.2... 5 2.1 Code base review and potential impacts... 5 2.2 Deployment scripts/procedure review... 5 2.3 Test environment
More informationGetting to the Next Level with Eclipse Concierge
EclipseCon Europe 26 th October 2016 Getting to the Next Level with Eclipse Concierge Jan S. Rellermeyer, IBM Research Tim Verbelen, iminds - Ghent University Jochen Hiller, Deutsche Telekom AG Important
More informationSOA-14: Continuous Integration in SOA Projects Andreas Gies
Tooling for Service Mix 4 Principal Architect http://www.fusesource.com http://open-source-adventures.blogspot.com About the Author Principal Architect PROGRESS - Open Source Center of Competence Degree
More informationOSGi Subsystems from theory to practice Glyn Normington. Eclipse Virgo Project Lead SpringSource/VMware
from theory to practice Glyn Normington Eclipse Virgo Project Lead SpringSource/VMware 1 Software rots 2 modularity helps 3 but... 4 A clean design 5 without enforcement 6 works fine for a while 7 then
More informationOSGi Cloud Ecosystems. David Bosschaert Principal Engineer, JBoss/Red Hat March 2013
OSGi Cloud Ecosystems David Bosschaert Principal Engineer, JBoss/Red Hat david@redhat.com March 2013 Agenda PaaS today OSGi Cloud Ecosystems 'Demo' PaaS offerings today (1) General deployment containers
More informationWSO2 Platform Offerings for Developers
WSO2 Platform Offerings for Developers Version 1.1 (February 03, 2014) Table of Contents Application Development... 03 Jaggery for JavaScript-Based Web and REST Style Applications... 03 Tooling for Development...
More informationStudienarbeit Nr Web-based Application Integration: Advanced Business Process Monitoring in WSO2 Carbon. Jakob Krein
Institut für Architektur von Anwendungssystemen Universität Stuttgart Universitätsstraße 38 D 70569 Stuttgart Studienarbeit Nr. 2311 Web-based Application Integration: Advanced Business Process Monitoring
More informationDependencies, dependencies, dependencies
Dependencies, dependencies, dependencies Marcel Offermans!"#$%&'&()"* 1 Marcel Offermans Fellow and Software Architect at Luminis Technologies marcel.offermans@luminis.nl Member and Committer at Apache
More informationThink Small to Scale Big
Think Small to Scale Big Intro to Containers for the Datacenter Admin Pete Zerger Principal Program Manager, MVP pete.zerger@cireson.com Cireson Lee Berg Blog, e-mail address, title Company Pete Zerger
More informationEclipse 4.0. Jochen Krause EclipseSource
Eclipse 4.0 Jochen Krause jkrause@eclipsesource.com EclipseSource based on EclipseCon 2008 talk by Mike Wilson, Jochen Krause, Jeff McAffer, Steve Northover 2008 EclipseSource December 2008 e4 adapting
More informationSentences Installation Guide. Sentences Version 4.0
Sentences Installation Guide Sentences Version 4.0 A publication of Lazysoft Ltd. Web: www.sentences.com Lazysoft Support: support@sentences.com Copyright 2000-2012 Lazysoft Ltd. All rights reserved. The
More informationThe Interceptor Architectural Pattern
Dr.-Ing. Michael Eichberg eichberg@informatik.tu-darmstadt.de The Interceptor Architectural Pattern Pattern-oriented Software Architecture Volume 2 Patterns for Concurrent and Networked Objects; Douglas
More informationOSGi In Action: Creating Modular Applications In Java By Richard Hall, Karl Pauls READ ONLINE
OSGi In Action: Creating Modular Applications In Java By Richard Hall, Karl Pauls READ ONLINE If looking for the book OSGi in Action: Creating Modular Applications in Java by Richard Hall, Karl Pauls in
More informationGetting started with Geomajas. Geomajas Developers and Geosparc
Getting started with Geomajas Geomajas Developers and Geosparc Getting started with Geomajas by Geomajas Developers and Geosparc 1.12.0-SNAPSHOT Copyright 2010-2014 Geosparc nv Abstract Documentation for
More informationCreating an application with dm Server
Creating an application with dm Server GreenPages: a demonstration Christopher Frost Ben Hale Rob Harrop Glyn Normington Steve Powell Andy Wilkinson 2.0.0.M3 Abstract Spring application programmers are
More informationSpring Web Services Tutorial With Example In
Spring Web Services Tutorial With Example In Eclipse Bottom Up In addition to creating a basic web service and client, the article goes a step further This article will be using the Eclipse IDE (Kepler),
More informationStruts: A Quick Installation Guide
Struts: A Quick Installation Guide Presented by DevelopIntelligence LLC Struts: A Quick Installation Guide Locating Struts Struts Dependencies Installing Struts Advanced Installation Locating Struts Struts
More informationJava Modularity Support in OSGi R4. Richard S. Hall ApacheCon (San Diego) December 14 th, 2005
Java Modularity Support in OSGi R4 Richard S. Hall ApacheCon (San Diego) December 14 th, 2005 Modularity What is it? What is Modularity? (Desirable) property of a system, such that individual components
More informationExpeditor Client for Desktop. Web Container and Web Applications
Expeditor Client for Desktop and Applications Expeditor Client for Desktop Contents This presentation covers these topics: Application capabilities application infrastructure Plug-in descriptions applications
More informationMonitoring and Managing Computer Resource Usage on OSGi Frameworks
Monitoring and Managing Computer Resource Usage on OSGi Frameworks Ikuo YAMASAKI Research Engineer NTT Cyber Solution Laboratories Background: Service Aggregation Platform Operation Center and Home Service
More informationSpringSource dm Server User Guide
SpringSource dm Server User Guide Rob Harrop Paul Kuzan Sam Brannen Damilola Senbanjo Paul Harris Christopher Frost Ben Hale Glyn Normington Juliet Shackell 2.0.5.RELEASE Copyright SpringSource Inc., 2009
More informationSBB. Java User Group 27.9 & Tobias Denzler, Philipp Oser
OpenShift @ SBB Java User Group 27.9 & 25.10.17 Tobias Denzler, Philipp Oser Who we are Tobias Denzler Software Engineer at SBB IT Java & OpenShift enthusiast @tobiasdenzler Philipp Oser Architect at ELCA
More informationDemystifying OSGi bundles Excerpted from
Demystifying OSGi bundles Excerpted from Spring Dynamic Modules in Action EARLY ACCESS EDITION Arnaud Cogoluegnes, Thierry Templier, and Andy Piper MEAP Release: June 2009 Softbound print: Summer 2010
More informationvsphere Client SDK Developer Guide 17 APR 2018 VMware vsphere 6.7 vsphere Client SDK 6.7
vsphere Client SDK Developer Guide 17 APR 2018 VMware vsphere 6.7 vsphere Client SDK 6.7 You can find the most up-to-date technical documentation on the VMware website at: https://docs.vmware.com/ If you
More informationMobilizing the Cloud with AIOLOS
Mobilizing the Cloud with AIOLOS Tim Verbelen (tim.verbelen@intec.ugent.be) iminds Ghent University EclipseCon Europe 29.10.2014 1 The Problem... Connect all kinds of wearable devices in your applications
More information