Pendekatan Service Oriented Architecture pada Aplikasi Web yang Menerapkan Collective Intelligence


Semua aplikasi web umumnya terdiri dari server aplikasi atau web server,  yang melayani permintaan HTTP atau HTTPS yang dikirim dari browser pengguna, dan sebuah basis data yang menyimpan persistent state aplikasi. Beberapa aplikasi ada yang menggunakan messeging server untuk pemrosesan secara asinkron melalui event-driven Service-Oriented Architecture (SOA). Cara terbaik untuk memasukkan intelligence di aplikasi kita adalah dengan membangun aplikasi ini sebagai sebuah service.

Ketika pengguna berinterkasi dengan aplikasi web, dapat berupa melihat artikel atau video, melakukan rating terhadap suatu pertanyaan tertentu, atau dengan menulis blog, pengguna tersebut sebenernya memberikan informasi yang dapat dikonversi ke dalam intelligence tentang dirinya. Pada Gambar 1 ditunjukkan arsitektur near-real-time intelligence di aplikasi web dengan menggunakan event-drivem SOA.

Event-Driven SOA
Gambar 1. Arsitektur yang memasukkan dan mengambil intelligence di sistem event-driven SOA

Web server menerima permintaan HTTP dari pengguna. Di dalamnya terdapat service untuk melakukan pembaharuan riwayat transaksi pengguna. Service tersebut dapat berupa penambahan secara sederhana item-item riwayat transaksi ke dalam memori dan secara periodik mengirim item-item tersebut baik ke basis data atau ke messaging server.

Pemrosesan real-time dapat terjadi ketika sebuah pesan dikirim ke messaging server, di mana selanjutnya server ini mengirimkan pesan ini ke beberapa service-service pembelajaran intelligence. Service-service ini akan memproses dan menyimpan informasi untuk memperbaharui profil pengguna, memperbaharui mesin rekomendasi, dan memperbaharui beberapa model prediktif. Jika pembelajaran ini cukup cepat, maka ada kesempatan untuk profil pengguna yang sudah diperbaharui direfleksikan ke dalam informasi personalisasi yang nantinya ditunjukkan ke pengguna  pada waktu yang akan datang.

Arsitektur event-driven SOA direkomendasikan untuk sistem intelligent di aplikasi web karena memiliki kelebihan :
1. Arsitektur ini memberikan pemrosesan real time yang cukup baik dimana semua transaksi pengguna diproses secara terpisah / terdistribusi.
2. Arsitektur ini merupakan solusi yang punya skalabilitas tinggi. Kita dapat menambah service-service secara bebas.
3. Arsitektur ini tidak terlalu komplek untuk diimplementasikan karena didukung dengan adanya standar messaging server yang mudah diintegrasikan ke dalam aplikasi kita.

Pustaka:
[1] Alag, Satnam. “Collective Intelligence in Acttion”. Manning Publications Co. 2009


Tinggalkan Balasan