SPESIFIKASI OSGi
Open Services Gateway Initiative (OSGi) merupakan suatu kontainer, lingkungan deployment dan platform service yang mengimplementasi sebuah model komponen yang dinamis untuk aplikasi yang dikembangkan menggunakan Java. Secara umum, OSGi memecah aplikasi menjadi modul-modul kecil (bundle) yang secara terpisah melakukan proses tersendiri di dalamnya. Bundle-bundle tersebut kemudian saling berinteraksi dalam pertukaran data melalui service-service yang telah didaftarkan ke OSGi container. OSGi dibentuk pada Maret 1999 oleh suatu konsorsium perusahaan-perusahaan teknologi terkemuka dengan misi untuk mendefinisikan suatu platform integrasi untuk interoperabilitas aplikasi dan servis secara universal.
Spesifikasi OSGI yang sekarang digunakan dalam aplikasi
mulai dari ponsel ke open source Eclipse IDE. Wilayah aplikasi lain meliputi
mobil, otomasi industri, otomatisasi bangunan, PDA, komputasi grid, hiburan
(misalnya iPronto), armada manajemen dan aplikasi server. Adapun spesifikasi
yang lain dimana OSGI akan dirancang untuk melengkapi standar perumahan yang
ada, seperti orang-orang LonWorks, CAL, CEBus, HAVi,
dan lain-lain.
OSGi Service Platform terdiri dari :
OSGi FRAMEWORK
OSGi framework menyediakan :
- Sebuah lingkungan eksekusi portabel dan aman berbasis Java
- Sebuah sistem manajemen pelayanan, yang dapat digunakan untuk mendaftar dan berbagi layanan di seluruh bundel dan memisahkan layanan penyedia dari layanan pengguna
- Sebuah sistem modul dinamis, yang dapat digunakan untuk install dan uninstall modul Java, yang disebut bundel di OSGi, secara dinamis.
- Sebuah solusi ringan dan terukur
OSGi SERVICES
OSGI Service Platform mencakup beberapa
layanan umum, dan layanan ini bisa dianggap sebagai aplikasi asli dari OSGi Service Platform.
Beberapa layanan ini adalah fungsi-fungsi horisontal yang selalu dibutuhkan,
seperti logging service dan configuration service. Beberapa
protokol terkait juga dicakup, seperti HTTP service, yang dapat digunakan
oleh aplikasi berbasis web. Dan terakhir, OSGi Service Platform juga
berisi layanan yang secara intrinsik terikat padaframework, yang berarti framework tak
bisa bekerja tanpa mereka, seperti bundle wiring, yang mengelola
sistem modul dinamis itu sendiri, dan start-level service, yang
mengelola proses bootstrap dari framework.
Enterprise OSGi
Enterprise OSGi terdiri dari OSGi framework dan beberapa
OSGi services, bersama-sama mereka menyediakan fitur enterprise. Seperti dapat disimpulkan dari sejarah, OSGi awalnya
digunakan pada pasar embedded. Tetapi dengan seiring dengan popularitas dan
kedewasaan yang semakin meningkat, OSGi bergerak ke pasar enterprise. Untuk
mengatasi kebutuhan ini, OSGi Enterprise Expert Group (EEG) membuat OSGi
Service Platform Enterprise Specification (Enterprise OSGi). Spesifikasi ini
menggabungkan layanan-layanan OSGi yang dapat digunakan secara selektif untuk
menyediakan fungsionalitas perusahaan. Layanan-layanan ini dikelompokkan ke
dalam fitur enterprise.
Kelebihan OSGi :
- Mengurangi kompleksitas
- Dapat digunakan kembali
- Mudah penyebarannya
- Update yang dinamik
- Adaptif
- Transparan
- Banyak versinya
- Sederhana
- Ukuran yang kecil
- Kinerja yang cepat
- Tidak mengganggu kinerja aplikasi lainnya
- Berjalan dimana saja
- Didukung oleh berbagai perusahaan
Kekurangan OSGi :
- Ruang lingkup yang kecil
- Keamanan kurang terjaga dari kejahatan hacker
- Biaya yang mahal untuk pembuatan aplikasi dari OSGi
- Rawan terjadinya pencurian data
- Ukuran penyimpanan yang sangat kecil untuk data yang disimpan
ARSITEKTUR OSGi
Framework yang mengimplementasikan standar OSGi menyediakan lingkungan untuk modularisasi aplikasi ke dalam bundel yang lebih kecil. Framework tersebut secara konseptual dibagi sebagai berikut :
- 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.
Sumber :
0 komentar:
Posting Komentar