rails:heroku基本說(shuō)明

因?yàn)閷W(xué)習(xí)rails,使用教程railsBridge,臺(tái)灣的中譯版.地址如下

http://zh-tw.railsbridge.org

其中,在開(kāi)首的章節(jié)里就提到如何設(shè)置初始環(huán)境.關(guān)于git服務(wù)器的選擇,直接推薦使用heroku,剛開(kāi)始直接的理解是他就是類似GitCafe的應(yīng)用,于是沒(méi)有在意,直接去GitCafe上創(chuàng)建了新的倉(cāng)庫(kù),又鼓搗一整子提交,公鑰的問(wèn)題,當(dāng)然遇到一些問(wèn)題,早上起床就解決了.

在繼續(xù)跳躍式閱讀的過(guò)程中發(fā)現(xiàn)教程中說(shuō)過(guò)將應(yīng)用deploy到heroku上,這個(gè)引起了我的警覺(jué),Heroku是一個(gè)托管服務(wù)器?直接集成Git與服務(wù)器的功能,開(kāi)發(fā)人員只需要將程序在本地開(kāi)發(fā)完成,接著部署到該服務(wù)器上,即可展開(kāi)實(shí)際的測(cè)試與使用.這類的應(yīng)用在公司內(nèi)見(jiàn)過(guò),很簡(jiǎn)單.于是,開(kāi)始查詢關(guān)于heroku的說(shuō)明,果不其然.就是云服務(wù).

heroku的地址,先要注冊(cè)才能使用,不過(guò)注冊(cè)使用是免費(fèi)的.

http://heroku.com

通過(guò)該地址進(jìn)入后根據(jù)引導(dǎo)完成賬號(hào)注冊(cè).超級(jí)簡(jiǎn)單,進(jìn)入后就是一個(gè)創(chuàng)建應(yīng)用的截面,其中就飽含rails應(yīng)用.如下圖

HeroKu的控制臺(tái)

另外,Heroku也提供了一個(gè)自己開(kāi)發(fā)的工具套件,用來(lái)支持應(yīng)用部署,完全是命令行.就連公鑰的添加也直接是通過(guò)命令行進(jìn)行的,就這一點(diǎn)就已經(jīng)非常便捷且節(jié)省時(shí)間.工具條件通過(guò)如下路徑安裝

https://toolbelt.heroku.com/

Linux下直接通過(guò)如下命令行來(lái)安裝

wget -qO-https://toolbelt.heroku.com/install-ubuntu.sh| sh

添加公鑰很方便

heroku keys:add

注:關(guān)于Heroku的說(shuō)明,來(lái)自infoQ,原文在這里,link?

受益于Heroku,Ruby的web應(yīng)用程序部署變得異常簡(jiǎn)單:所有的工作只是在終端上輸入少許命令。無(wú)需郵件,無(wú)需電話,也無(wú)需技術(shù)支持(supportticket)。我們已經(jīng)開(kāi)始在Hashrocket使用Heroku來(lái)托管我們的內(nèi)部執(zhí)行環(huán)境,我可以證明,這是一種你從未經(jīng)歷過(guò)的部署體驗(yàn)。Heroku一出現(xiàn),Capistrano即行將就木了。在完成注冊(cè),并在Heroku的云計(jì)算平臺(tái)上創(chuàng)建一個(gè)新的應(yīng)用實(shí)例之后,部署僅僅是一句:git push heroku master。

這個(gè)push命令觸發(fā)了一個(gè)進(jìn)程:把應(yīng)用程序編譯成一個(gè)獨(dú)立的、只讀的實(shí)例,在Heroku里它被稱為“slug”。它會(huì)自動(dòng)地進(jìn)行測(cè)試來(lái)保證它能正常地啟動(dòng)。被依賴的gem會(huì)被自動(dòng)安裝,并且通過(guò)應(yīng)用程序根目錄下的一個(gè).gemsmanifest文件進(jìn)行維護(hù):這是與普通的Rails應(yīng)用程序的唯一不同之處。同時(shí)需要指出的是,Heroku也支持Merb和Sinatra(實(shí)際上是任何一款Rack)。

一旦push成功,slug就在一個(gè)或多個(gè)slot中被實(shí)例化。這些slot將置于一個(gè)特殊設(shè)計(jì)的網(wǎng)格計(jì)算環(huán)境中,slug在這個(gè)環(huán)境中可以訪問(wèn)數(shù)據(jù)庫(kù)和緩存信息,并且開(kāi)始啟動(dòng)。Heroku唯一支持的數(shù)據(jù)庫(kù)是Postgres。據(jù)James說(shuō),Heroku之所以目前不支持MySQL,是因?yàn)樗€不支持事務(wù)型數(shù)據(jù)描述語(yǔ)言(transactional DDL)的執(zhí)行。

slug激活后,就成為了一個(gè)擁有完整功能的web應(yīng)用,它被稱作“dyno” 。每個(gè)dyno都是網(wǎng)格中服務(wù)器的一個(gè)單獨(dú)進(jìn)程,它包括了應(yīng)用程序代碼、框架、中間件、Rack、應(yīng)用服務(wù)器、Ruby虛擬機(jī)以及POSIX環(huán)境。Dyno使用的應(yīng)用服務(wù)器是經(jīng)過(guò)少許修改的Thin,系統(tǒng)分配給它250M內(nèi)存。

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時(shí)請(qǐng)結(jié)合常識(shí)與多方信息審慎甄別。
平臺(tái)聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點(diǎn),簡(jiǎn)書(shū)系信息發(fā)布平臺(tái),僅提供信息存儲(chǔ)服務(wù)。

相關(guān)閱讀更多精彩內(nèi)容

  • Spring Cloud為開(kāi)發(fā)人員提供了快速構(gòu)建分布式系統(tǒng)中一些常見(jiàn)模式的工具(例如配置管理,服務(wù)發(fā)現(xiàn),斷路器,智...
    卡卡羅2017閱讀 136,533評(píng)論 19 139
  • Heroku平臺(tái) Heroku平臺(tái)的靈活性極高且支持多種編程語(yǔ)言。若想把程序部署到Heroku上,開(kāi)發(fā)者要使用Gi...
    超net閱讀 105,871評(píng)論 12 56
  • Spring Boot 參考指南 介紹 轉(zhuǎn)載自:https://www.gitbook.com/book/qbgb...
    毛宇鵬閱讀 47,261評(píng)論 6 342
  • 1 膨脹的夢(mèng)里沒(méi)有妖怪,膨脹的心里沒(méi)有鏡子 2 昨夜水池邊上的青蛙,在清晨感受到秋的涼意,我預(yù)測(cè),它將蹦向調(diào)零,在...
    稻子X(jué)視角閱讀 446評(píng)論 0 1
  • 百日目標(biāo)檢視: 1. 目標(biāo)1:自律*不醉 做到了38天,醉一次 2. 目標(biāo)2:靜心*運(yùn)動(dòng)、閱讀、檢視 運(yùn)動(dòng)完成25...
    笑思東閱讀 171評(píng)論 0 0

友情鏈接更多精彩內(nèi)容