‫-: Dalam video ini,
‫kita akan melakukan satu konfigurasi khusus Heroku terakhir
‫yang menanggapi apa yang disebut "sinyal
‫istilah sakit" yang dipancarkan Heroku dari waktu
‫ke waktu.
‫Jadi dyno Heroku, dan sekali
‫lagi dyno hanyalah nama yang digunakan Heroku
‫pada dasarnya untuk wadah
‫tempat aplikasi Anda
‫berjalan sehingga dyno ini restart setiap 24 jam
‫untuk menjaga aplikasi Anda dalam keadaan sehat.
‫Oke? Dan cara Heroku
‫melakukan ini adalah dengan mengirimkan apa yang disebut
‫"sinyal istilah sakit" ke aplikasi catatan kita,
‫dan aplikasi tersebut pada dasarnya akan segera dimatikan.
‫Baiklah? Sekarang, masalah dengan ini
‫adalah bahwa shutdown bisa sangat mendadak.
‫Jadi ini kemudian dapat meninggalkan permintaan yang saat
‫ini sedang diproses pada
‫dasarnya menggantung di
‫udara, dan itu tidak ideal.
‫Jadi pada dasarnya itulah yang terjadi juga
‫ketika ada penolakan yang tidak tertangani.
‫Jadi di sini di server kami,
‫dot JS, ingat bagaimana kami sebenarnya dengan
‫anggun mematikan server setiap kali ada penolakan
‫yang tidak tertangani. Baiklah?
‫Jadi sekarang kita
‫sebenarnya akan melakukan sesuatu yang sangat mirip ketika
‫kita menerima "sinyal istilah sakit". Baiklah? Jadi katakanlah proses
‫titik pada
‫istilah sakit, dan pada dasarnya, istilah sakit
‫sebenarnya hanyalah sebuah peristiwa yang dapat
‫dipancarkan dan yang diterima oleh aplikasi kita
‫dan kemudian dapat ditanggapi.
‫Jadi persis seperti penolakan yang tidak tertangani. Benar?
‫Sekarang di sini kita tidak memiliki
‫kesalahan, jadi mari kita benar-benar
‫melakukan log konsol di
‫sini juga istilah sakit diterima.
‫Mematikan
‫dengan anggun.
‫Dan mari tambahkan beberapa emoji di
‫sini hanya untuk membuatnya menonjol di konsol kami di
‫antara semua log yang kami miliki di sana.
‫Baiklah, dan sekarang mari
‫kita lakukan graceful shut down, yang
‫pada dasarnya hanya untuk menutup server.
‫Jadi ini pada dasarnya akan menutup server, tetapi sebelum
‫itu masih menangani semua permintaan
‫yang tertunda. Dan
‫itulah yang kami inginkan,
‫alih-alih penyelesaian aplikasi yang sangat mendadak, bukan?
‫Kemudian, setelah selesai, mari kita kunci
‫ke konsol.
‫Jadi konsol
‫dot log, sekali lagi mari tambahkan
‫emoji yang bagus di sini prosesnya dihentikan.
‫Oke. Dan dalam hal
‫ini disini kita tidak menggunakan proses dot exit,
‫karena istilah sakit itu sendiri akan menyebabkan aplikasi mati.
‫Kita tidak perlu melakukannya secara manual seperti
‫yang kita lakukan di sini. Baiklah?
‫Jadi pada dasarnya, istilah sakit adalah sinyal yang
‫digunakan untuk membuat program
‫benar-benar berhenti berjalan. Jadi ini seperti
‫cara yang sangat sopan untuk meminta program dihentikan. Oke?
‫Jadi sekali lagi, kita perlu menerapkan ini mendengarkan acara
‫ini di sini, karena Heroku
‫setiap 24 jam akan
‫mematikan aplikasi kita dengan mengirimkan sinyal ini,
‫atau acara ini, ke aplikasi kita.
‫Jadi, kami menutup proses dengan anggun,
‫dengan menggunakan server dot close,
‫yang memungkinkan semua permintaan yang tertunda untuk tetap
‫diproses hingga akhir. Oke?
‫Jadi, sekarang mari kita uji ini.
‫Jadi apa yang perlu kita
‫lakukan pertama adalah tentu saja melakukan semua modifikasi
‫ini ke repositori git kita dan
‫Anda melihat bahwa sekarang
‫kita memiliki tiga file yang dimodifikasi.
‫Jadi kami memodifikasi server dalam kuliah ini,
‫dan pengontrol alt di app dot JS
‫di kuliah terakhir. Benar?
‫Jadi, mari tambahkan semuanya ke staging area
‫git add all, dan kemudian komit perubahan
‫ini ke repo kita.
‫Jadi edit, Heroku, config.
‫Mari kita menyebutnya begitu.
‫Baiklah. Dan sekarang ingat
‫bagaimana kita pada dasarnya menerapkan ulang aplikasi.
‫Nah, itu sangat mudah.
‫Git mendorong cabang master addendum Heroku.
‫Oke, jadi ini pada dasarnya
‫akan mengirim semua modifikasi ke cabang ini
‫dan kemudian akan membangun
‫kembali aplikasi di Heroku dan, tentu saja, meluncurkannya kembali juga.
‫Jadi, Anda melihat bahwa ia
‫melakukan semua proses ini seperti saat
‫kami pertama kali menerapkan aplikasi lagi setiap
‫kali kami menerapkan aplikasi di lain waktu.
‫Dan sekarang sudah selesai. Jadi, untuk menguji apa yang baru
‫saja kita lakukan di sini, pada dasarnya mari kita mulai ulang
‫aplikasi secara manual. Dan itu
‫juga akan mengirim istilah sakit
‫ke aplikasi dan harus memicu apa pun yang terjadi
‫di sini Oke? Jadi mari kita
‫mulai dengan melihat semua dynos kami, jadi itu adalah sesuatu
‫yang belum kami lakukan, jadi itulah Heroku PS
‫dan jadi Anda lihat bahwa
‫kami memiliki dyno web gratis ini. Oke?
‫Yang berjalan, atau pada dasarnya yang
‫dimulai dengan menggunakan perintah mulai MPM, seperti
‫yang saya sebutkan di salah satu video sebelumnya.
‫Oke, jadi sekarang yang bisa
‫kita lakukan untuk me-restart Heroku PS sangat sederhana dan restart.
‫Jadi menurut saya kurang tepat.
‫Sekarang seharusnya, dan itu sudah selesai.
‫Jadi, mari kita lihat sekarang
‫di log yang merupakan heroku log dash dash tail.
‫Baiklah, jadi dan ini
‫dia.
‫Berasal dari aplikasi kami, kami melihat istilah sakit diterima dan
‫kemudian memproses kunci yang dihentikan.
‫Baiklah, dan Anda melihatnya
‫kemudian setelah itu, memulai proses dengan
‫perintah NPM start.
‫Baiklah, dan itu adalah server
‫catatan dot JS seperti yang kami tentukan,
‫dan sekarang aplikasi berjalan pada port 57 dua enam tujuh.
‫Jadi ingat bagaimana saya katakan sebelumnya bahwa
‫pada dasarnya Heroku menjalankan
‫aplikasi mereka pada port acak. Dan jadi ini adalah
‫itu. Baiklah? Besar!
‫Jadi mari kita keluar dari ini, bersihkan
‫ini, dan dengan itu,
‫kita benar-benar menyelesaikan semua konfigurasi Heroku di aplikasi kita.
‫Fantastis. Sekarang hanya tinggal dua
‫hal lagi yaitu mengimplementasikan
‫sesuatu yang disebut CORS, atau Cross Origin
‫Resource Sharing, dan juga menyelesaikan pembayaran Stripe
‫menggunakan webhook. Jadi ingat bagaimana
‫saya berjanji untuk menerapkannya nanti, dan
‫kami akan melakukannya selama dua kuliah berikutnya.
‫Baiklah? Jadi sampai jumpa saat itu juga.