HeroKu 平台介紹

關鍵字 :HeroKu

前言

Heroku 是一個平台即服務(PaaS),可自行在Heroku平台開發和佈署各種網站,好處是減少維護管理系統底層的成本,也透過簡單的介面來調整需要的硬體設備等級及資源,選擇適合自己的等級做升級。

以往開發測試的時候需要用到PaaS平台,而眾多的PaaS平台支援度與流量的使用都會收取費用,操作上也較為複雜,例如:AWS、阿里雲、京東、Azure和小米雲…等等,但以展示與測試方面來看網路流量較小,那Heroku平台就是不錯的選擇。Heroku操作相當簡單,可以讓開發者初期專心的開發程式,而不用煩惱管理機器或硬體維護。若網路流量變高,那Heroku就不太適合,必須改用其他的PaaS平台。


什麼是
PaaS?

平台即服務(Platform as a Service, PaaS)是提供運算平台與解決方案服務。以目前最常使用的即是Heroku ,Heroku 在2010年被Salesforce.com收購,目前Heroku 提供了大家一個以 Debian為基礎的平台架設管理,並支援Rudy、Java、Node.js、Scala、Clojure及Python等程式語言。

PaaS提供使用者將雲端基礎設施部署與建立至用戶端,或者藉此獲得使用程式語言、程式庫與服務。使用者不需要管理與控制雲端基礎設施(包含網路、伺服器、作業系統或儲存),但需要控制上層的應用程式部署與應用代管的環境。

PaaS將軟體研發的平台做為一種服務,以軟體即服務(Software as a Service, SaaS)模式交付給用戶,所以PaaS也是SaaS模式的一種應用,但PaaS的出現可以加快SaaS的發展,尤其是加快SaaS應用的開發速度。

PaaS 的服務也可透過簡單的介面來調整所需使用的硬體設備等級,可無縫地擴充處理突如其來的龐大瀏覽量,因此不需要關注底層的部分。


HeroKu
免費

  1. Dyno是運行和響應請求的應用程序的實例,欲執行網站就至少要一個Dyno,Dyno 有550小時/月的免費時數,若通過信用卡驗證,額外贈送450小時/月,總共免費時數為1,000小時/月,若多個Dyno執行則可分攤掉時數
  2. Dyno在30分鐘內沒有任何流量,系統自動進入睡眠狀態,睡眠狀態下則不消耗時數
  3. 睡眠狀態下Dyno收到請求,等喚醒約20秒啟動系統
  4. 儲存空間為512MB


Heroku
安裝

Heroku 申請一個帳號:目前申請Heroku 帳號是免費的,填寫一些基本資料即可申請,網址:https://www.heroku.com/


安裝
Heroku CLI

Heroku CLI是一個用來管理、創建、提交等命令的工具,工具程式可在多平台上安裝,請找到自己適合的平台安裝。
Heroku CLI 安裝教學網站:https://devcenter.heroku.com/articles/heroku-cli



Heroku
使用教學

教學部分都使用MacOS的系統,在終端機下執行:

$heroku login -i
heroku: Enter your login credentials
Email: me@example.com
Password: ***************
Two-factor code: ********
Logged in as me@example.com 

這樣之後在git push 部分就不用再輸入帳號密碼。
我們要在Heroku上建立一個應用程式可以使用網頁去新增,也能透過指令:

$heroku create name

name為你的應用程式名稱,亦可不指定,Heroku 會隨機幫你搭配,我的範例沒有命名所以系統幫我產生「stormy-retreat-68246」。

 



建立資料夾存放Git程式碼

請到你要執行的地方建立資料夾,將你的程式碼放入這個資料夾內,並且在終端機內導入在你新增的資料夾底下:

$ cd ~/myApp
$ git init
$ heroku git:remote -a stormy-retreat-68246

“stormy-retreat-68246”請更改成自己的APP應用名稱





部署 Heroku

接下來開始部署專案到平台上,請執行下面指令:

$ git add .
$ git commit -am "make it better"
$ git push heroku master

執行後可以看到以下畫面,我上傳Node.js的檔案


看到 remote: Verifying deploy.... done. 字樣,代表上傳成功;若上傳失敗,就必須自己找問題出在哪裡了,如果上傳成功可以在網頁右上角Open app開啟你的網站,或是直接輸入網址https://Your App Name.herokuapp.com/ ,以我的為例 https://stormy-retreat-68246.herokuapp.com/

重新部署

若專案有任何修改,就照以下流程操作:

  1. git add .
  2. git commit -am "make it better" 將目前的進度註記
  3. git push heroku master 上傳到平台

查看日誌(log)

檢查程式有沒有正常執行或查看錯誤,可以使用指令觀看Logs:

$heroku logs --tail --app stormy-retreat-68246

「stormy-retreat-68246」請更改成自己的APP應用名稱,也可以從網站上直接查看,功能在「More功能選項」底下第一個選項「View logs」


小結

你只是開發測試與Demo的話,HeroKu是不錯的平台,因為免費,550小時/月加上信用卡認證送的450小時/月,總共有1,000小時/月做使用,且可以在平台做很多應用,例如:掛載WordPress建立自己專屬網頁、使用App跟後端Node.js與資料庫溝通、透過Node.js轉發MQTT、Line Bot設定Webhook …等等,都是不錯的應用。若你的平台使用流量變高,免費時數被用完,就會停止你的程式,需要提升等級增加可用時數;在眾多雲平台中,HeroKu費用絕對不是最便宜,若要商用的話,請評估其他雲平台做轉換使用。

參考網站:

平台即服務 https://zh.wikipedia.org/wiki/%E5%B9%B3%E5%8F%B0%E5%8D%B3%E6%9C%8D%E5%8A%A1

維基百科Heroku https://zh.wikipedia.org/wiki/Heroku

 

★博文內容均由個人提供,與平台無關,如有違法或侵權,請與網站管理員聯繫。

★文明上網,請理性發言。內容一周內被舉報5次,發文人進小黑屋喔~

評論