S5 PAPL Microservices

Anda mungkin juga menyukai

Anda di halaman 1dari 14

Pola & Arsitektur

Perangkat Lunak
(PAPL)
SESI-5
PAPL-4: MICROSERVICES
Boy Iskandar Pasaribu S.Kom., G.D.B.S., M.I.S., M.I.T
Sumber:
Textbook-2 (halaman: 27 – 36):

Richards, M. (2015) “Software


Architecture Patterns”, O’Reilly.
PAPL-4: MICROSERVICES
1. Arsitektur ini semakin banyak digunakan
karena pembuatan aplikasinya lebih
menekankan pendekatan layanan-
layanan (services) untuk users.
2. KONSEP-1: Separately Deployed Unit:
Setiap service component dijalankan
sebagai unit yang terpisah dengan yang
lainnya.
3. Service component terdiri dari satu atau
lebih modul (contoh: Java classes) yang
dapat merepresentasikan suatu fungsi
dengan tujuan tertentu atau suatu
bagian yang independent dari suatu
aplikasi bisnis yang besar.
PAPL-4: MICROSERVICES
4. KONSEP-2: Distributed: Distribusi setiap
service component diakses dari suatu
remote access protocol (protokol
pengendali akses).
5. Pola ini membagi-bagi suatu aplikasi
menjadi beberapa service components
yang masing-masingnya bisa secara
individual dikembangkan (developed),
diuji (tested) dan dijalankan (deployed)
secara independent tanpa memerlukan
service component yang lainnya.
6. Pola ini adalah versi sederhananya dari
pola SOA (Serviced Oriented
Architecture) dengan menyederhanakan
konektifitas dan akses dari semua service
component.
PAPL-4: MICROSERVICES
TOPOLOGI-1: API REST-based

1. API adalah Application Programming Interface


yang merupakan antarmuka virtual untuk
memfasilitasi pertukaran informasi atau data
antara dua atau lebih aplikasi perangkat lunak.
2. Topologi ini berguna untuk websites yang
memberikan individual services kepada users
dengan API melalui service components yang
terdiri dari hanya satu atau dua modul
pemrograman.
3. REST (REpresentational State Transfer) adalah
suatu metode komunikasi dalam
pengembangan layanan berbasis web.
4. Topologi ini digunakan sebagai web services
oleh Yahoo, Google dan Amazon.
PAPL-4: MICROSERVICES
TOPOLOGI-2: Application REST-based

1. Client request diterima melalui


tampilan layar/ screen secara
traditional (user interface layer) tanpa
melalui API.
2. Setiap service component di topologi
ini memerlukan modul-modul
pemrograman yang lebih banyak
dibanding dengan menggunakan API.
3. Topologi ini diperuntukkan untuk
aplikasi bisnis kecil dan menengah
yang tidak membutuhkan proses yang
kompleks.
PAPL-4: MICROSERVICES
TOPOLOGI-3: Centralized Messaging

1. Topologi ini menggunakan perantara


pembawa pesan terpusat (lightweight
centralized message broker) dari client
request melalui user interface untuk
diberikan ke service component.
2. Topologi ini cocok untuk aplikasi bisnis yang
besar yang memerlukan proses yang
kompleks.
3. Namun karena menggunakan perantara
terpusat untuk membawa pesan, jika
terjadi banyak client requests, pesan bisa
gagal diantarkan ke service component
dikarenakan terjadi kemacetan di perantara
(bottleneck failure).
PAPL-4: MICROSERVICES
MICROSERVICES PATTERN ANALYSIS:

OVERALL AGILITY (KEGESITAN)

RATING: HIGH/ TINGGI

ANALYSIS:

Dikarenakan konsep separately deployed unit, setiap perubahan bisa


terisolasi di individual service component yang memfasilitasi perubahan
yang lebih mudah dan cepat. Hal ini didukung juga dengan sifat individual
service component yang independent dari service component yang lain.
PAPL-4: MICROSERVICES
MICROSERVICES PATTERN ANALYSIS:

EASE OF DEPLOYMENT (KEMUDAHAN PENERAPAN)

RATING: HIGH/ TINGGI

ANALYSIS:

Dikarenakan kemampuannya yang bisa menerapkan aplikasi secara real-


time maka tidak diperlukan penumpukan penyimpanan ketika users
melakukan berbagai client requests.
PAPL-4: MICROSERVICES
MICROSERVICES PATTERN ANALYSIS:

TESTABILITY (KEMUDAHAN PENGUJIAN)

RATING: HIGH/ TINGGI

ANALYSIS:

Dikarenakan service component yang terpisah dan terisolasi, pengujian


dilakukan di service component yang ingin diuji saja tanpa service
component yang lain. Jika ada perubahan di satu service component,
tidak perlu menguji keseluruhan aplikasi.
PAPL-4: MICROSERVICES
MICROSERVICES PATTERN ANALYSIS:

PERFORMANCE (KINERJA)

RATING: LOW/ RENDAH

ANALYSIS:

Dikarenakan konsep terdistribusi dari pola arsitektur ini maka kinerja


aplikasi kurang responsive.
PAPL-4: MICROSERVICES
MICROSERVICES PATTERN ANALYSIS:

SCALABILITY (FLEKSIBILITAS SKALA)

RATING: HIGH/ TINGGI

ANALYSIS:

Dikarenakan pola ini terdiri dari berbagai service component yang


independen dan terpisah, maka untuk memperluas/ memperbesar skala
di setiap service component dapat dilakukan dengan mudah.
PAPL-4: MICROSERVICES
MICROSERVICES PATTERN ANALYSIS:
EASE OF DEVELOPMENT (KEMUDAHAN PEMBUATAN APLIKASI)

RATING: HIGH/ TINGGI


ANALYSIS:
Dikarenakan konsep separately deployed unit, maka setiap service
component bisa dibuat secara independen, sehingga jika ada beberapa
programmer yang bekerja untuk mengembangkan aplikasi ini, bisa dibagi
tugasnya masing-masing berdasarkan service component yang akan
dikembangkan.
Menurut pemahaman anda dari materi
pembelajaran ini, jelaskan berbagai
kelebihan dan kekurangan/ keterbatasan dari
Pola Arsitektur Perangkat Lunak (PAPL)
Tugas MICROSERVICES ini!

Individual
Sesi-5
Jawaban tidak boleh lebih dari 1 halaman dan
merupakan jawaban sendiri bukan jawaban
menyontek dari mahasiswa lain, dibuat
dengan Word/ PDF, dan harus diupload ke
Google Classroom di bagian tugas paling lama
hari Senin (29 Maret 2021), jam 10.00 pagi.

Anda mungkin juga menyukai