Common Object Request Broker Architecture (CORBA)
adalah teknologi yang dipergunakan untuk heterogeneous
computing (sistem komputer dengan berbagai macam
lingkungan). CORBA pada dasarnya menggunakan arsitektur
client-server dimana klien dan server berupa objek. CORBA mendukung apa yang
disebut interoperabilitas, yaitu kemampuan saling bekerjasama antar sistem
computer.
CORBA berbeda dengan RMI, berikut perbedaan CORBA dengan
RMI:
CORBA adalah dapat diimplementasikan dengan sembarang
bahasa pemrograman.
CORBA terdiri dari beberapa mekanisme dimana RMI dapat
termasuk di dalamnya.
Pada RMI tidak menggunakan ORB (Object Request Broker).
Kenapa ada CORBA?
Dapat menangani keberagaman lingkungan antara klien dan
server (dapat diimplementasikan pada bahasa pemrograman yang berbeda). Hal ini
karena CORBA menggunakan apa yang disebut antarmuka (interface) untuk
menjembatani dua buah lingkungan yang berbeda.
Object Request Broker (ORB) merupakan inti dari
CORBA dan bertanggung jawab untuk menjalankan semua mekanisme yang dibutuhkan,
yaitu:
Menemukan implementasi objek untuk memenuhi suatu request
Menyiapkan implementasi objek untuk menerima suatu
request
Melakukan komunkasi data untuk memenuhi suatu request
Sebuah permintaan (request) yang dikirimkan suatu client
ke suatu object implementation akan melewati ORB. Dengan ORB, yang terdiri dari
interface, suatu client dapat berkomunikasi dengan object implementation tanpa
adanya batasan platform, teknologi jaringan, bahasa pemrograman, dan letak
objek. Dengan menggunakan ORB, objek client bisa meminta sebuah method pada
sebuah object server yang bisa saja terdapat dalam satu mesin maupun jaringan
yang berbeda. ORB menerima panggilan dan menemukan objek yang bisa
mengimplementasikan permintaan, mengirim parameter, invoke method, dan
mengembalikan hasil yang diperoleh.
Objek-objek CORBA dispesifikasikan menggunakan interface,
yang merupakan penghubung anatara client dan server. Interface Definition
Language (IDL) digunakan untuk mendefinisikan interface tersebut. IDL
menentukan tipe-tipe suatu objek dengan mendefinisikan interface-interface
objek tersebut. Sebuah interface terdiri dari kumpulan operasi dan parameter operasi
tersebut. IDL hanya mendeskripsikan interface, tidak mengimplementasikannya.
Meskipun sintaks yang dimiliki oleh IDL menyerupai sintaks bahasa pemrograman
C++ dan Java., perlu diingat, IDL bukan bahasa pemrograman.
CORBA mendefinisikan IIOP (Internet Inter-ORB Protocol)
untuk mengatur bagaimana objek berkomunikasi melalui jaringan. IIOP merupakan
open protocol yang berjalan diatas TCP/IP.
Pada Java, CORBA merupakan pelengkap untuk menyediakan
framework distribusi objek, services pendukung framework itu, dan kemampuan
antar operasi dengan bahasa pemrograman lainnya. CORBA untuk client-server
menggunakan protokol IIOP (Internet InterORB Protocol) untuk komunikasi antara
server dan klien.
Skeletons adalah bagian kode yang dibangin pada kode implementasi server pada antarmuka (interface). Stub adalah bagian kode yang membuat antarmuka (interface) dapat diakse (available) oleh klien.
Java
menyediakan ORB (Object Request Broker) yang mendukung teknologi CORBA. ORB
adalah komponen runtime yang dapat digunakan untuk distributed computing
menggunakan komunikasi IIOP. OMG (Object Management Group) adalah industri yang
membuat spesifikasi dan mempublikasikan CORBA.
Java IDL
(Interface Definition Langauge) merupakan sebuah teknologi untuk distribusi
objek
yang berinteraksi antar platform. CORBA menggunakan IDL untuk membuat antarmuka
(interface). Java IDL adalah implementasi dari teknologi antarmuka pada CORBA.
Model pemrograman IDL atau biasa disebut Java IDL terdiri dari ORB CORBA dan
kompiler idlj yang memetakan OMG IDL ke Java dengan menggunakan Java CORBA ORB.
Aplikasi CORBA dibuat dengan menggunakan IDL untuk mendefinisikan antarmuka
objek agar dapat diakses oleh klien maupun server.
Tidak ada komentar:
Posting Komentar