Penjelasan Middleware dalam Pemrograman
Middleware sesuai dengan namanya 'Middle' artinya tengah, Middleware merupakan software penghubung yang menghubungkan bagian-bagian berbeda pada sebuah aplikasi. Middleware dapat diumpamakan dengan lem yang menyatukan jaringan atau komputer-komputer yang terhubung di dalamnya. Middleware juga bisa sebagai perangkat adapter yang menghubungkan dua perangkat atau lebih contohnya sebuah printer baru dengan komputer lama. Dari kedua contoh di atas bisa disimpulkan bahwa Middleware merupakan sebuah aplikasi yang secara logic berada diantara lapisan aplikasi (application layer) dan lapisan data dari sebuah arsitektur layer-layer TCP/IP.
Berikut beberapa contoh dari Middleware:
1. CORBA (Common Object Request Broker Architecture)
COBRA merupakan sebuah spesifikasi middleware yang ideal untuk mendukung dan mengaplikasikan sistem komputer terdistribusi. Arsitektur CORBA berbasis pada model objek. Model ini berasal dari abstraksi inti model objek yang didefinisikan oleh OMG dalam sebuah petunjuk OMA (Object Management Architecture). CORBA bersifat open, maksudnya bahwa CORBA bisa dipakai oleh setiap orang yang ingin menggunakan standarisasi CORBA ini. Sehingga akan muncul perbedaan-perbedaan dalam menggunakannya, seperti perbedaan platform ataupun bahasa pemrograman. Tetapi hal ini justru menjadi kelebihan CORBA bahwa CORBA mampu mengkomunikasikan sistem yang memiliki perbedaan-perbedaan tersebut.
2. DCOM (Distributed Component Object Model)
DCOM merupakan protokol yang berfungsi untuk mengaktifkan komponen pada perangkat lunak (software) agar dapat berkomunikasi langsung dengan jaringan. (Spangler, 2004). Tujuan DCOM adalah agar komponen yang telah dibuat dapat diregister di suatu komputer dan di akses oleh banyak komputer lain. DCOM sendiri bukan merupakan teknologi beru karena teknologi ini banyak dipakai dalam sistem distribusi pada sistem jaringan TCP/IP.Protokol yang digunakan oleh DCOM antara lain:
a. Protokol TCP/IP
b. Protokol UDP/IP
c. Protokol HTTP
d. Protokol RPC
Secara umum DCOM menerapkan sistem Klien Server sehingga terdapat istilah DCOM klien dan DCOM server. Cara kerja DCOM yang menggunakan Remote Procedure Call dimana Object diletakkan di dalam Back-End (Server) dalam bentuk file Dll (Dynamic Linking Library) dan klien akan mengakses objek tersebut melalaui media jaringan yang ada. DCOM merupakan ektensi dari Component Object Model (COM). Pada COM kita melihat bagaimana suatu komponen client saling berinteraksi. Interaksi ini dapat didefinisikan sebagai hubungan secara langsung antara komponen (COM Server) dan COM Client. Aplikasi client memanggil method yang ada di komponen COM tanpa perantara apapun dan terjadi dalam suatu proses baik pada aplikasi client maupun komponen itu sendiri. Sedangkan pada sistem operasi yang baru proses akan dilindungi dari gangguan proses yang lain sehingga aplikasi client tidak akan langsung mamanggil komponen tetapi melalui interproses yang disediakan oleh sistem operasi. Ketika client dan server pada tempat yang berbeda, DCOM akan menggantikan lokal interproses yang berkomunikasi dengan sebuah jaringan protokol. Melalui protokol DCOM ini, aplikasi client dapat mengakses DCOM server. DCOM juga menyembunyikan lokasi suatu komponen sehingga aplikasi tinggal langsung memanggil method yang ada di komponen DCOM. Lokasi DCOM yang independen inilah yang membuat penyederhanaan pada penerapan sistem distribusi suatu komponen dan juga meningkatkan performance. Bayangkan kita mempunyai komponen yang banyak dan kemudian dilakukan distribusi ke jaringan LAN, maka hal ini akan meningkatkan laju trafik jaringan sehingga komunikasi data pada jaringan LAN ini akan jauh lebih lambat.
3. Remote Method Invocation (RMI)
RMI adalah sebuah teknik pemanggilan method remote yang lebih secara umum lebih baik daripada RPC. RMI menggunakan paradigma pemrograman berorientasi obyek (Object Oriented Programming). RMI memungkinkan kita untuk mengirim obyek sebagai parameter dari remote method. Dengan dibolehkannya program Java memanggil method pada remote obyek, RMI membuat pengguna dapat mengembangkan aplikasi Java yang terdistribusi pada jaringan.
Aplikasi RMI sering kali terdiri dari dua program terpisah yaitu server dan client. Aplikasi server semacam ini biasanya membuat beberapa objek remote, menyediakan referensi terhadap objek-objek tersebut sehingga dapat diakses, serta menunggu client menginvoke/memanggil method dari objek-objek remote tersebut. Aplikasi client mendapatkan referensi remote ke satu atau lebih objek remote di server dan menjalankan method dari objek tersebut.
RMI menyediakan mekanisme dimana server dan client berkomunikasi danmemberikan informasi secara timbal balik. Aplikasi semacam ini seringkali disebut aplikasi objek terdistribusi.
Aplikasi objek terdistribusi seringkali melakukan hal berikut:
a. Melokasikan objek remote
Aplikasi dapat menggunakan satu dari dua mekanisme untuk mendapatkan referensi ke objek remote. Aplikasi dapat mendaftarkan objek remote dengan fasilitas penamaan RMI (naming facility)yaitu rmiregistry atau aplikasi dapat mem-pass dan mengembalikan referensi objek remote sebagai bagian dari operasi normal.
b. Berkomunikasi dengan objek remote
Detail dari komunikasi antara objek remote ditangani oleh RMI, bagi programmer komunikasi remote tampak seperti invokasi method Java standar.
c. Memanggil (load) bytecode untuk objek yang di-pass
Karena RMI mengizinkan pemanggil (caller) untuk mem-pass objek ke objek remote, RMI menyediakan mekanisme yang diperlukan objek me-load kode objek, sebagaimana juga mentransmisikan datanya.
Peran Middleware
Middleware adalah software yang dirancang untuk mendukung pengembangan sistem tersebar dengan memungkinkan aplikasi yang sebelumnya terisolasi untuk saling berhubungan. Dengan bantuan middleware, data yang sama dapat digunakan oleh customer service, akuntansi, pengembangan, dan manajemen sesuai kebutuhan. Implementor Middleware adalah pelaksana middleware. Di sini middleware dapat berfungsi sebagai penerjemah informasi sehingga setiap aplikasi mendapatkan format data yang dapat mereka proses.
Pengertian Middleware adalah sebuah aplikasi yang secara logic berada diantara lapisan aplikasi (application layer) dan lapisan data dari sebuah arsitektur layer-layer TCP/IP [1]. Middleware bisa juga disebut protokol. Protokol komunikasi middleware mendukung layanan komunikasi aras tinggi. Software yang berfungsi sebagai lapisan konversi atau penerjemah yaitu :
1. Software penghubung yang berisi sekumpulan layanan yang memungkinkan beberapa proses dapat berjalan pada satu atau lebih mesin untuk saling berinteraksi pada suatu jaringan juga sebagai integrator.
2. Middleware saat ini dikembangkan untuk memungkinkan satu aplikasi berkomunikasi dengan lainnya walaupun berjalan pada platform yang berbeda.



Komentar
Posting Komentar