Langsung ke konten utama

OSGI (Open Service Gateway Initiative)


Overview
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 dan security-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 membolehkan service 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.
Semoga bermanfaat, bila ada kesulitan dapat comment di blog ini.
Sumber :

Komentar

  1. Kira-kira kegunaannya dalam pembuatan aplikasi apa saja ya, mas?

    BalasHapus
  2. Kegunaannya untuk pembuatan aplikasi yang terdiri dari banyak plugin di java.

    BalasHapus

Posting Komentar

Postingan populer dari blog ini

Pengenalan Design Pattern di Java

Java merupakan pemrograman yang berorientasi objek dengan interface, abstract, dan class sebagai bentuk dasar dari kode. Seorang programmer java yang ingin mencapai level expert apakah cukup dengan mengetahui prinsip OOP ( Object Oriented Programming ) ? Jawabannya tidak. Karena ilmu yang harus dipahami selanjutnya adalah Design Pattern dalam membuat kode Java. Design Pattern adalah solusi umum (konteks) terhadap masalah yang sering muncul dalam aplikasi software . Berdasarkan pengertian tersebut, design pattern terdiri dari tiga elemen dasar, yaitu: Konteks : situasi dimana pattern diterapkan (dan biasanya hal ini berulang) Masalah : tujuan atau batasan yang akan dicapai oleh konteks Solusi : desain umum dari masalah yang akan diselesaikan dan ditentukan batasannya

Kode Contrast Stretching di Matlab

Buatlah filter Untuk memperbaiki citra bean pada gambar (a) dengan menggunakan fungsi T sebagaimana terlihat pada gambar (b). Dimana m1, m2 dan m3 adalah gradient. Temukan nilai m1,m2 dan m3 yang paling optimal sehingga menghasilkan gambar (c).

Pengenalan GridSQL

Overview Gridsql adalah sistem database paralel (terbagi beberapa cluster ) yang didesain untuk solusi data warehouse dan berbasis database PostgreSQL . Gridsql digunakan untuk memaksimalkan penggunaan database dengan data yang sangat besar, sehingga menghasilkan query yang cepat untuk mendapatkan informasi yang diinginkan. Aplikasi gridsql dijalankan di server induk yang terhubung dengan beberapa server ( agent ). Cara gridsql menghasilkan query dengan cepat adalah menempatkan data ke beberapa server agent yang diatur oleh satu server induk ( coordinator) . Saat menjalankan query di server induk, server induk akan menjalankan query yang sama secara paralel di server bawahannya. Sehingga hasil query -nya lebih cepat walau dengan data yang sangat besar. Gridsql dapat dijalankan di beberapa Operating System , seperti : a.        Windows b.       Linux c.        Solaris (seperti linux dalam instalasinya) Gridsql memang sang