Heroku是一個支持多種編程語言的雲平台即服務。在2010年被Salesforce.com收購。Heroku作為最開始的雲平台之一,從2007年6月起開發,當時它僅支持Ruby,但后來增加了對Java、Node.js、Scala、Clojure、Python以及(未記錄在正式文件上)PHP和Perl的支持。基礎操作系統是Debian,在最新的堆棧則是基於Debian的Ubuntu。
Heroku這個名字結合了英雄和ha句,這個強大的平台即服務具有這兩個詞所暗示的所有英雄的力量和詩意的優雅。Heroku於2007年夏天開發,作為世界上第一個基於雲的平台之一,進入了科技領域。
什么是Heroku?
Heroku如下:
Web應用程序部署模型:Heroku旨在幫助開發人員構建Web應用程序並將其推向世界,而無需擔心管理服務器,擴展操作或處理部署過程。
Polyglot平台:它支持越來越多的編碼語言,並允許開發人員以類似的方式在所有語言中構建他們的應用程序。
平台即服務:用戶只需支付他們所需的費用,並且能夠外包管理服務器所涉及的一些基本的,傳統上非常昂貴的任務。
雲平台:Heroku是分散和遠程的,這意味着它比傳統的私有服務器更快,更安全,更容易擴展。
使用Heroku平台的好處
Heroku平台的4個好處是:
成本:Heroku的平台即服務可以幫助公司節省大量成本,因為它不需要昂貴的基礎設施,也無需管理服務器所需的全部時間和金錢。
生產力:從頭到尾,Heroku的每個細節都旨在最大限度地提高效率並節省開發人員的時間。它直觀,功能強大且易於使用。
支持:Heroku運營經驗(Opex)提供了巨大的支持,提供故障排除技巧和快速診斷工具,幫助您快速找到問題的根源並更快地解決問題。
生態系統:隨着Heroku的元素,開發人員可以使用各種各樣的附加組件由3擴展應用第三黨的雲服務。所以選項幾乎無窮無盡。
正如您對世界領先的基於雲的平台所期望的那樣,Heroku具有多功能性和包容性。這意味着它允許開發人員使用八種不同語言中的任何一種,包括:
Ruby:Ruby是Heroku最初發布時支持的原始語言,該公司甚至招募了Yukihiro“Matz”Matsumoto,發明Ruby的人,在2011年擔任首席架構師。設計時考慮到效率和樂趣,Ruby是一種通用的跨平台編程語言,面向對象,動態和反射。它自20世紀90年代以來一直存在,今天是最廣泛使用的語言之一。
Java:也許更廣泛地使用Ruby,Java是另一種面向對象的通用編程語言。它也是一種並發和基於類的語言,幾乎所有平台都支持它。Java從C和C ++中獲取了大部分語法。
Node.js:使用從C,C ++和Javascript派生的語法,Node.js是用於開發Web工具和應用程序的運行時環境。它是基於事件驅動架構的開源,跨平台,它促進了異步I / O. 包括Microsoft,Netflix和PayPal在內的公司都使用它。
Scala:至少部分地設計為對許多人認為Java效率低下的反應,Scala是一種通用編程語言,首先簡潔。它在很多方面類似於Java,但包含的功能遠遠超出了Java的功能。
Clojure:Clojure是一種名為Lisp的通用編程語言的方言。使用動態類型系統和宏系統,它在Javascript引擎上運行。最重要的是,Clojure主要是為函數式編程而設計的。
Python:另一種強大的編程語言,Python是跨平台的,面向對象的,動態的和反射的。它強調可讀性高於一切,並依賴於相對少量的代碼來執行與其他語言相同的功能。
PHP:PHP是一種用於服務器端腳本和通用編程的語言。它非常受歡迎,可以嵌入到HTML代碼中,並且是Web上使用最廣泛的語言之一。
Go:Google於2007年創建,Go既是開源的又是免費的。它是一種與C類似的編譯靜態語言,但包含一些改進,使其更加簡單和安全。
Heroku Toolbelt
Heroku的原始命令行工具只能通過Ruby獲得。但隨着Heroku Toolbelt的推出,現在該工具可以在每個主要平台上實現一鍵安裝。工具帶具有許多優點,包括:
它是自包含的:使用工具帶,您可以立即獲得開始使用Heroku所需的一切。
它的速度更快:每次Heroku命令的啟動都會縮短幾秒鍾,使其比前一代命令快得多。
它不會發生沖突:因為它與自己的依賴項打包在一起,所以它不會與現有工具沖突。
自動更新:雲的眾多優勢之一,自動更新意味着錯誤修復,安全功能和新功能可以無縫地保持最新。
效率:它更強大,更高效!
Heroku正在成為當今網絡上最強大,最實用的平台服務之一。因為它易於使用,所以它進一步降低了加入開發社區的障礙。因此,現在是參加編碼課程,提高技能以及學習如何開發自己的Web應用程序的好時機。感謝Heroku,它從未如此簡單。