150 likes | 302 Views
#SouJava. Thomas Modeneis @thomasmodeneis. Table of contents. • OSGI – Benefits • Developers • Business Re duce , Reuse, Easy Deployment, Dynamic, Adaptive, Fast, Secure. – Architecture • Layering, Modules, Services, Implementations. – Conclusion – Demo – Questions ?.
E N D
#SouJava Thomas Modeneis @thomasmodeneis
Table of contents • OSGI – Benefits • Developers • Business Reduce, Reuse, Easy Deployment, Dynamic, Adaptive, Fast, Secure. – Architecture •Layering, Modules, Services, Implementations. – Conclusion – Demo – Questions ?
BenefitsFor the Developers – OSGi reduces complexity. – Provides a modular architecture – Reduces development and maintenance expenses – Realizes the promise of Component-based systems
Benefits For the Business • Reduces operational costs. • Integrates multiple devices in a networked environment. • Enables: – Tackling costly application development – Maintenance – Remote service management
Reduce, Reuse, Easy Deployment, Dynamic, Adaptive, Fast, Widely Used. – Reduce • Bundles hide their internalsReducingdefects and Simplifying the development – Reuse • Makes it very easy to use third party components • An increasing number of projects providing JARs for OSGi – Easy Deployment • OSGi installation and Management can be as simple as: – Command shell or a CLOUD interface like Amazon's EC2
Reduce, Reuse, Easy Deployment, Dynamic, Adaptive, Fast, Widely Used. Dynamic • Dynamic Model, Developers do not believe this can be done. • However, after some time, they realize it actually works Adaptive • Registry is a dynamic, Service model allows bundles to find out what capabilities are available Small The OSGi R.4 Framework can be implemented in about a 300KB Fast • Linear list, pre-wires bundles, Each bundle knows exactly which bundle provides the class • Significant speed up factor at start up
Reduce, Reuse, Easy Deployment, Dynamic, Adaptive, Fast, Widely Used. Extensively used in many industries Automotive, Mobile Telephon Industrial Automation Eclipse Environment Spring Framework Foundation of IBM Websphere SpringSource DM Server Oracle (formerly BEA) Weblogic Sun's GlassFish Redhat's JBoss
Architecture • A bundle is a JAR file that hides everything By default, there is no sharing. Factories → OSGi service registry. Service Registry → Can Register OSGi service registry under one or more interfaces. → List all registered objects
Conclusion • The key reason OSGi technology is successful and provides very mature componentsystem that actually works • The OSGi component system is actually used to build highly complex applications like IDEs (Eclipse), application servers (GlassFish, IBM Websphere, Oracle/BEA Weblogic, Jonas, JBoss), application frameworks (Spring, Guice), industrial automation, residential gateways, phones, and so much more. • Supported by Key Companies - Oracle, IBM, Samsung, Nokia, Motorola, Siemens, Hitachi, Deutsche Telekom, Redhat, Ericsson, and many more.
Demo Apache CXF (SOAP, XML/HTTP, RESTful HTTP, or CORBA) Apache Karaf Lightweight OSGI container Speaker Service Hello World Karaf & CXF
References • The Javadoc of the OSGi API • The specification PDF • OSGi in different industries and markets • How to Get Started with OSGi • Other Links
Links @soujava https://www.facebook.com/soujava http://goo.gl/unH3z
Thank you #soujava Thomas R Modeneis @thomasmodeneis