Skip to content

App Engine

Chetabahana edited this page Sep 20, 2019 · 15 revisions

Table of Contents

Umum

Bahasa

Prinsipnya GAE adalah layanan untuk membangun dan menggunakan aplikasi sehingga dapat fokus hanya pada penulisan kode tanpa khawatir mengelola infrastruktur yang mendasarinya.

App Engine secara otomatis berskala tergantung pada lalu lintas aplikasi Anda dan hanya gunakan sumber daya saat kode Anda berjalan.

GAE sedia bahasa populer seperti Java, PHP, Node.js, Python, C #, .Net, Ruby dan Go. Di GAE ini kita akan pilih dengan bahasa Python, untuk kenal lebih jauh Anda bisa simak GAE Python - Tutorial.

Fungsi

  • Sebagai Fungsi Web: App Engine menyediakan lingkungan standar, yang memungkinkan Anda menjalankan aplikasi di lingkungan yang aman dan mendistribusikan permintaan di beberapa server, dan mengukur server untuk memenuhi permintaan lalu lintas.
  • Sebagai Backend Aplikasi Mobile: Aplikasi Anda berjalan di lingkungannya sendiri yang aman dan andal yang tidak tergantung pada perangkat keras, sistem operasi, atau lokasi fisik server.

Jenis

GAE memberikan dua jenis layanan yaitu Standard dan Flexible. Kedua lingkungan menyediakan Anda dengan infrastruktur penerapan, penyajian, dan penskalaan App Engine.

Perbedaan utama adalah cara lingkungan menjalankan aplikasi Anda, bagaimana aplikasi Anda mengakses layanan eksternal, bagaimana Anda menjalankan aplikasi Anda secara lokal, dan bagaimana skala aplikasi Anda.

Anda juga dapat merujuk memilih lingkungan untuk ringkasan tingkat tinggi dari perbedaan-perbedaan ini.

Standard

Di jenis standard kita bisa jalankan Aplikasi secara kuota harian gratis. Jenis standard terdiri dari dua generasi dimana generasi kedua banyak dilakukan peningkatan layanan.

Selain Python library secara umum kita bisa pasang Aplikasi Saleor dengan pustaka lebih untuk jalankan maupun kembangkan. Namun lingkungan standar tidak support untuk bisa kelola spesifikasnya dengan file Pipfile dan Pipfile.lock.

Flexibel

Untuk memberi Anda lebih banyak opsi, App Engine menawarkan lingkungan yang fleksibel. Saat Anda menggunakan lingkungan yang fleksibel, aplikasi Anda berjalan pada mesin Compute Engine yang dapat dikonfigurasi, tetapi App Engine mengelola lingkungan hosting untuk Anda.

Ini berarti bahwa Anda dapat menggunakan runtimes tambahan, termasuk runtimes khusus, untuk pilihan bahasa pemrograman lainnya. Anda juga dapat memanfaatkan beberapa fleksibilitas yang ditawarkan Compute Engine, seperti memilih dari berbagai Opsi CPU dan memori.

Lingkungan yang fleksibel dimaksudkan untuk melengkapi lingkungan standar. Jika Anda memiliki aplikasi yang sudah berjalan di lingkungan standar, biasanya tidak perlu untuk memigrasi seluruh aplikasi ke lingkungan yang fleksibel.

Alih-alih, identifikasi bagian-bagian aplikasi Anda yang membutuhkan lebih banyak CPU, lebih banyak RAM, perpustakaan atau program pihak ketiga khusus, atau yang perlu melakukan tindakan yang tidak mungkin dilakukan dalam lingkungan standar.

Setelah Anda mengidentifikasi bagian-bagian ini dari aplikasi Anda, buat layanan App Engine kecil yang menggunakan lingkungan fleksibel untuk menangani hanya bagian-bagian itu. Layanan Anda yang ada yang berjalan di lingkungan standar dapat memanggil layanan lain menggunakan HTTP, Cloud Tasks (beta), atau Cloud Pub / Sub. Untuk detilnya bisa Anda disimak disini.

Items

Sebelum memasang aplikasi sebaiknya Anda pelajari terlebih dahulu tentang biaya penagihan (billing). Billing bisa diestimasi via Google Cloud Pricing Calculator sbb:

Instance

Database

Penyimpanan

Untuk Aplikasi Saleor opsi penyimpanan dilakukan di Amazon S3. Karena kita pilih pasang di Google Cloud maka dalam proyek ini Google Cloud Storage akan digunakan via Django File Api.

Harga Cloud Storage didasarkan pada komponen-komponen berikut:

Billing

Karena semua opsi bisa dilakukan maka Anda bisa mulai bekerja dengan budget minim sekalipun. Namun tentu saja akan ada konsekuensi terhadap kerentanan layanan.

Status

Actual total biaya harian bisa Anda cek di Status Penagihan via Dasbor Aplikasi. Namun dikarenakan oleh cara penghitungan perkiraannya, jumlah biaya resource individual mungkin tidak sama persis dengan jumlah total yang ditampilkan.

Support

Jika ada hal yang Anda ingin tanyakan tentang hal layanan anada bisa kontak ke Support:

Kasus yang Anda tanyakan akan diberi konfirmasi tentang rekam kasus dan berapa lama waktu yang diperlukan:

Planning

Free Trial

Berikutnya akan kita ulas cara memasang Aplikasi Saleor dengan opsi seperti berikut:

  • Opsi 1: Pasang Aplikasi di GAE Flexible dengan Opsi Database diterapkan di GCE.
  • Opsi 2: Pasang Aplikasi di GAE Standard dengan Opsi Database diterapkan di GCE.
  • Opsi 3: Pasang Aplikasi di GAE Flexible dengan Opsi Database diterapkan di Cloud SQL.
  • Opsi 4: Pasang Aplikasi di GAE Standard dengan Opsi Database diterapkan di Cloud SQL.
Untuk mengenal sistem secara keseluruhan maka dalam masa Free Trial Anda bisa lakukan tes running GAE baik type standard maupun flexible berikut semua opsi database. Sebelum kredit atau masanya habis sebaiknya semua mesin disesuaikan dengan budget Anda.

Extend


Dilain pihak jika bisnis Anda berkembang besar maka opsi di atas juga akan mengalami kerentanan sehingga perlu ditingkatkan guna melayani beban layanan tinggi dengan cara:

  • Pasang aplikasi kedalam Cluster di GKE
  • Topang oleh Skala via Memory Redis
  • Atur beban dengan Load Balancing
Ada banyak cara lain untuk optimalkan biaya bisa dipertimbangkan, bahkan Anda juga bisa berkontribusi. Kita akan ulas secara mendetil di Optimasi Biaya pada sesi terakhir.

Project Tutorial

You are on the wiki of our repo

Chetabahana Project

Clone this wiki locally