Software Architecture - Cara Integrasi Aplikasi

January 27, 2021 by

 Software Architecture
Cara integrasi aplikasi :
1. File sharing => ada kejadian secara lansung antar aplikasi tidak bisa lagi dilakukan, misal penjualan tiap cabang tidak terkoneksi dengan pusat, misal ingin mengirim data cabang ke pusat. Biasanya menggunakan internet, tetapi aplikasi pusat tidak mungkin diexpos di internet, rata2 dijaga di network internal. Integasi dengan file, cabang2 tiap hari mengenerate tiap file dan file itu diupload ke aplikasi yang ada dipusat via email atau harddisk.
Biasanya harus ada birokrasi yg menyebabkan terhambat.
2. Database sharing
Misal aplikasi yg ingin diambil datanya sudah legacy, dan jika development di aplikasi malah jadi problem jika tidak benar hasilnya. Dibanding develop dan buat api di aplikasi yg berjalan atau mengubah legacy system, lebih baik kita sharing databasenya. Aplikasi yg butuh tinggal tembak databasenya. Ini bisa dilakukan kalau aplikasinya itu kita bisa akses langsung databasenya, jika aplikasi punya sistem lain atau departemen lain untuk databasenya. Problemnya jika sharing db harus dipastikan bahwa kita tidak melakukan perubahan structure databasenya, sekiranya diubah tidak merubah atau break yg sedang berjalan.

3. Remote procedural invocation
teknik integrasi remote procedural call artinya zaman sekarang namanya integrasi menggunakan API. Sederhananya sistem yang punya data dia akan membuat sebuah method atau procedur atau API yg bisa dipanggil bagi yg membutuhkannya. Jadi dari aplikasi A butuh data dari aplikasi B maka membuat remote procedur maka aplikasi tinggal manggil langsung.
Banyaknya orang membuat restful API.
Jika ada legacy sistem punya departemen lain kita tidak bisa akses databasenya, cukup dengan departement yg punya legacy system itu buat aplikasi baru utk akses database yg legacy dan membuat api (remote procedural), aplikasi yg butuh tinggal call aja.
Problemnya remote procedural call itu blocking, artinya kita nembak sistem yg punya data dan tunggu sampai sistem yg puya data itu merespon lalu kita ambil datanya dan selama kita menunggu kita tidak bisa melakukan apapun. Kita seperti block nunggu respon dari yg puya data, jika yg punya data itu lambat bngt aplikasi kita kena impactnya jadi lambat juga.
4. Messaging
Message broker artinya dibanding kita harus call api yg punya datanya kita cukup menggunakan sistem message broker di tengah2 nya, jadi mengirim data dari aplikasi A ke aplikasi B, tinggal kirim ke message broker nya, nanti aplikasi B akan ambil data dari message broker. Jadi ketika aplikasi A slow atau lemot maka aplikasi B tidak peduli akan hal tersebut. Kecepatannya tidak akan tidak turun. Rumitnya dari messaging ini adalah proses yg tadinya synchronus, block, akan berubah menjadi asynchronous artinya fire and forget, jadi misalnya coba implementasi messaging, maka harus beda pradigm menjadi asynchronous.
Kendala yg dihadapi messaging sistem.
 

0 comments:

Post a Comment