Anda dapat menjalankan aplikasi di App Engine menggunakan lingkungan fleksibel App Engine atau lingkungan standar App Engine. Anda juga dapat memilih untuk menggunakan kedua lingkungan secara simultan untuk aplikasi Anda dan memungkinkan layanan Anda memanfaatkan tiap-tiap manfaat di setiap lingkungan.
Lingkungan App Engine
App Engine sangat cocok untuk aplikasi yang didesain menggunakan arsitektur microservice, terutama jika Anda memutuskan untuk menggunakan kedua lingkungan tersebut. Gunakan bagian berikut untuk mempelajari dan memahami lingkungan mana yang paling sesuai dengan kebutuhan aplikasi Anda.
Kapan harus memilih lingkungan standar
Instance aplikasi berjalan di sandbox, menggunakan lingkungan runtime dari bahasa yang didukung yang tercantum di bawah ini.
Aplikasi yang perlu menangani penskalaan yang cepat.
Lingkungan standar optimal untuk aplikasi dengan karakteristik berikut:
- Dimaksudkan untuk dijalankan secara gratis atau dengan biaya yang sangat rendah, Anda hanya membayar sesuai kebutuhan Anda dan saat Anda membutuhkannya. Misalnya, aplikasi Anda dapat menskalakan hingga 0 instance saat tidak ada traffic.
- Mengalami lonjakan traffic yang tiba-tiba dan ekstrem yang memerlukan penskalaan langsung.
Kapan harus memilih lingkungan fleksibel
Instance aplikasi berjalan di dalam container Docker di virtual machine (VM) Compute Engine.
Aplikasi yang menerima traffic yang konsisten, mengalami fluktuasi traffic yang teratur, atau memenuhi parameter untuk meningkatkan dan menurunkan skala secara bertahap.
Lingkungan fleksibel tersebut optimal untuk aplikasi dengan karakteristik berikut:
- Berjalan di container Docker yang menyertakan runtime atau kode sumber kustom yang ditulis dalam bahasa pemrograman lain.
- Menggunakan atau bergantung pada framework yang menyertakan kode native.
- Mengakses resource atau layanan project Google Cloud Anda yang berada di jaringan Compute Engine.
Membandingkan fitur umum
Tabel berikut merangkum perbedaan antara kedua lingkungan tersebut:
Fitur | Lingkungan standar | Lingkungan fleksibel |
---|---|---|
Waktu startup instance | Detik | Menit |
Waktu tunggu permintaan maksimum | Bergantung pada runtime dan jenis penskalaan. | 60 menit |
Thread latar belakang | Ya, dengan pembatasan | Ya |
Proses latar belakang | Tidak | Ya |
Proses debug SSH | Tidak | Ya |
Penskalaan | Manual, Dasar, Otomatis | Manual, Otomatis |
Penskalaan hingga nol | Ya | Tidak, minimal 1 instance |
Menulis ke disk lokal |
|
Ya, ephemeral (disk diinisialisasi pada setiap startup VM) |
Mengubah runtime | Tidak | Ya (melalui Dockerfile) |
Waktu deployment | Detik | Menit |
Patch keamanan yang diterapkan otomatis | Ya | Ya (tidak termasuk runtime image container) |
Akses ke Layanan & Google Cloud API seperti Cloud Storage, Cloud SQL, Memorystore, Google Tasks dan lain-lain. | Ya | Ya |
WebSockets | Tidak Java 8, Python 2, dan PHP 5 menyediakan Sockets API (beta) eksklusif, tetapi API tersebut tidak tersedia dalam runtime standar yang lebih baru. |
Ya |
Mendukung penginstalan biner pihak ketiga |
|
Ya |
Location | Lokasi untuk lingkungan standar | Lokasi untuk lingkungan fleksibel |
Harga | Berdasarkan jam kerja instance | Berdasarkan penggunaan vCPU, memori, dan persistent disk |
Lihat juga perbandingan lingkungan secara mendalam.
Membandingkan lingkungan fleksibel dengan Compute Engine
Lingkungan fleksibel App Engine memiliki perbedaan berikut dibandingkan dengan Compute Engine:
Instance VM lingkungan fleksibel dimulai ulang setiap minggu. Selama memulai ulang, layanan pengelolaan Google menerapkan update keamanan dan sistem operasi yang diperlukan.
Anda selalu memiliki akses root ke instance VM Compute Engine. Secara default, akses SSH ke instance VM di lingkungan fleksibel dinonaktifkan. Jika mau, Anda dapat mengaktifkan akses root ke instance VM aplikasi Anda.
Deployment kode dapat memerlukan waktu lebih lama karena image container dibangun menggunakan layanan Cloud Build.
Region geografis dari instance VM lingkungan fleksibel ditentukan berdasarkan lokasi yang Anda tentukan untuk aplikasi App Engine dari project Google Cloud Anda. Layanan pengelolaan Google memastikan bahwa instance VM ditempatkan bersama untuk performa yang optimal.
Bermigrasi dari lingkungan standar ke lingkungan fleksibel
Jika memiliki aplikasi di lingkungan standar, Anda mungkin ingin memindahkan beberapa layanan ke lingkungan fleksibel. Untuk mengetahui panduan, lihat rekomendasi di perbandingan lingkungan.
Guna memigrasikan layanan tertentu untuk Python, Java, Go, dan PHP, lihat Memigrasikan layanan dari lingkungan standar ke lingkungan fleksibel.
Cobalah sendiri
Jika Anda baru menggunakan Google Cloud, buat akun untuk mengevaluasi performa lingkungan standar Ruby dalam skenario dunia nyata. Pelanggan baru juga akan mendapatkan kredit gratis senilai $300 untuk menjalankan, menguji, dan men-deploy workload.
Coba lingkungan standar Ruby secara gratis