Menskalakan pengembangan yang didorong oleh API bisa sulit - inilah cara untuk melakukannya
Teknologi

Menskalakan pengembangan yang didorong oleh API bisa sulit – inilah cara untuk melakukannya

Menskalakan pengembangan yang didorong oleh API bisa sulit – inilah cara untuk melakukannya

 

 

Menskalakan pengembangan yang didorong oleh API bisa sulit - inilah cara untuk melakukannya
Menskalakan pengembangan yang didorong oleh API bisa sulit – inilah cara untuk melakukannya

Pengembang hari ini berpikir di Antarmuka Pemrograman Aplikasi, atau API. Melihat API terlebih dahulu membantu Anda berkonsentrasi pada masalah yang ingin Anda selesaikan dalam aplikasi, atau sebagai bagian dari layanan yang lebih luas. Dengan komunikasi antar komponen dalam suatu aplikasi yang semuanya terjadi melalui API, pendekatan ini membuatnya lebih mudah untuk mengadopsi desain layanan mikro dan memanfaatkan multi-cloud.

Namun, pengembangan yang digerakkan oleh API (ADD) tidak semudah kedengarannya seiring waktu. Berkonsentrasi pada API terlebih dahulu dapat membuatnya lebih mudah untuk membangun dan memelihara aplikasi, tetapi tidak mungkin mengabaikan sisi infrastruktur sepenuhnya. Jika Anda ingin meningkatkan layanan Anda dari waktu ke waktu, memikirkan bidang-bidang seperti data akan sangat penting.

Jadi bagaimana Anda dapat memanfaatkan ADD secara maksimal dan mempertimbangkan infrastruktur bersama? Dan apakah memikirkan ini dari perspektif non-fungsional merupakan pendekatan yang paling membantu?

Menambah pendekatan Anda
Pendekatan terbaik di sekitar ADD adalah dengan melihat pendekatan Anda terhadap API dan infrastruktur di awal. Meskipun berfokus pada API terlebih dahulu dapat membantu mempermudah dan lebih cepat untuk memperbarui aplikasi Anda dari waktu ke waktu, itu tidak menyelesaikan masalah yang ada di sekitar infrastruktur.

[Baca: Pengkodean tidak ‘menyenangkan’ – rumit secara teknis dan etika ]

Sebagai gantinya, ada baiknya meluangkan waktu untuk mempertimbangkan bagaimana API Anda akan berinteraksi dengan API layanan infrastruktur back-end, dan bagaimana layanan tersebut akan memenuhi persyaratan untuk tingkat layanan. Sementara API di depan database atau layanan penyimpanan dapat membantu Anda menyederhanakan proses untuk membangun layanan, Anda perlu memikirkan bagaimana kinerja back-end di masa depan.

Biasanya, banyak komponen aplikasi akan menangani beberapa bentuk permintaan seputar data. Itu mungkin membuat pesanan, memproses perubahan atau menyediakan beberapa data kembali berdasarkan permintaan; semua tindakan ini bergantung pada mengambil data yang ada dari database, atau membuat data baru yang kemudian dimasukkan ke dalam database yang sudah ada. Membuat ini mudah untuk diproses sebagai bagian dari panggilan API membuatnya mudah untuk menumbuhkan jumlah permintaan yang dapat diproses.

Namun, infrastruktur itu tidak dapat dipertukarkan seperti kelihatannya. Tidak semua database dibuat sama, dan hal yang sama berlaku untuk tawaran layanan cloud publik juga. Oleh karena itu, perlu menghabiskan waktu untuk memahami bagaimana opsi Anda bekerja di sekitar masalah seperti skala atau ketersediaan. Meskipun API untuk menangani data mungkin sama terlepas dari basis data yang Anda pilih, basis data yang berbeda akan bekerja secara berbeda dan menangani data dengan cara yang berbeda.

Meskipun API dapat menutupi kerumitan mengelola database untuk Anda, itu tidak berarti bahwa basis data akan

hilang. Sebagai gantinya, ada baiknya meluangkan waktu untuk bagaimana Anda dapat memaksimalkan ini melalui API Anda.

Desain aplikasi baru membutuhkan pendekatan baru terhadap data
Pindah ke ADD dan layanan-layanan mikro membuatnya lebih mudah untuk memikirkan skala untuk suatu aplikasi. Perlu lebih banyak tenaga kuda untuk mendukung lebih banyak permintaan pelanggan? Menambahkan node kontainer untuk menangani peningkatan volume panggilan API, sehingga ini dapat mendukung lebih banyak permintaan. Namun, ini bukan satu-satunya hambatan potensial untuk kinerja.

Untuk aplikasi yang didistribusikan – seperti di dalamnya terdiri dari beberapa komponen yang berbeda, masing-masing dapat terdiri dari kelompok node yang melakukan tugas – ada pendekatan baru yang dikembangkan yang dapat membuat manajemen lebih mudah dari waktu ke waktu. Sebagai contoh, alat orkestrasi wadah Kubernetes membuatnya lebih mudah untuk mengotomatiskan proses pembuatan lebih banyak wadah dan mematikannya ketika tidak diperlukan lagi. Namun, pendekatan ini tidak berurusan dengan masalah data.

Menjalankan lingkungan basis data terdistribusi melibatkan pemahaman bagaimana data tersebar di beberapa lokasi, dan toleransi partisi, konsistensi, dan persyaratan ketersediaan yang masuk ke pengaturan itu. Menggunakan basis data terdistribusi bersama aplikasi terdistribusi penuh memungkinkan Anda untuk menjaga data Anda dekat dengan aplikasi Anda, memastikan bahwa latensi tidak mempengaruhi kinerja. Layanan seperti Apache Cassandra secara khusus dibangun untuk menangani data terdistribusi, sehingga lebih mudah untuk skala.

Demikian pula, menggunakan API untuk mengakses lingkungan basis data itu dapat menutupi beberapa kerumitan

yang digunakan untuk menjalankan lingkungan terdistribusi itu. Meski begitu, meningkatkan lingkungan basis data terdistribusi sehingga dapat memenuhi kebutuhan aplikasi Anda adalah sebuah tantangan. Memahami dan merencanakan hal ini sebelumnya dapat memudahkan untuk meningkatkan layanan Anda secara keseluruhan.

Jika Anda menemukan bahwa infrastruktur database yang ada menjadi penghambat kinerja keseluruhan, maka Anda dapat melihat cara mengelola migrasi di balik API. Pergeseran dari database relasional ke yang non-relasional, atau pindah dari satu database NoSQL ke yang lain, dapat membutuhkan waktu dan sumber daya tambahan untuk diselesaikan. Namun, API dapat dengan cepat diarahkan dari satu layanan ke layanan lain, membatasi dampaknya pada anggota tim lainnya.

Tambahkan dan data bersama

Melihat infrastruktur Anda mungkin tampak berlawanan dengan ADD. Lagi pula, membahas detail tentang layanan cloud atau basis data di muka dapat tampak kurang penting daripada melihat cara membangun dan menjalankan API yang membuat aplikasi. Namun, masalah yang disebabkan oleh skalabilitas atau ketersediaan yang tidak memadai dapat dengan cepat mempengaruhi aplikasi dan itu bukan masalah sederhana untuk diselesaikan dengan API saja.

Melihat persyaratan jangka panjang dan keputusan arsitektur di muka karena itu dapat membantu Anda menyelesaikan beberapa masalah lebih awal. Dengan memikirkan di mana pendekatan Anda terhadap infrastruktur dan API tumpang tindih, Anda dapat memanfaatkan yang terbaik dari keduanya.

Sumber:

https://solopellico3p.com/driver-simulator-3d-apk-mod/