Selasa, 24 November 2015

MIDDLEWARE



Middleware adalah perangkat lunak komputer yang menyediakan layanan untuk aplikasi perangkat lunak di luar yang tersedia dari sistem operasi. Hal ini dapat digambarkan sebagai "perangkat lunak lem". Middleware memudahkan pengembang perangkat lunak untuk melakukan komunikasi dan input / output, sehingga mereka dapat fokus pada tujuan khusus dari aplikasi mereka. Middleware adalah perangkat lunak yang menghubungkan komponen perangkat lunak atau aplikasi perusahaan. Middleware adalah lapisan perangkat lunak yang terletak di antara sistem operasi dan aplikasi pada setiap sisi jaringan komputer terdistribusi. Biasanya, mendukung kompleks, aplikasi bisnis perangkat lunak yang didistribusikan. 

Middleware saat ini dikembangkan untuk memungkinkan satu aplikasi berkomunikasi dengan lainnya walaupun berjalan pada platform yang berbeda. Biasa dipakai saat bermigrasi. Contoh MiddlewareJava’s: Remote Procedure CallObject Management Group’s: Common Object Request Broker Architecture (CORBA) Microsoft’s COM/DCOM (Component Object Model)Also .NET Remoting.

Perangkat lunak middleware adalah perangkat lunak yang terletak diantara program aplikasi dan pelayanan-pelayanan yang ada di sistim operasi.Perkembangan middleware dari waktu ke waktu dapat dikategorikan sebagai berikut: On Line Transaction Processing (OLTP), merupakan perkembangan awal dari koneksi antar remote database. Pertama kali ditemukan tahun 1969 oleh seorang engineer di Ford, kemudian diadopsi oleh IBM hingga kini dikenal sebagai proses OLTP. DIGITAL ACMS merupakan contoh lainnya yang sukses pada tahun 70-an dan 80-an. UNIX OLTP lainnya seperti: Encina, Tuxedo pada era 80-an, serta DIGITAL CICS untuk UNIX yang memperkenalkan konsep dowsizing ke pasar.

Remote Procedure Call (RPC), menyediakan fasilitas jaringan secara transparan. Open Network Computing (ONC) merupakan prototipe pertama yang diperkenalkan awal tahun 70-an. Sun unggul dalam hal ini dengan mengeluarkan suatu standar untuk koneksi ke internet. Distributed Computing Environment (DCE) yang dikeluarkan oleh Open Systems Foundation (OSF) menyediakan fungsi-fungsi ONC yang cukup kompleks dan tidak mudah untuk sis administrasinya. Common Object Request Broker Architecture (CORBA), merupakan object-oriented middleware yang menggabungkan fungsi RPC, brokering, dan inheritance. DIGITAL ObjectBroker merupakan salah satu contohnya.

Tipe Layanan Middleware

1. Layanan Sistem Terdistribusi,
Komunikasi kritis, programme-to-programme dan layanan manajemen data. RPC, MOM (Message Oriented Middleware) dan ORB.

2. Layanan Application,
Akses ke layanan terdistribusi dan jaringan, yang termasuk: TP (transaction processing) monitor dan layanan database, seperti Structured Query Language (SQL).

3. Layanan Manajemen Middleware,
Memungkinkan aplikasi dan fungsi dimonitor secara terus menerus untuk menyakinkan unjuk kerja yang optimal pada lingkungan terdistribusi lingkungan komputasi.

Middleware bisa juga disebut protokol. Protokol komunikasi middleware mendukung layanan komunikasi aras tinggi. Biasanya program middleware menyediakan layanan pesan (messaging services ) sehingga aplikasi-aplikasi yang berbeda-beda itu dapat berkomunikasi. Sistem middleware mengikat aplikasi-aplikasi yang terpisah.  Beberapa paket middleware diantaranya adalah DCE (Distributed Computing Environment) dan CORBA (Common Object Request Broker Architecture).

1. CORBA
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 adalah 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 dapat meliputi:
  • Protokol TCP/IP
  • Protokol UDP/IP
  • Protokol HTTP
  • 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.

SUMBER:

1 komentar:

  1. permisi gan, saya ada sedikit tulisan mengenai protokol websocket dalam beberapa bahasa pemrograman berikut: http://datacomlink.blogspot.co.id/2015/11/implementasi-server-websocket-rfc-6455.html ditunggu feedback-nya ya gan, semoga menambah wawasan bersama.. terima kasih gan..

    BalasHapus