Messaging Teknologi Service Message Bus berbasis Open Source

11

2.3 Teknologi Service Message Bus berbasis Open Source

2.3.1 Messaging

Ketika kita akan mengintegrasikan beberapa aplikasi, berbagai aplikasi tersebut harus dapat berkomunikasi satu sama lain dengan cara yang dapat dimengerti satu sama lain. Disamping itu, komunikasi tersebut juga harus reliable, yang berarti data yang dipertukarkan tidak boleh hilang atau rusak ketika dikirimkan. Karena aplikasi-aplikasi tersebut dapat mengirimkan dan menerima data melalui berbagai macam protokol atau berbagai format data yang berbeda, maka sangat- lah sulit untuk menjamin komunikasi yang reliable dalam integrasi sistem yang berbeda, bahkan kita tidak dapat menjamin bahwa sistem yang saling berkomu- nikasi tersebut berjalan pada saat yang bersamaan, sehingga resiko bahwa data akan hilang akan semakin besar. Dalam kondisi seperti ini, kita dapat menggunakan konsep messaging un- tuk pertukaran data. Messaging adalah suatu metode komunikasi antara kompo- nen perangkat lunak atau aplikasi, dimana sebuah message terdiri dari kumpulan data yang dikirim dari sebuah aplikasi ke aplikasi lainnya. Sebuah klien messa- ging dapat menerima message dari atau mengirim message ke klien yang lain. Setiap klien akan terhubung dengan sebuah messaging agent yang menyediakan fasilitas untuk membuat, mengirim, menerima dan membaca message. Komunikasi berbasis messaging antara berbagai komponen yang terdis- tribusi bersifat loosely-coupled. Pengirim dan penerima data tidak perlu saling mengetahui satu sama lain, bahkan tidak perlu harus berjalan pada waktu yang bersamaan. Sebuah komponen mengirimkan message ke suatu tempat tertentu dan penerima message mengambil message dari tempat yang sama. Pengirim dan penerima message harus mengetahui tempat penyimpanan data dan format data yang akan dikirimkan, tapi tidak perlu tahu tentang metode dan cara yang digunakan oleh masing-masing pasangannya. Messaging dikembangkan berdasarkan model komunikasi asynchronous yang berarti bahwa pegirim message tidak memerlukan konfirmasi dari penerima bahwa message sudah diterima. 12

2.3.2 Komunikasi Synchronous dan Asynchronous