Sviluppo di architetture orientate ai servizi con EclipseSOA

606 views

Published on

Published in: Technology, Education
0 Comments
1 Like
Statistics
Notes
  • Be the first to comment

No Downloads
Views
Total views
606
On SlideShare
0
From Embeds
0
Number of Embeds
3
Actions
Shares
0
Downloads
6
Comments
0
Likes
1
Embeds 0
No embeds

No notes for slide
  • SOA solution implemented on the distributed ESB pattern Theres no central hub Consumer and provider communicates directly The way in which consumer and provider speaks can be completely customizable You can have a plugin that for a svc consumer calls go to a registry and looks for policies Every aspect of swordfish can be customised by your own implementation There a re api to customise Monitoring - svc lookup Based on proven tech, Goal is to add enterprise features to the apache libraries Completely based on osgi => expandable Developing consumer and providers = develop osgi components
  • PDE è il nome originario, ma serve per sviluppare bundles
  • See the scenario to demonstrate the development of svcs FlightBooking svc orchestrates calls to FRS and PPS
  • The interfaces are described in WSDL => generate code for providers and consumers
  • Spero di avervi convinto che creare una serie di servizi con Eclipse SOA dal punto di vista dello sviluppatore è semplice: non occorre conoscere SOAP, i WS in dettaglio, ecc. E’ sufficiente concentrarsi sulla logica di buz. SOA però è molto di più, non è solo servizi. Vediamo che succede se aggiungo un service registry
  • Swordfish ha delle caratteristiche che gli altri ESB non hanno
  • Swordfish ha delle caratteristiche che gli altri ESB non hanno
  • Sviluppo di architetture orientate ai servizi con EclipseSOA

    1. 1. [Company logo] Dr. Alberto Lagna Chief Technology Officer Biznology srl SOPERA master reseller for Italy Sviluppo di architetture orientate ai servizi con EclipseSOA
    2. 2. <ul><li>Oliver Wolf è architetto e product manager presso SOPERA GmbH , pioniere nella fornitura di servizi di supporto alla realizzazione di soluzioni SOA open source, con sede a Bonn, in Germania. </li></ul><ul><li>Oliver è responsabile della core service platform di SOPERA e contribuisce alla gestione del progetto Swordfish di Eclipse . </li></ul><ul><li>Prima di entrare a far parte del team di SOPERA, Oliver ha ricoperto diverse posizioni nell’ambito della consulenza su architetture software e sulla sicurezza nell’Information Technology. </li></ul>
    3. 3. Why would I want to take a closer look? If you are a software developer… Swordfish makes it easy to develop enterprise services on OSGi. If you are an enterprise architect… Swordfish makes your services enterprise-ready. — Runtime service discovery — Security — Monitoring — Remote configuration
    4. 4. What is Swordfish? Monitoring Plugin Swordfish core Apache ServiceMix 4 Swordfish framework Process Engine (Apache ODE) SOAP Binding (Apache CXF) Swordfish core Apache ServiceMix 4 Swordfish framework JAX-WS Cont. (Apache CXF) Business Code (Java) Business Code (BPEL) Service consumer Service provider SOAP Binding (Apache CXF) Configuration Plugin Registry Plugin Configuration Plugin Registry Plugin Monitoring Plugin SOAP Service Registry Configuration Store lookup register retrieve configuration retrieve configuration Distributed ESB Configuration Plugin Registry Plugin
    5. 5. A few words about OSGi and some terms OSGi: A standard for creating highly modular Java applications, based on the concept of bundles. The Swordfish framework requires an OSGi runtime (usually Eclipse Equinox). Bundle: A module containing Java implementation classes and additional data that can be deployed into an OSGi runtime environment. A bundle can provide code to and use code from other bundles, allowing for better modularization. Target platform: A set of OSGi bundles that defines the runtime environment for the bundles you create in your Eclipse workspace. The Swordfish target platform contains the Swordfish framework and the plug-ins you intend to use. PDE : Plug-in development environment, the Eclipse perspective and tools you use to create bundles with the Eclipse IDE.
    6. 6. <ul><li>Set swordfish as target platform (use proper OSGi bundles) </li></ul>
    7. 7. bookFlight(flight,payment) reserveFlight(flight) processPayment(payment) Demonstration Scenario (business view) The FlightBooking service is a composite service that orchestrates calls to the FlightReservation and PaymentProcessing services. FlightReservation Service PaymentProcessing Service FlightBooking Service
    8. 8. Demonstration Scenario (technical view) OSGi Runtime 1 OSGi Runtime 2 SOAP/HTTP SOAP/HTTP SOAP/HTTP <Envelope> <Body> <bookFlight> <flightData> <flightNumber> LH455 </flightNumber> <date>2009-10-10</date> </flightData> <paymentData> <creditCardNumber> 1234567843218765 </creditCardNumber> <creditCardExpiry> 10/10 </creditCardExpiry> </paymentData> </bookFlight> </Body> </Envelope> <Envelope> <Body> <processPayment> <paymentData> <creditCardNumber> 1234567843218765 </creditCardNumber> <creditCardExpiry> 10/10 </creditCardExpiry> </paymentData> </processPayment> </Body> </Envelope> <Envelope> <Body> <reserveFlight> <flightData> <flightNumber> LH455 </flightNumber> <date>2009-10-10</date> </flightData> </reserveFlight> </Body> </Envelope> FlightReservation Provider PaymentProcessing Provider FlightBooking Provider PaymentProcessing Consumer PaymentProcessing Provider FlightReservation Consumer
    9. 9. bookFlight(flight,payment) reserveFlight(flight) processPayment(payment) OSGi Runtime 1 OSGi Runtime 2 SOAP/HTTP SOAP/HTTP SOAP/HTTP ✔ FlightReservation Provider PaymentProcessing Provider FlightBooking Provider PaymentProcessing Consumer PaymentProcessing Provider FlightReservation Consumer
    10. 10. bookFlight(flight,payment) reserveFlight(flight) processPayment(payment) OSGi Runtime 1 OSGi Runtime 2 SOAP/HTTP SOAP/HTTP SOAP/HTTP ✔ ✔ FlightReservation Provider PaymentProcessing Provider FlightBooking Provider PaymentProcessing Consumer PaymentProcessing Provider FlightReservation Consumer
    11. 11. bookFlight(flight,payment) reserveFlight(flight) processPayment(payment) OSGi Runtime 1 OSGi Runtime 2 SOAP/HTTP SOAP/HTTP SOAP/HTTP ✔ ✔ ✔ FlightReservation Provider PaymentProcessing Provider FlightBooking Provider PaymentProcessing Consumer PaymentProcessing Provider FlightReservation Consumer
    12. 12. If you are a software developer… Swordfish makes it easy to develop enterprise services on OSGi. If you are an enterprise architect… Swordfish makes your services enterprise-ready. — Runtime service discovery — Security — Monitoring — Remote configuration ✔ Why would I want to take a closer look?
    13. 13. Why would I want to take a closer look? If you are a software developer… Swordfish makes it easy to develop enterprise services on OSGi. If you are an enterprise architect… Swordfish makes your services enterprise-ready. — Runtime service discovery — Security — Monitoring — Remote configuration ✔ ✔
    14. 14. Q&A Dr. Alberto Lagna Chief Technology Officer Biznology srl SOPERA master reseller for Italy [email_address] www.sopera.de www.biznology.it

    ×