Skip to main content

Day 9 - Deployment

Ringkasan

Deployment

Deployment adalah kegiatan yang merupakan untuk mengembangkan aplikasi atau website yang tidak bisa lepas dari kegiatan para programmer. Ada beberapa proses yang harus mereka kerjakan hingga akhirnya bisa menciptakan website atau aplikasi sendiri.

Penyebaran perangkat lunak mencakup semua langkah, proses, dan aktivitas yang diperlukan untuk membuat sistem perangkat lunak atau pembaruan tersedia bagi pengguna yang dituju. Saat ini, sebagian besar organisasi IT dan pengembang perangkat lunak menerapkan pembaruan perangkat lunak, patch, dan aplikasi baru dengan kombinasi proses manual dan otomatis. Beberapa aktivitas yang paling umum dari penyebaran perangkat lunak termasuk rilis perangkat lunak, instalasi, pengujian, penyebaran, dan pemantauan kinerja.


Production Environment

Production environment adalah environment yang disediakan oleh komputer server dimana anda akan menjalankan aplikasi untuk konsumsi eksternal. Environment meliputi:

  • Hardware komputer dimana aplikasi berjalan

  • Sistem operasi (Linux, Windows)

  • Runtime bahasa pemrograman dan libraries framework

  • Infrastruktur server web, bisa termasuk web server, reverse proxy, load balancer

  • Database tempat aplikasi berjalan


Hosting Providers

Hosting Providers adalah perusahaan atau badan usaha yang menyediakan layanan web hosting kepada pengguna untuk kebutuhan website dan aplikasi anda. Contoh hosting providers seperti heroku, amazon web services, google cloud, microsoft azure, dll.

Beberapa hal yang perlu diperhatikan dalam memilih host:

  • Biaya dan sumber daya komputasi yang diperlukan

  • Support for scaling

  • Location data center 

  • History uptime dan downtime

  • Limitasi hosting providers


PM2

Sebuah package process manager dari Keymetrics yang bertujuan agar project NodeJS dapat berjalan terus menerus.

  • Kelebihan

    • Memiliki cluster mode

    • Memiliki fitur auto restart

    • Memiliki fitur monitoring dan manajemen log

    • Reload tanpa downtime

    • Kompatibel dengan beberapa PaaS (Heroku, Azure, Google Apps Engine)

  • Kekurangan

    • Sulit untuk migrasi


Deploy Aplikasi

  1. Installasi PM2

  1. Buat file Config PM2 dengan nama pm2.json

Ganti value dari “cwd” sesuai dengan url folder project

  1. Jalankan Aplikasi backend dengan perintah “pm2 start pm2.json”

  1. Melihat status aplikasi dengan pm2


References



Last modified: Friday, 10 February 2023, 3:03 PM