Your SlideShare is downloading. ×
0
OSGi Community Event 2010 - Enterprise Platform over OSGi - Migration Diary
OSGi Community Event 2010 - Enterprise Platform over OSGi - Migration Diary
OSGi Community Event 2010 - Enterprise Platform over OSGi - Migration Diary
OSGi Community Event 2010 - Enterprise Platform over OSGi - Migration Diary
OSGi Community Event 2010 - Enterprise Platform over OSGi - Migration Diary
OSGi Community Event 2010 - Enterprise Platform over OSGi - Migration Diary
OSGi Community Event 2010 - Enterprise Platform over OSGi - Migration Diary
OSGi Community Event 2010 - Enterprise Platform over OSGi - Migration Diary
OSGi Community Event 2010 - Enterprise Platform over OSGi - Migration Diary
OSGi Community Event 2010 - Enterprise Platform over OSGi - Migration Diary
OSGi Community Event 2010 - Enterprise Platform over OSGi - Migration Diary
OSGi Community Event 2010 - Enterprise Platform over OSGi - Migration Diary
OSGi Community Event 2010 - Enterprise Platform over OSGi - Migration Diary
OSGi Community Event 2010 - Enterprise Platform over OSGi - Migration Diary
OSGi Community Event 2010 - Enterprise Platform over OSGi - Migration Diary
OSGi Community Event 2010 - Enterprise Platform over OSGi - Migration Diary
OSGi Community Event 2010 - Enterprise Platform over OSGi - Migration Diary
OSGi Community Event 2010 - Enterprise Platform over OSGi - Migration Diary
OSGi Community Event 2010 - Enterprise Platform over OSGi - Migration Diary
OSGi Community Event 2010 - Enterprise Platform over OSGi - Migration Diary
OSGi Community Event 2010 - Enterprise Platform over OSGi - Migration Diary
OSGi Community Event 2010 - Enterprise Platform over OSGi - Migration Diary
OSGi Community Event 2010 - Enterprise Platform over OSGi - Migration Diary
OSGi Community Event 2010 - Enterprise Platform over OSGi - Migration Diary
OSGi Community Event 2010 - Enterprise Platform over OSGi - Migration Diary
OSGi Community Event 2010 - Enterprise Platform over OSGi - Migration Diary
OSGi Community Event 2010 - Enterprise Platform over OSGi - Migration Diary
Upcoming SlideShare
Loading in...5
×

Thanks for flagging this SlideShare!

Oops! An error has occurred.

×
Saving this for later? Get the SlideShare app to save on your phone or tablet. Read anywhere, anytime – even offline.
Text the download link to your phone
Standard text messaging rates apply

OSGi Community Event 2010 - Enterprise Platform over OSGi - Migration Diary

718

Published on

