善用開發利器 開啟雲端應用的天際線 智慧應用 影音
EVmember
ADI

善用開發利器 開啟雲端應用的天際線

  • DIGITIMES企劃

微軟MSDN提供支援,引導用戶開發Azure應用程式
微軟MSDN提供支援,引導用戶開發Azure應用程式

前言:
回顧2009年,「雲端運算」猶如旱地拔蔥,首度成為資通訊業界的頭號熱門名詞,許多IT廠商競相發展相關技術及應用服務,當時不少企業仍隔岸觀火,繼續緬懷傳統On-Premise架構;時至今日,雲端浪潮更加洶湧澎湃,應用案例快速增加,猶未跟進培養雲端應用開發能力的企業,顯然不宜再劃地自限。

看遍了數十年資訊技術演進的IT老手,信手拈來,多能輕易舉出一堆「偽命題」,也就是原本轟轟烈烈,到頭來卻無疾而終、銷聲匿跡的例子,最讓人印象深刻的,莫過於2000年前後曾風起雲湧的.com熱潮。

一朝被蛇咬,日後看到草繩,自然戒慎恐懼,不論外界談得口沫橫飛,一幅「此時不跟、更待何時」的態勢,但仍抱持停看聽的觀望立場;面對引領市場風騷已逾3年的雲端運算,亦復如此。後知後覺,未必全是壞事,但如果依然故我,硬是不「覺」,似乎就值得商榷。

儘管雲端運算延燒多時,相關訊息或素材滿坑滿谷,但不可諱言,現今仍有不少企業IT管理高層,仍視之為偽命題,始終原地踏步、不肯前進,所以此處仍需要重回初衷,再看看雲端運算到底是什麼,以判斷這些保守主義的信徒,是否真有道理。

第300期「政府機關資訊通報」曾有這麼一段話,伴隨網路普及,資源的共享趨勢益發重要,且隨應用系統漸趨分散,勢將造成各機關(或企業)在軟硬體投資的浪費,其中包含了高額的軟體授權費用,或是硬體資源平均利用率偏低,再者如尖離峰作業量差距過大,以致資源調度困難,假使透過網路,即可解決各單位建置系統就必須採購硬體設備之困境,則雲端運算應為當前最佳之解決方案。

以紐約時報為例,藉由掃瞄該報1851~1922年期間共計1,100萬篇文章之方式,產生高達1.5TB資料,接著上傳儲存於Amazon雲端平台,僅花費屈屈1,000美元,便充分表現出軟硬體相關資源結合之效能;藉由此例,資料透網路得以開放、共享、加值應用,理應是雲端運算最珍貴的核心精神。如果你所服務的機構,亦是如同紐約時報般,業已累積數十年、甚至上百年龐大資料者,但卻堅持採用傳統IT運作模式,意欲實現資料開放、共享、加值應用之目的,先撇開執行效率與難易度不談,至少可以確定,絕無可能以1,000美元得償所願,因為這筆金額,恐怕連一台高效能伺服器都買不起,更別提其他配備。

由此觀之,憑藉雲端運算,企業將能化不可能為可能,或者化難事為易事,如果善用這股力量,那麼就形同躍升至「可能」或「易事」這一邊,倘若眾家對手還未有此頓悟,一來一往之間,競爭差距就這麼底定了;時間是不等人的,因此「守舊者」不但應當打破成見,且應儘速建立雲端應用的開發能量。

工具愈趨成熟 有助縮短學習曲線
可喜的是,決意擁抱雲端的企業,已然明顯增多。綜觀各個人力銀行網站,具備「雲端服務應用開發工程師」之例,可說屢見不鮮,因此具備雲端服務系統設計能力,可開發以網路為基礎的應用程式,且能執行分散式平台及雲端運算系統研發的工程師,無疑是企業亟需建立的人才資源部位。

再將時間點拉回2~3年,時值雲端初來乍到之際,當時人們看待雲端應用開發一事,依然存在「不如想像中容易」的觀感,當時大家的主要考量是,畢竟雲端軟體執行的架構,與傳統的單機執行、Client/Server架構有所不同,同時也牽涉在大量經虛擬化的分散式運算架構上執行,以往一般傳統的程式開發寫作訓練,尚未提供相關設計、開發、測試與驗證等的訓練,因此不乏進入門檻。

