Pertimbangan utama saat menggunakan AWS untuk hosting web
Ada beberapa perbedaan utama antara AWS Cloud dan model hosting aplikasi web tradisional. Bagian sebelumnya menyoroti banyak area utama yang harus Anda pertimbangkan saat men-deploy aplikasi web ke cloud. Bagian ini menunjukkan beberapa pergeseran arsitektur utama yang perlu Anda pertimbangkan saat Anda membawa aplikasi apa pun ke cloud.
Tidak ada lagi peralatan jaringan fisik
Anda tidak dapat menerapkan peralatan jaringan fisik di AWS. Misalnya, firewall, router, dan penyeimbang beban untuk aplikasi AWS Anda tidak dapat lagi berada di perangkat fisik, tetapi harus diganti dengan solusi perangkat lunak. Ada berbagai macam solusi perangkat lunak berkualitas perusahaan, baik untuk penyeimbangan beban atau membangun koneksi VPN. Ini bukan batasan dari apa yang dapat dijalankan di AWS Cloud, tetapi ini adalah perubahan arsitektur untuk aplikasi Anda jika Anda menggunakan perangkat ini saat ini.
Firewall di mana-mana
Di mana Anda pernah memiliki zona demiliterisasi
Pertimbangkan ketersediaan beberapa pusat data
Pikirkan Zona Ketersediaan dalam Wilayah AWS sebagai beberapa pusat data. Instans EC2 di Zona Ketersediaan berbeda dipisahkan secara logis dan fisik, dan mereka menyediakan model yang mudah digunakan untuk men-deploy aplikasi Anda di seluruh pusat data untuk ketersediaan dan keandalan yang tinggi. Amazon VPC sebagai layanan Regional memungkinkan Anda memanfaatkan Zona Ketersediaan sambil menyimpan semua sumber daya Anda dalam jaringan logis yang sama.
Perlakukan host sebagai sementara dan dinamis
Mungkin pergeseran yang paling penting dalam bagaimana Anda mungkin arsitek aplikasi AWS Anda adalah bahwa host Amazon EC2 harus dianggap sebagai fana dan dinamis. Setiap aplikasi yang dibuat untuk AWS Cloud tidak boleh berasumsi bahwa host akan selalu tersedia dan harus dirancang dengan pengetahuan bahwa data apa pun di penyimpanan instan EC2 akan hilang jika instans EC2 gagal.
Ketika host baru dibesarkan, Anda tidak boleh membuat asumsi tentang alamat IP atau lokasi dalam Zona Ketersediaan host. Model konfigurasi Anda harus fleksibel, dan pendekatan Anda untuk bootstrapping host harus memperhitungkan sifat dinamis cloud. Teknik-teknik ini sangat penting untuk membangun dan menjalankan aplikasi yang sangat mudah diskalakan dan toleran terhadap kesalahan.
Pertimbangkan kontainer dan nirserver
Laporan resmi ini terutama berfokus pada arsitektur web yang lebih tradisional. Namun, pertimbangkan untuk memodernisasi aplikasi web Anda dengan pindah ke Kontainer
Pertimbangkan deployment otomatis
-
Amazon Lightsail
adalah server privat virtual (VPS) yang mudah digunakan yang menawarkan kepada Anda semua yang diperlukan untuk membangun aplikasi atau situs web, ditambah dengan paket bulanan yang hemat biaya. Lightsail cocok untuk beban kerja sederhana, deployment cepat, dan memulai menggunakan AWS. Server ini dirancang untuk membantu Anda memulai dari yang kecil, lalu meningkat seiring pertumbuhan Anda. -
AWS Elastic Beanstalk
adalah layanan yang mudah digunakan untuk men-deploy dan menyesuaikan skala aplikasi dan layanan web yang dikembangkan dengan Java, .NET, PHP, Node.js, Python, Ruby, Go, dan Docker pada server yang umum dikenal seperti Apache, NGINX, Passenger, dan IIS. Anda cukup mengunggah kode Anda dan Elastic Beanstalk secara otomatis akan menangani deployment, mulai dari penyediaan kapasitas, penyeimbangan beban, penskalaan otomatis, hingga pemantauan kondisi aplikasi. Pada saat yang sama, Anda tetap memegang kendali penuh atas sumber daya AWS yang memberdayakan aplikasi Anda dan dapat mengakses sumber daya yang menjadi dasarnya kapan saja. -
AWS App Runner
adalah layanan terkelola penuh yang memudahkan developer men-deploy aplikasi web dan API dalam kontainer dengan cepat, sesuai skala, dan tanpa memerlukan pengalaman infrastruktur sebelumnya. Mulailah dengan kode sumber Anda atau gambar kontainer. App Runner secara otomatis membangun dan men-deploy aplikasi web dan menyeimbangkan beban lalu lintas dengan enkripsi. App Runner juga meningkatkan atau turun secara otomatis untuk memenuhi kebutuhan lalu lintas Anda. -
AWS Amplify
adalah serangkaian alat dan layanan yang dapat digunakan bersama atau terpisah, untuk membantu developer web dan seluler front-end membangun aplikasi tumpukan penuh yang dapat diskalakan dan didukung oleh AWS. Dengan Amplify, Anda dapat mengonfigurasi backend aplikasi dan menghubungkan aplikasi Anda dalam hitungan menit, menerapkan aplikasi web statis dalam beberapa klik, dan dengan mudah mengelola konten aplikasi di luar AWS Management Console.