lifelong learner — urip iku urup, currently working on accenture.

Angular pada digital ocean vs firebase vs roast

0
Degananda.com -

Single page application memiliki user experience yang lebih baik dibandingkan dengan website konvensional pada umumnya. Namun, Single page application (SPA) memiliki initial loading time yang cukup lama dikarenakan seluruh resources diload pada pertama kali user membuka aplikasi.

Selayang pandang

Ulasan ini akan membahas perbandingan antara tiga provider hosting untuk SPA dengan harapan kita dapat mengetahui mana yang paling baik. Aplikasi yang akan diuji coba adalah angular note. Untuk spesifikasi detail dapat dilihat pada bagian spesifikasi aplikasi. Sedangkan aplikasi yang digunakan untuk menguji coba / benchmark / komparasi yaitu gtmetrix dan google page insight. Ketiga provider (yang digunakan) tersebut adalah

  1. Digital ocean dengan menggunakan apache
  2. Firebase hosting
  3. Roast.io

Sebelum membahas lebih lanjut , kami akan menegaskan bahwa provider digital ocean tersebut merupakan server yang saat ini kami gunakan untuk degananda.com. Sehingga perlu dicatat bahwa konfigurasi apache ataupun OS pada VPS tersebut merupakan konfigurasi yang kami lakukan. Sehingga tidak dapat digeneralisir untuk seluruhnya (digitalocean secara general). Beda konfigurasi OS ataupun Software yang digunakan dapat menghasilkan hasil yang berbeda.

Spesifikasi aplikasi

Aplikasi yang dihosting merupakan aplikasi sederhana untuk mengelola note. Berikut ini adalah tabel terkait dengan modul-modul yang digunakan

Framework Angular 4.0
UI Angular material design
Database Local (singleton). Tidak ada http request ke API manapun
Form Reactive Form Module dengan form builder.
Shared services Yes
AOT / build for production Yes

Hal tersebut perlu cantumkan dan hukumnya adalah wajib mengingat benchmark seperti ini sangat subjektif. Jika anda menguji coba dengan aplikasi lain yang anda buat tentunnya hasil benchmark terhadap ketiga provider hosting diatas dapat berbeda.

Spesifikasi VPS digital ocean

Berikut ini adalah spesifikasi vps yang kami gunakan untuk menghosting aplikasi diatas.

Operating system Ubuntu 14.04
Plan Paket $5
Ram 512
Software terinstall Apache & Mysql

Jika anda menggunakan spesifikasi VPS dan software yang digunakan berbeda dari diatas maka hasil dari benchmark dapat berbeda. Perlu kami ingatkan lagi bahwa ini sangat subjektif terutama mengenai VPS digital ocean karena kami yang mengkonfigurasi.

Hasil benchmark

Berikut ini adalah hasil benchmark dari ketiga provider diatas yang digunakan untuk menghosting aplikasi angular note. Kami hanya mengambil satu buah parameter yakni terkait dengan page speed. Tetapi concern utamannya adalah fully loaded times karena angular akan tetap melakukan loading sampai halaman tersebut telah selesai di load sepenuhnya sehingga page speed dan fully loaded times adalah dua hal yang berbeda. Anda dapat secara online mengakses url dari aplikasi angular note pada provider tersebut.

  1. VPS DO : http://demo.degananda.com/angular/chapter-8/
  2. Firebase Hosting : https://angular-note-9a26a.firebaseapp.com/
  3. Roast.io : https://new-door-6796.roast.io/

Firebase dan DO melakukan render pada sisi client(client side rendering) sedangkan roast melakukan render pada sisi server atau Server side rendering. Sebenarnya ada tools yang bernama angular universal yang dapat kita gunakan pada VPS untuk menghosting angular secara server side namun hal tersebut tidak dijadikan object pada komparasi saat ini. Mungkin next time.

1.Page speed

2. Fully loaded times

3. Page size

Kesimpulan

Berdasarkan ketiga grafik diatas secara page speed firebase dan DO mengungguli roast. Namun pada Fully loaded times roast io memiliki hasil yang terbaik yakni 50% lebih cepat dibandingkan dengan DO. Namun firebase hanya selisih sedikit jika dibandingkan dengan Roast. DO dan Firebase hosting memiliki intial load yang lebih cepet dibandingkan dengan roast , namun DO sangat lama sekali untuk mencapai fully loaded jika dibandingkan dengan Firebase hosting ataupun Roast.

Singlepage application seperti angular akan melakukan loading hingga seluruh page diload artinnya, berdasarkan grafik diatas loading yang akan tampil akan sangat lama jika kita menghosting SPA Aplikasi angular(angular note) pada DO. Sehingga sangat disarankan untuk melakukan hosting Aplikasi SPA pada provider yang memang dikhususkan untuk menhosting SPA. Google mengklaim bahwa jika suatu website membutuhkan waktu lebih dari tiga detik untuk dapat terbuka maka 90% user akan menutup tap / website tersebut. Sehingga kecepatan load memang sangat penting.

Selanjutnya perhatikan gambar dibawah ini untuk mengetahui perbedaan antara page speed dan fully loaded time.

secara page speed, DO dan Firebase hosting sangat mengungguli roast. Itu artinnya initial time yang tercepat agar aplikasi dapat terbuka (muncul loading pada aplikasi angular). Namun, aplikasi angular akan benar-benar terbuka jika seluruh resources telah terload sepenuhnya sehingga pada case ini yang terbaik adalah roast. Namun, jika dikombinasikan keduannya antara page speed dan fully loaded times Firebase hosting mendapatkan hasil yang terbaik.