Project software berbasis cloud harus menggunakan beberapa lingkungan. Lingkungan ini biasanya memiliki nama seperti dev
, qa
, staging
, dan prod
.
Lingkungan ini harus terisolasi sepenuhnya satu sama lain, dan biasanya memiliki izin akses operator yang sangat berbeda.
Misalnya, tim pengembangan mungkin memiliki akses penuh ke lingkungan dev
, tetapi hanya akses terbatas ke lingkungan prod
, dengan semua deployment kode yang hanya didorong oleh skrip otomatis. Selain itu, sangat penting untuk menjaga agar data di lingkungan yang berbeda tetap terisolasi.
Penggunaan beberapa project Google Cloud sangat sesuai dengan persyaratan ini karena project tersebut menyediakan pemisahan kode dan data secara menyeluruh, serta izin operator dapat dikelola secara terpisah. Karena App Engine secara otomatis menskalakan instance yang menyajikan, Anda hanya membayar sesuai penggunaan. Misalnya, jika lingkungan staging Anda hanya diperlukan satu minggu dari setiap empat lingkungan, Anda tidak perlu membayar biaya instance penyajian untuk tiga lingkungan lainnya. Namun, perlu diingat bahwa Anda akan dikenai biaya untuk setiap data yang disimpan dalam project ini.
Penamaan lingkungan
Jika memilih untuk membuat aplikasi microservice dengan hanya menggunakan beberapa layanan, Anda dapat membuat satu project Google Cloud untuk setiap lingkungan dan memberikan nama yang sesuai ke lingkungan tersebut, misalnya web-app-dev
, web-app-qa
, dan web-app-prod
.
Atau, jika memilih untuk membuat aplikasi microservice dengan menggunakan beberapa project, Anda dapat memperoleh pemisahan yang sama di antara lingkungan, tetapi Anda perlu menggunakan lebih banyak project, seperti web-app-dev
, web-app-prod
, user-service-dev
, dan user-service-prod
.
Anda harus menggunakan pola kode untuk memastikan bahwa project dev
hanya memanggil project dev
lain dan project prod
hanya memanggil project prod
lainnya.
Langkah berikutnya
- Dapatkan ringkasan arsitektur microservice di App Engine.
- Pelajari praktik terbaik terkait mendesain API untuk berkomunikasi antar microservice.
- Pelajari praktik terbaik untuk performa microservice.
- Pelajari cara Memigrasikan aplikasi monolitik yang sudah ada ke aplikasi yang memiliki microservice.