Bagian panduan arketipe deploymentGoogle Cloud ini menjelaskan arketipe deployment global.
Dalam arsitektur yang didasarkan pada pola dasar deployment global, aplikasi berjalan di beberapa Google Cloud region di seluruh dunia. Anda dapat men-deploy aplikasi sebagai stack yang didistribusikan dan tidak mengetahui lokasi atau sebagai beberapa stack yang terisolasi secara regional. Dalam kedua kasus tersebut, load balancer anycast global mendistribusikan traffic ke region yang sesuai. Aplikasi menulis data ke, dan membaca dari, database yang direplikasi secara sinkron yang tersedia di semua region, seperti Spanner dengan konfigurasi multi-region. Komponen lain dari tumpukan aplikasi juga dapat bersifat global, seperti cache dan penyimpanan objek.
Diagram berikut menunjukkan varian deployment global yang didistribusikan dan tidak mengetahui lokasi:
Diagram sebelumnya menunjukkan stack aplikasi yang tidak mengetahui lokasi, dengan instance frontend dan backend (biasanya microservice) yang didistribusikan di beberapa zona di tiga Google Cloud region. Load balancer anycast global mendistribusikan traffic masuk ke instance frontend yang sesuai. Distribusi ini didasarkan pada ketersediaan dan kapasitas instance serta kedekatan geografisnya dengan sumber traffic. Load balancer internal lintas region mendistribusikan traffic dari instance frontend ke instance backend yang sesuai berdasarkan ketersediaan dan kapasitasnya. Aplikasi menggunakan database yang direplikasi secara sinkron dan tersedia di seluruh region.
Diagram berikut menunjukkan varian arketipe deployment global dengan stack aplikasi yang terisolasi secara regional:
Diagram sebelumnya menunjukkan stack aplikasi yang terisolasi secara regional yang berjalan di beberapa zona di dua Google Cloud region. Topologi ini mirip dengan prototipe deployment multi-region, tetapi menggunakan load balancer anycast global, bukan perutean DNS. Load balancer global mendistribusikan traffic masuk ke frontend di region yang paling dekat dengan pengguna. Kedua stack aplikasi menulis data ke, dan membaca dari, database yang direplikasi secara sinkron dan tersedia di kedua region. Jika terjadi pemadaman layanan di salah satu dari dua region, load balancer global akan mengirimkan permintaan pengguna ke frontend di region lainnya.
Kasus penggunaan
Bagian berikut memberikan contoh kasus penggunaan yang sesuai untuk arketipe deployment global.
Aplikasi yang sangat tersedia untuk audiens global
Kami merekomendasikan arketipe deployment global untuk aplikasi yang melayani pengguna di seluruh dunia dan, oleh karena itu, memerlukan ketersediaan tinggi dan keandalan terhadap pemadaman layanan di beberapa region.
Peluang untuk mengoptimalkan biaya dan menyederhanakan operasi
Dengan arketipe deployment global, Anda dapat menggunakan resource global dengan ketersediaan tinggi seperti load balancer global dan database global. Dibandingkan dengan deployment multi-region, deployment global dapat membantu menurunkan biaya dan menyederhanakan operasi karena Anda menyediakan dan mengelola lebih sedikit resource.
Pertimbangan desain
Saat Anda membangun arsitektur yang didasarkan pada pola dasar deployment global, pertimbangkan faktor desain berikut.
Biaya penyimpanan, replikasi, dan jaringan
Dalam arsitektur yang didistribusikan secara global, volume traffic jaringan lintas lokasi dapat tinggi dibandingkan dengan deployment regional. Anda juga dapat menyimpan dan mereplikasi lebih banyak data. Saat Anda membangun arsitektur yang didasarkan pada pola dasar deployment global, pertimbangkan potensi biaya yang lebih tinggi untuk penyimpanan data dan jaringan. Untuk aplikasi yang penting bagi bisnis, keuntungan ketersediaan dari arsitektur yang didistribusikan secara global mungkin lebih besar daripada biaya jaringan dan penyimpanan yang lebih tinggi.
Mengelola perubahan pada resource global
Peluang untuk menggunakan resource global yang sangat tersedia dapat membantu Anda mengoptimalkan biaya dan menyederhanakan operasi. Namun, untuk memastikan bahwa resource global tidak menjadi titik tunggal kegagalan (SPOF), Anda harus mengelola perubahan konfigurasi pada resource global dengan cermat.
Arsitektur referensi
Untuk arsitektur referensi yang dapat Anda gunakan untuk mendesain deployment global, lihat Deployment global dengan Compute Engine dan Spanner.