以微軟為例,儘管當時已推出AppFabric等相關產品,希冀讓傳統.NET開發工程師,得以更易於將既有On-Premise程式,移植到雲端平台上運行,確實有助於降低門檻,但對於從未接觸雲端概念的程式開發者而言,仍需一段學習與適應時間。

除了微軟外,包括Amazon、Google或Salesforce.com等對於雲端著力甚深的業者,也早已針對有意投入的開發者,推出特定的程式語言或資料庫格式,但全都需要經過特殊學習,仍無法在一時半刻間立刻移植。

只不過,在時序推移下,隨著上述大廠持續加碼投入,使得相關的工具資源益發豐富成熟,譬如被微軟喻為「神兵利器」的Visual Studio 2012,佐以程式開發人員不斷吸收、咀嚼的學習歷程,如今開發者大可僅需注於熟悉的程式語言及技術,不論是.NET、C++、ASP.NET、WCF或Visual Studio,皆能立刻進入雲和端上的各種應用及App開發領域。對於有意挺進雲端,但苦於不熟悉開發技巧、又擔心需要為此大量投資的企業,確實是一大福音。

首先談到Windows Azure,其提供BLOB、Queue及Table等三種基本資料儲存服務,程式開發者可藉由HTTP通訊協定及REST API加以存取,另也提供.NET Client函式庫予Silverlight開發人員所用,上述功能皆被集結於Windows Azure SDK與Visual Studio Tools for Windows Azure當中,俾使isual Studio使用者能輕易開發Windows Azure雲端應用程式。另值得一提的,Windows Azure SDK亦提供Development Storage Services及Development Fabric等堪稱實用的功能,好讓開發者得於本機重現Windows Azure 服務平台,以利減輕發布與測試Azure 應用程式之負擔。

此外,透過Spring Release功能推陳出新,現今可被允許執行Windows Azure應用程式的角色,已不限於過往的Web Role或Worker Role等兩種類型,也就是說,對於一些僅具簡易需求的使用者而言,只要善用Web Platform Installer裡頭的Web Application Gallery,便垂手可得現成套件,即使不諳Visual Studio與Windows Azure開發技巧,也能立即上手,進行雲端程式開發。

配合新版Spring Release問世,能夠支援Visual Studio 2012的首套Windows Azure SDK,已在2012年六月期間發布,亦可向下相容於Visual Studio 2012 RC版本。

至於其他廠商部分,Salesforce.com所提供的Salesforce Platform,已發展成為含括Force.com、Heroku、Database.com、Site.com、Chatter及ISVforce的整合式環境,旨在協助企業建構或轉型應用程式。

其中Force.com功能在於建置並部署員工應用程式,箇中包含可用以快速建立應用程式的視覺化工具,同時提供開放性API以滿足用戶整合需求;Heroku則是一套類似Google App Engine的PaaS服務架構,對於財力有限的新創企業甚具吸引力,無需經過繁複的安裝或設定歷程,即可輕易執行Ruby on Rails或Sinatra等任何Rack程式,稱得上是Ruby程式語言的最佳雲端環境。

至於其他部分,Database.com乃是其餘各項產品背後的核心資料庫技術,所獨立而成的,其專為行動或社交應用程式所設計,可支援Java、.NET或Amazon網路服務等不同介面;Chatter旨在幫助企業建立免費的私人社交網路,觸動協同合作能量;ISVforce被定位在散佈應用程式及拓展雲端業務的輔助工具,舉凡從試用到部署的客戶生命週期管理,乃至於頗具彈性的封裝及散佈選項,皆被涵蓋其中。

而在虛擬化及雲端領域頗負盛名的VMware,也提供開放式的PaaS平台-Cloud Foundry,旨在協助開發者加速雲端上應用系統的部署與應用、提供開發框架(Framework)暨相關服務,且有助於大幅簡化部署與功能拓展之時程;其最令人津津樂道之處,即在於饒富彈性,可在單一虛擬機器內執行,亦可變換跑道至公有雲、或私有雲環境執行。