云API和軟件架構(gòu):云應(yīng)用成功的關(guān)鍵
以下內(nèi)容摘自Shlomo Swidler關(guān)于TechTarget BAA集團(tuán)Java大學(xué)介紹的一部分。該系列報(bào)道涵蓋了Java開(kāi)發(fā)問(wèn)題、以及近年來(lái)已逐漸影響Java發(fā)展的重要技術(shù)。
如今,當(dāng)涉及云應(yīng)用和集成時(shí),開(kāi)發(fā)團(tuán)隊(duì)往往會(huì)面對(duì)一個(gè)未知的領(lǐng)域。隨著越來(lái)越多的服務(wù)能夠在云計(jì)算平臺(tái)上運(yùn)行,云計(jì)算的相關(guān)開(kāi)發(fā)也變得越來(lái)越重要。云計(jì)算咨詢公司Orchestratus的創(chuàng)始人Shlomo Swidler表示,云計(jì)算是開(kāi)發(fā)人員能夠?yàn)榭蛻籼峁└玫目煽啃院透郊又档谋赜芍?。為了?shí)現(xiàn)云計(jì)算中應(yīng)用程序的成功開(kāi)發(fā),Swidler強(qiáng)調(diào)了如下幾點(diǎn):使用高效的云API,在合適的位置擁有一個(gè)以服務(wù)為導(dǎo)向的堅(jiān)固組件架構(gòu),以及做出正確的部署與管理選擇。
在過(guò)去,交付模式是現(xiàn)實(shí)可見(jiàn)的;公司可以把硬件郵寄給客戶或通過(guò)其他形式交付。但是現(xiàn)在,大多數(shù)成功的公司為客戶提供了快速、簡(jiǎn)便的在線訪問(wèn)方法。如果客戶無(wú)法獲取,那么服務(wù)就是失敗的。
通過(guò)減少開(kāi)發(fā)人員用于編寫(xiě)某種類型代碼的時(shí)間,云計(jì)算可以幫助加速交付過(guò)程,Swidler說(shuō)。它還能減少時(shí)間浪費(fèi)。“不再需要從制造商處等待硬件的時(shí)間,“他解釋道。”使用云計(jì)算,你能夠即時(shí)訪問(wèn)硬件。”
“這可能聽(tīng)上去似乎有違常理,如果供應(yīng)商能夠擁有越多的控制,那么你在云計(jì)算中的交付的可靠性就有可能越高,但事實(shí)上確實(shí)如此,”Swidler繼續(xù)道。“每當(dāng)一個(gè)供應(yīng)商為你提供一個(gè)服務(wù),其基于云計(jì)算的事實(shí)就意味著你能夠通過(guò)API控制該服務(wù)。”
云API、架構(gòu)以及部署
事實(shí)上,高效的云API是成功云應(yīng)用和集成設(shè)計(jì)的關(guān)鍵。它們可使開(kāi)發(fā)人員能夠重新配置應(yīng)用程序和集成組件,而不必修改或編寫(xiě)新的代碼。“請(qǐng)確保,這一切——我的意思是一切——都有一個(gè)API,”Swidler建議道。
“服務(wù)需要雙方通過(guò)API實(shí)現(xiàn)相互交流,以便于在你需要的時(shí)候你可以靈活地重新配置它們。”這就意味著更快、更簡(jiǎn)便的故障恢復(fù)。
Swidler建議,應(yīng)當(dāng)把每一個(gè)服務(wù)分解成為一系列更小、更易于管理的組件。一旦在云計(jì)算中,這些服務(wù)就可獨(dú)立運(yùn)行、縮放規(guī)模和恢復(fù)。“停機(jī)時(shí)間的影響已被完全消除,”他說(shuō)。“這也使得單個(gè)小組件的優(yōu)化相對(duì)于全部大型組件的一次性優(yōu)化變得更為簡(jiǎn)便。”
當(dāng)從傳統(tǒng)硬件遷移至云計(jì)算時(shí),開(kāi)發(fā)人員必須在IaaS、PaaS或客戶硬件中做出選擇。正確選擇是成功云應(yīng)用的關(guān)鍵。在做出這一部署選擇中,開(kāi)發(fā)人員應(yīng)當(dāng)考慮應(yīng)用程序的復(fù)雜性以及所需控制的數(shù)量,Swidler說(shuō)。“現(xiàn)在,你能夠在PaaS上部署相對(duì)簡(jiǎn)單的應(yīng)用程序,在IaaS上部署更為復(fù)雜的應(yīng)用程序,”他補(bǔ)充道。
無(wú)論采用何種部署方法,所有的云計(jì)算計(jì)劃都需要一個(gè)堅(jiān)實(shí)的管理策略。當(dāng)遷移至云計(jì)算時(shí),能夠跟蹤、監(jiān)控和可視化顯示應(yīng)用程序相關(guān)的方面都是非常重要的。“尋找合適的管理框架,將有助于你抽取低級(jí)別管理因素,并納入更高層次的架構(gòu)中,如管理一個(gè)單一堆?;蜃鳛橐粋€(gè)單元存在的服務(wù),”Swidler建議道。