16 Jan 2014

Open Service Gateway Inisiatif (Open Service Gateaway Inisiatif)

OSGI adalah konsorsium yang didirikan oleh Ericsson, IBM, Oracle, dan Sun. OSGI dikenal juga sebagai Dynamic Module System untuk java. OSGI merupakan framework untuk mengumpulkan komponen (bundle) fungsional dalam membuat suatu program.

OSGI menyediakan services seperti manajemen dalam siklus hidup suatu program dansecurity-nya. Beberapa OSGI yang open source :

a. Equinox

b. Knoplerfish

c. Apache felix

Implementasi dari OSGI adalah membolehkan pengembang aplikasi untuk memecah aplikasi menjadi beberapa modul yang saling tergantung (interdependencies). Dengan begitu, aplikasi lebih mudah untuk diatur.

Keuntungan menggunakan OSGI :

a. Mengurangi kompleksitas dalam perubahan atau penambahan plugins.

b. Komponen OSGI dapat digunakan lagi untuk aplikasi yang lain.

c. Mudah dalam deployment karena menyediakan API yang dapat diintegrasikan dengan sistem manajemen eksternal.

d. Bundle dapat di-update secara dinamik tanpa mengubah sistem dasarnya bila di-uninstall.

e. Adaptif untuk semua service yang tersedia.

f. Beberapa bagian dapat di-shutdown untuk menyelesaikan bug.

Arsitektur OSGI


Model layer dari OSGI :



Keterangan :
  • Bundle adalah komponen OSGI yang dibuat oleh developer. Bundle ini dapat menggunakan service yang disediakan oleh layer lain pada OSGI (seperti security, service binding, life-cycle management, dll.).
  • Services adalah layer yang menghubungkan bundle secara dinamik oleh penawaran dari model (publish-find-bind) untuk objek java. Selain itu, layer ini membolehkanservice bundle untuk didaftarkan (registered).
  • Life-cycle adalah layer yang menyediakan layanan untuk bundle starting, stopping, updating, installing, dan uninstalling dalam framework OSGI. Layer ini memiliki API untuk melakukan layanan tersebut.
  • Modules adalah layer yang menyediakan class dasar untuk loading fungsionalnya.Layer ini juga menjelaskan bagaimana bundle dapat mengimpor dan mengekspor kode.
  • Security adalah layer untuk menangani aspek keamanan (security).
  • Execution environment adalah layer yang menjelaskan method dan class apa yang tersedia dalam platform OSGI.

Sumber: http://www.ekowahyudi.com/2010/01/osgi-open-service-gateway-initiative.html

Tidak ada komentar: