Dasar-dasar arsitektur aplikasi Azure
Pustaka konten ini menyajikan pendekatan terstruktur untuk merancang aplikasi di Azure yang dapat diskalakan, aman, tangguh, dan sangat tersedia. Panduan ini didasarkan pada praktik terbukti yang telah kami pelajari dari interaksi pelanggan.
Cloud mengubah cara aplikasi dirancang dan diamankan. Alih-alih monolit, aplikasi diurai menjadi layanan yang lebih kecil dan terdesentralisasi. Layanan ini berkomunikasi melalui API atau dengan menggunakan olahpesan atau peristiwa asinkron. Aplikasi diskalakan secara horizontal, menambahkan instans baru sesuai permintaan.
Tren ini menghadirkan tantangan baru. Status aplikasi didistribusikan. Operasi dilakukan secara paralel dan asinkron. Aplikasi harus tangguh saat terjadi kegagalan. Pelaku jahat terus-menerus menargetkan aplikasi. Penyebaran harus otomatis dan dapat diprediksi. Pemantauan dan telemetri sangat penting untuk mendapatkan wawasan tentang sistem. Panduan ini dirancang untuk membantu Anda menavigasi perubahan ini.
Lokal tradisional | Cloud modern |
---|---|
Monolitik Dirancang untuk skalabilitas yang dapat diprediksi Database hubungan Pemrosesan yang disinkronkan Desain untuk menghindari kegagalan (MTBF) Pembaruan besar sesekali Manajemen manual Server Snowflake |
Diurai Dirancang untuk skala elastis Persistensi Polyglot (campuran teknologi penyimpanan) Pemrosesan asinkron Desain untuk kegagalan (MTTR) Pembaruan kecil yang sering Manajemen diri otomatis Infrastruktur yang tidak dapat diubah |
Panduan dasar-dasar arsitektur aplikasi Azure diatur sebagai serangkaian langkah, mulai dari arsitektur dan desain hingga penerapan. Untuk setiap langkah, ada panduan pendukung yang akan membantu Anda merancang arsitektur aplikasi Anda.
Poin keputusan pertama adalah yang paling mendasar. Arsitektur seperti apa yang Anda buat? Mungkin arsitektur layanan mikro, aplikasi tingkat-N yang lebih tradisional, atau solusi big data. Kami telah mengidentifikasi beberapa gaya arsitektur yang berbeda. Ada keuntungan dan tantangannya masing-masing.
Pelajari selengkapnya: Gaya arsitektur
Mengetahui jenis arsitektur yang Anda buat, sekarang Anda dapat mulai memilih bagian teknologi utama untuk arsitektur tersebut. Pilihan teknologi berikut sangat penting:
Komputasi mengacu pada model hosting untuk sumber daya komputasi yang dijalankan aplikasi Anda. Untuk informasi selengkapnya, lihat Memilih layanan komputasi.
Penyimpanan data mencakup database tetapi juga penyimpanan untuk antrean pesan, cache, log, dan apa saja yang mungkin dipertahankan aplikasi untuk disimpan. Untuk informasi selengkapnya, lihat Memilih penyimpanan data.
Teknologi olahpesan memungkinkan pesan asinkron di antara komponen sistem. Untuk informasi selengkapnya, lihat Memilih layanan olahpesan.
Anda mungkin harus membuat pilihan teknologi tambahan di sepanjang jalan, tetapi ketiga elemen ini (komputasi, data, dan olahpesan) merupakan inti dari sebagian besar aplikasi cloud dan akan menentukan banyak aspek desain Anda.
Setelah Anda memilih gaya arsitektur dan komponen teknologi utama, Anda siap untuk menangani desain spesifik aplikasi Anda. Setiap aplikasi berbeda, tetapi sumber daya berikut dapat membantu Anda:
Tergantung pada skenario Anda, salah satu arsitektur referensi kami mungkin merupakan titik awal yang baik. Setiap arsitektur referensi mencakup praktik yang direkomendasikan, dengan pertimbangan untuk skalabilitas, ketersediaan, keamanan, ketahanan, dan aspek desain lainnya. Sebagian besar juga menyertakan solusi yang dapat disebarkan atau penerapan referensi.
Kami telah mengidentifikasi 10 prinsip desain tingkat tinggi yang akan membuat aplikasi Anda lebih dapat diskalakan, tangguh, dan mudah dikelola. Prinsip desain ini berlaku untuk gaya arsitektur apa pun. Sepanjang proses desain, ingatlah 10 prinsip desain tingkat tinggi ini. Untuk informasi selengkapnya, lihat Prinsip desain.
Pola desain perangkat lunak adalah pola berulang yang terbukti memecahkan masalah tertentu. Katalog pola desain Cloud kami membahas tantangan khusus dalam sistem terdistribusi. Katalog ini membahas aspek-aspek seperti ketersediaan, ketersediaan tinggi, keunggulan operasional, ketahanan, performa, dan keamanan. Anda dapat menemukan katalog pola desain kami di sini.
Artikel praktik terbaik kami membahas berbagai pertimbangan desain termasuk desain API, penskalaan otomatis, partisi data, pembuatan cache, dan sebagainya. Baca artikel ini dan terapkan praktik terbaik yang sesuai untuk aplikasi Anda.
Praktik terbaik keamanan kami menjelaskan cara memastikan bahwa kerahasiaan, integritas, dan ketersediaan aplikasi Anda tidak disusupi oleh pelaku jahat.
Aplikasi cloud yang sukses akan berfokus pada lima pilar kualitas perangkat lunak: Keandalan, Keamanan, Pengoptimalan Biaya, Keunggulan Operasional, dan Efisiensi Performa.
Manfaatkan Microsoft Azure Well-Architected Framework untuk menilai arsitektur Anda di kelima pilar ini.