OSGi Community Event 2010 - Enterprise Platform over OSGi - Migration Diary (Katya Todorova - SAP Labs

OSGi Community Event 2010 - Enterprise Platform over OSGi - Migration Diary (Katya Todorova - SAP Labs

Published in: Technology
0 Comments
0 Likes
Statistics
Notes
  • Be the first to comment

  • Be the first to like this

No Downloads
Views
Total Views
718
On Slideshare
0
From Embeds
0
Number of Embeds
1
Actions
Shares
0
Downloads
8
Comments
0
Likes
0
Embeds 0
No embeds

Report content
Flagged as inappropriate Flag as inappropriate
Flag as inappropriate

Select your reason for flagging this presentation as inappropriate.

Cancel
No notes for slide

Transcript

  • 1. Katya Todorova | SAP Labs Bulgaria Enterprise Platform Over OSGi: Migration Diary
  • 2. Background
  • 3. SAP NetWeaver - overview Intrinsic capabilities • Clustering • Life-cycle • Isolation • Monitoring Extensibility of platform capabilities
  • 4. ~24 Million Lines of Java code and 255k number of classes ~5000 applications deployed on server Runtime view
  • 5. SAP NetWeaver over OSGi Project roadmap Goals • Define a migration path to OSGi for the Java Server • Provide a compatibility layer (passive as much as possible), which shields non-migrated components Out of scope • Re-componentization of the whole java stack • Ready-to-use installation Time Frame • September, 2008 – January, 2009 Planned effort • 7 Developers Challenges • Dependency and risk management
  • 6. Migration path Component repackaging concept Server initialization Server bootstrapping Configuration of migrated components Compatibility layer design Verify backwards compatibility Build & test infrastructure
  • 7. Compatibility layer Service Manager • Perhaps the most obvious Class Loading • Perhaps the most dangerous Event Infrastructure • Perhaps the most underestimated Runtime aspects of automatic repackaging Properties / Configuration Work directory / File structure Monitoring / Administration Replaced by DS Special considerations: • NW interfaces registered in OSGi after provider service appear • Mapping between component names
  • 8. Compatibility layer Service Manager • Perhaps the most obvious Class Loading • Perhaps the most dangerous Event Infrastructure • Perhaps the most underestimated Runtime aspects of automatic repackaging Properties / Configuration Work directory / File structure Monitoring / Administration Delegation model Loader names Component information in loaders Direct file access Remote class loading Verbose exception messages Application to service references Context class loader
  • 9. Compatibility layer Service Manager • Perhaps the most obvious Class Loading • Perhaps the most dangerous Event Infrastructure • Perhaps the most underestimated Runtime aspects of automatic repackaging Properties / Configuration Work directory / File structure Monitoring / Administration Modeled by OSGi events Special considerations: • Container started • Service started / not started • Interface available / not available • Component loaded / unloaded Event dispatching
  • 10. Compatibility layer Service Manager • Perhaps the most obvious Class Loading • Perhaps the most dangerous Event Infrastructure • Perhaps the most underestimated Runtime aspects of automatic repackaging Properties / Configuration Work directory / File structure Monitoring / Administration Code analysis Special considerations: • Component dependencies
  • 11. Compatibility layer Service Manager • Perhaps the most obvious Class Loading • Perhaps the most dangerous Event Infrastructure • Perhaps the most underestimated Runtime aspects of automatic repackaging Properties / Configuration Work directory / File structure Monitoring / Administration Different mechanisms Nested properties
  • 12. Compatibility layer Service Manager • Perhaps the most obvious Class Loading • Perhaps the most dangerous Event Infrastructure • Perhaps the most underestimated Runtime aspects of automatic repackaging Properties / Configuration Work directory / File structure Monitoring / Administration
  • 13. Compatibility layer Service Manager • Perhaps the most obvious Class Loading • Perhaps the most dangerous Event Infrastructure • Perhaps the most underestimated Runtime aspects of automatic repackaging Properties / Configuration Work directory / File structure Monitoring / Administration
  • 14. OSGi container inside SAP NetWeaver Enable bundle deployment on the server • Ability to run bundles • Add value to the bundle running environment by exposing non-functional features – Supportability – Administration Additionally enable “extension points” using bundles
  • 15. Platform Java Services - overview
  • 16. Alternatives Geronimo • is built around an IoC kernel and deals with GBeans • manages GBean dependencies, state, and lifecycle • kernel injects dependencies into the GBean at runtime according to rules defined in a deployment plan. OSGi • provides a publish/find/bind service model • simplify service registration and handling service dependencies (DS) • Use simple xml descriptor to define service prerequisites (DS)
  • 17. Runtime view ~103 GBeans
  • 18. Platform Java Services over OSGi Project roadmap Goals • Replace low-level runtime/framework with OSGi • Remove Geronimo from the stack Out of scope • Introducing Java EE capabilities • Installation, update, upgrade tools • Changing existing startup mechanism Time Frame • April, 2009 – September, 2009 Planned effort • 7 Developers Challenges • Dependency and risk management
  • 19. Migration path Build & test infrastructure Migration of one type of PJS components Component configuration Supportability Migration of the rest of PJS components Class loading: design Server bootstrapping
  • 20. Startup Geronimo: OSGi: KPI Result Geronimo Result OSGi Used Heap 16.59M (16993K) 12.14M (12144K) Used Perm 25.21M (25811K) 20.79M (21291K) Startup Time 16 sec (16583 ms) 6 sec (5874 ms) Stop Time 1 sec (1148 ms) 1 sec (1146 ms)
  • 21. Switch static to dynamic handling
  • 22. Conclusion Prerequisites for migration to OSGi Favourable Unfavourable IoC component model Component model based on API contract Less environment dependencies Significant environment dependencies No adoption required Adoption required
  • 23. Thank you Katya Todorova SAP Labs Bulgaria katya.todorova@sap.com

×