Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

Introduction

Design a Sservice Oriented Architecture seems very obvious for most of us but implies that different parameters are taken into account (layers of the application, definition of the services, granularity, dependency with libraries, infrastructure). The purpose of this tutorial is not at all to teach you on SOA but to draw your attention on points that the developer(s)/deployer(s) will be confronted during the design/development and release management phase. phases.

Designing a Service Oriented Architecture seems very obvious for most of us but implies that different parameters are taken into account :

  • Identification of the layers of the application,
  • Definition of the services,
  • Granularity (what are the boundaries of a service, ...),
  • Dependency with libraries,
  • Infrastructure,

In this second part of the tutorial we will investigate some of the points mentioned and applied them to a real application. The application will be designed around different components (= bundles in the OSGI jargon) and deployed into ServiceMix Kernel. ServiceMix Kernel or SMXKNL is an OSGI platform created top of Apache Felix OSGI server and integrating Spring Dynamic Modules facilitating the build of Spring application and PAX components who provide tools managing deployment of component and web support.

For more information about the projects mentioned, I recommend that you have a look on their respective web site.

Here is the list of the points that we will address in this tutorial first part of the OSGI tutorial, we will show you how to :

  • Create a simple service (derived from the camel-osgi example) module (interface + implementation) and package it as a bundle,
  • Create a Camel context with a small routing and package it as a separate bundle,
  • The Camel routing will use an OSGI reference to call the simple service

...