Rekayasa Perangkat Lunak – Menuju AI — Teknologi, Sains, dan Rekayasa Terbaik

Pengarang: Gul Irsyad

Menyelam Jauh ke dalam Arsitektur Berbasis Peristiwa

pengantar

Pola arsitektur yang digerakkan oleh peristiwa adalah pola arsitektur asinkron terdistribusi yang terkenal yang digunakan untuk membangun aplikasi yang sangat skalabel. Arsitektur ini menerapkan peristiwa untuk memicu dan berinteraksi di antara layanan yang dipisahkan dan populer di aplikasi modern yang dikembangkan dengan layanan mikro. Arsitektur yang digerakkan oleh peristiwa dapat dilihat di keranjang belanja situs web e-niaga. Ini membawa beberapa peristiwa seperti menambahkan item ke dalam keranjang, perubahan harga produk, checkout, pembayaran, pengiriman, pemberitahuan pengiriman, dll. Jenis arsitektur ini memfasilitasi aplikasi untuk bereaksi terhadap perubahan dari berbagai sumber selama masa-masa sulit. pemrosesan, tanpa memengaruhi aplikasi atau sumber daya yang terlalu banyak.

Gambar 1: Arsitektur yang digerakkan oleh peristiwa

Arsitektur yang digerakkan oleh peristiwa memiliki berbagai manfaat. Ini memfasilitasi implementasi acara yang menjangkau beberapa layanan dan memberikan konsistensi pada akhirnya. Manfaat tambahannya adalah ia juga memungkinkan aplikasi untuk mempertahankan tampilan yang terwujud.

Topologi Arsitektur Berbasis Peristiwa

Penting untuk memahami topologi arsitektur yang digerakkan oleh peristiwa untuk menyelam lebih dalam ke berbagai sub-pola arsitektur yang digerakkan oleh peristiwa. Pola arsitektur ini didasarkan pada dua topologi utama:

Topologi Mediator

Mediator pusat memainkan peran penting dalam topologi mediator. Biasanya digunakan ketika diperlukan untuk mengatur berbagai langkah dengan suatu peristiwa melalui mediator pusat. Sangat membantu untuk acara yang memiliki banyak acara dan memerlukan beberapa tingkat orkestrasi untuk memproses acara tersebut.

Gambar 2: Topologi Mediator

Contoh: Merancang Program GPS di dalam Kendaraan

Untuk keselamatan kendaraan secara keseluruhan, navigasi, dan rencana perkiraan biaya, data GPS dianggap sebagai titik awal untuk merancang GPS yang tepat untuk kendaraan. Mereka dimaksudkan untuk memberikan tujuan bisnis dan keamanan yang tepat. Ini melibatkan beberapa langkah seperti di bawah ini:

Pelacakan Kendaraan Off-Road → Kendaraan off-road dikenal sebagai semua jenis kendaraan yang mahir dalam mengemudi di dalam dan di luar permukaan beraspal atau kerikil. Data GPS dapat memberikan data kendaraan itu dan saluran masing-masing akan dipicu untuk menganalisis detail lebih lanjut. Estimasi Waktu Perjalanan → GPS menyediakan estimasi waktu perjalanan dari satu lokasi ke lokasi lain dan data ini dapat digunakan lebih lanjut untuk menganalisis dampak bisnis terkait waktu. Navigasi ke Tujuan → Ini sangat membantu bagi perusahaan logistik. Perusahaan logistik menerapkan sistem telematika untuk meningkatkan produktivitas dan keselamatan pengemudi. Konsep ini dapat digunakan untuk mendukung optimalisasi rute, efisiensi bahan bakar, keselamatan pengemudi, dan kesepakatan

Semua langkah ini akan memerlukan beberapa tingkat orkestrasi untuk menentukan langkah-langkah tujuan kebugaran dan yang sekali dapat dilakukan secara serial dan paralel.

Ada empat komponen yang terlibat dalam topologi mediator:

Prosesor Saluran Antrian Mediator

Penengah

Komponen mediator bertindak sebagai orkestra untuk setiap langkah awal. Ini mengidentifikasi jenis peristiwa atau jenis data dan mengirimkannya ke Saluran tertentu.

Gambar 3: Mediator

Beberapa alat hadir untuk menangani topologi mediator. Contoh- jBPM, Mule ESB, Apache Camel, Spring Integration, dll.

Antre

Event Queue digunakan untuk membawa event ke event mediator. Ini adalah semacam sistem antrian pesan perusahaan. Ada beberapa sistem pesan seperti RabbitMQ, Kafka, dll.

Gambar 4: Antrian Acara

Saluran

Saluran acara digunakan oleh mediator acara untuk meneruskan acara tertentu yang terkait dengan setiap langkah dalam acara utama ke pemroses acara. Ini bisa berupa topik pesan atau antrian pesan.

Gambar 5: Saluran Acara

Prosesor

Ini adalah komponen atau aplikasi layanan yang berisi logika bisnis untuk pelaksanaan kebutuhan bisnis pada penerimaan acara. Saat ini, ini adalah komponen berbasis layanan mikro. Ini bisa menjadi konsumen antrian saluran juga.

Topologi Pialang

Dalam topologi Broker, aliran pesan didistribusikan ke seluruh prosesor acara saat menerima acara. Berbeda dengan mediator karena tidak sentral. Ini berguna dalam jenis pemrosesan rantai. sup

Contoh: Desain Sistem Pemesanan Makanan Online

Pemesanan makanan secara online adalah proses pemesanan makanan dari situs web atau aplikasi. Setiap kali pengguna memesan makanan secara online dari aplikasi atau situs web, maka itu menghasilkan acara dan aliran pesan ke berbagai acara untuk menyelesaikan proses pemesanan. Ini adalah semacam rantai aliran yang berbeda:

Pengguna memilih restoran dan memesan makanan. Membayar makanan yang dipesan. Restoran menerima pemberitahuan Mitra pengantaran menerima pemberitahuan Restoran menyerahkan makanan kepada mitra pengantaran Mitra pengantaran mengantarkan makanan kepada pengguna

Gambar 6: Topologi Broker untuk Sistem Pemesanan Makanan

Dalam desain arsitektur di atas, chaining tersedia untuk memenuhi fungsionalitas bisnis. Mekanisme antrian juga diperkenalkan untuk membuatnya lebih terukur dan tepat. Jenis topologi ini umum terjadi ketika aplikasi berkembang atau menyediakan fungsionalitas dan ekstensi di masa mendatang.

Kesimpulan

Saat ini arsitektur yang digerakkan oleh peristiwa sangat populer karena skalabilitasnya yang tinggi dan perilaku asinkron terdistribusi. Ini sangat cocok dalam arsitektur layanan mikro dan menyediakan sistem yang sangat terpisah.

Rekayasa Perangkat Lunak awalnya diterbitkan di Towards AI on Medium, di mana orang-orang melanjutkan percakapan dengan menyoroti dan menanggapi cerita ini.

Diterbitkan melalui Menuju AI