Software Architecture - Tugas Pertemuan 4 PPL

Nama : Tigo S Yoga

NRP : 5025211125

Kelas : PPL A


Software Architecture

Referensi :



PERANCANGAN ARSITEKTUR PERANGKAT LUNAK MICROSERVICES PADA APLIKASI OPEN LIBRARY UNIVERSITAS TELKOM MENGGUNAKAN gRPC

Deskripsi
Aplikasi Perpustakaan Open Library Universitas Telkom adalah sebuah website yang menyediakan informasi buku, karya ilmiah, dan jurnal dengan fitur pencarian, katalog, dan reservasi buku. Penelitian menunjukkan bahwa aplikasi ini tidak mampu menangani 200 pengguna bersamaan secara maksimal, sehingga dibutuhkan peningkatan pada scalability, availability, dan performance. Untuk mengatasi masalah ini, peneliti mengusulkan pengembangan arsitektur microservices menggunakan gRPC untuk komunikasi antar layanan, dengan tujuan meningkatkan scalability, availability, dan stability aplikasi.

Arsitektur Aplikasi : Microservices


  • Definisi :
Microservices adalah desain arsitektur untuk membuat sebuah aplikasi yang terdiri dari berbagai unit layanan tersendiri tapi tetap saling terhubung. Setiap unit layanan dalam aplikasi tersebut menjalankan fungsi berbeda, tapi tetap mendukung satu sama lain.

  • Komponen :
- Client Side 
1. Web Client: Antarmuka pengguna yang diakses melalui browser. Pengguna dapat berinteraksi dengan aplikasi melalui halaman web.
2. Mobile Client: Antarmuka pengguna yang diakses melalui aplikasi mobile. Pengguna dapat berinteraksi dengan aplikasi melalui perangkat seluler.
3. IoT (Internet of Things): Perangkat yang terhubung ke internet dan berinteraksi dengan aplikasi untuk mengirim dan menerima data.

- Server Side
1. API Gateway: Komponen yang bertindak sebagai titik masuk tunggal untuk semua klien (web, mobile, IoT). API Gateway mengarahkan permintaan ke layanan yang tepat, melakukan load balancing, autentikasi, dan pengelolaan API. API Gateway juga mendukung komunikasi melalui JSON, HTTP, WebSocket, dan notifikasi.
2. Services:
  a. Layanan-layanan ini adalah komponen microservices yang independen dan berfungsi  untuk menangani berbagai operasi atau tugas spesifik.
   b. Setiap layanan memiliki tanggung jawab tertentu dan berkomunikasi dengan layanan lain melalui HTTP.
   c. Layanan-layanan ini dapat menggunakan berbagai jenis database (SQL atau NoSQL) untuk menyimpan data.
3. Databases:
   a. SQL Databases: Basis data relasional yang digunakan oleh beberapa layanan untuk menyimpan data terstruktur.
  b. NoSQL Databases: Basis data non-relasional yang digunakan oleh layanan lain untuk menyimpan data yang tidak terstruktur atau semi-terstruktur.

  • Services :
Pada apilkasi Open Library Universitas Telkom, terdapat beberapa services atau layanan, yaitu :
- Service buku dan transaksi (dengan bahasa Go).
- Service katalog buku (dengan bahasa Node.js).
- Service autentikasi (dengan bahasa PHP).

Komentar

Postingan populer dari blog ini

EAS PPL

Perancangan Berbasis Obyek - Tugas Pertemuan 3 PPL