成人免费xxxxx在线视频软件_久久精品久久久_亚洲国产精品久久久_天天色天天色_亚洲人成一区_欧美一级欧美三级在线观看

云技術開發:引入前必須了解的九大難題

原創
云計算
無論是在開發、測試或是將自己的應用程序部署到云環境的過程中,我們都必須拋棄一些舊有觀念并重新學習,只有這樣,云技術才能真正發揮其強大的實用功能。

無論是在開發、測試或是將自己的應用程序部署到云環境的過程中,我們都必須拋棄一些舊有觀念并重新學習,只有這樣,云技術才能真正發揮其強大的實用功能。

應用程序基于云技術的開發及測試目前正日益普及,越來越多的企業開始公布其基于公共云或是私有云的計算計劃。云技術開發通常包括整合開發環境,應用程序開發周期管理組件(例如測試及質量管理、源代碼及配置管理和持續提交請求工具等)以及應用安全性測試部分。

盡管技術人員和開發人員在以云技術為基礎的開發方面已經很有經驗,并堅信這類技術對開發環境的益處顯而易見——例如節約成本并可讓產品更快投入市場——但他們同樣提出警告,稱其中存在無數挑戰及意外狀況。

云技術在開發中究竟能普及到何種程度目前尚不明朗。但業內人士給出的分析結果表明,這一普及度無疑是在上升當中。在2011年2月的研究報告中,Gartner公司表示那些參加了該公司專題研討會的客戶們普遍認為,云計算項目對他們而言“越來越具有吸引力”,并打算以此來加強開發能力及優化現有的自定義網頁應用程序維護手段。

“我更多地看到了其原型及并行分支的發展情況,但其在負載及性能測試領域的巨大塑造空間也極具前景,”Eric Knipp說,他是Gartner公司的首席分析師。

如果大家正在首次尋求云技術開發的起步方式,那么下面所列出的九項建議涵蓋了那些大家可能面臨的種種障礙,并指出如何從已經走過這段坎坷道路的成功開發商那里學到應對這些問題的方案。

云開發難題一:云技術并不總像“真實世界”那樣簡單

開發人員可能會發現他們在開發產品時,將其配置復制到云平臺上是個很難操作的過程。例如,對于一個利用云技術開發,并打算在完成后基于本地主機運行的應用程序來說,大家可能需要對所有關于本地與云服務器端不同運行環境的遺留問題進行檢測,而沒法簡單地將配置復制一下就指望能夠解決問題。Knipp說:“這意味著開發人員可能不得不耗費更多的精力來尋找一款合適的測試工具來對自己的產品進行檢測及核對。”

服務器虛擬化技術可以在這方面幫上忙,Knipp說道,而開發人員可以利用到目前市場上已經存在的、用以解決復數化/并行類開發問題的產品。就拿iTKO公司來說吧,它出品了一款名為Lisa的軟件套裝,幫助企業將自己開發的應用程序真正應用到云中。

那些習慣于在非云環境下開發程序的開發人員也可能會遇到麻煩,比如他們正打算在本地主機上制作一款將運行于云環境下的應用程序。舉例來說,Greg Taylor,他在俄亥俄州建立了一套音樂教育協會網上登記申請系統,沒想到,為了這樣一款簡單的應用,他卻不得不深入了解數據庫結構及用戶們與他所制作的程序的交互過程。

這個應用程序所處理的內容是全州范圍內各音樂學院的藝術表演登記,使用MySQL數據庫作為后端,并利用Alpha軟件公司出品的Alpha Five 10.5來制作前端。“我過去一直在使用FileMaker Pro,這款產品對于數據庫結構方面的要求一向是非常寬松的,”Taylor說。“就算是設計本身很糟糕,仍然能夠獲得不錯的成功工作效率。

但基于MySQL的開發工作迫使Taylor將其預案系統組織起來,以便網頁應用程序能夠發揮出最佳的性能表現。每當需要添加更多區域都依靠返回表格結構來實現是非常耗時的,因為它涉及到不同開發工具之間的切換作業。這時就可以利用Navicat來應對MySQL,而Alpha Five則用來處理網頁頁面的實際設計,他說。由前一款工具負責創建數據庫主體結構,后一款工具為用戶提供互動頁面,以便輸入及編輯數據庫中的各項信息。

“這可能并不是關于開發人員費盡心思來改變既有數據庫的問題,”Taylor說道。“一般來說開發人員可以利用Alpha Five輕松地制作用戶訪問的網頁。但對于我來說,我需要同時開發數據庫和網頁,這樣一來我必須要謹慎安排開發計劃,因為開發工具之間的切換是非常實際的問題。”

為了避免這種長期存在的切換問題,Taylor不得不改變了自己的數據庫開發方式:“通過制作一幅清晰的ERD(即實體關系圖),我將開發流程變得更為直觀,這對網頁應用程序制作是非常有益的,并使我的整體開發時間大大縮短。”

在某些情況下,云環境下的開發工具在使用時也是很類似于本地開發的——至少類似于一些過時的本地開發方式。Jeff Hensley,DaVita公司(一家在腎透析方面非常權威的專業醫護公司)人力資源信息部門的高級分析師,對于開發人員們需要在云開發環境中用到命令行工具,XML以及SQL表示極為驚訝。“這些陳舊的開發工具讓我感覺回到了DOS時代,”他同時對未來做出了預計,認為古董級的開發方式會導致程序制作周期大大延長。

DaVita公司在日常運維中同時使用了基于云技術的應用交付平臺及基于本地服務器的開發工具、人力資源數據管理和商業智能應用程序。

云開發難題二:有些應用程序無法在云環境中發揮理想的作用

越是難以訪問或是難以復制的系統應用集成體系,就越是難以將其開發及測試工作放在云環境下完成,Knipp如是說。

舉例來說,Dan Stueck,Faith Educational Ministries(信仰教育部門)IT業務副總裁,一直盡量避免在那些高端應用程序的開發過程中涉及云技術,因為其中涵蓋了一些難以處理的極端數據安全或規則限制以及類似Cobol這種傳統編碼項目所引發的問題。“高端開發和云技術最好別湊到一起,”他說。“一方面是出于明顯的安全保障考慮,另一方面則是因為有些編程語言在云中‘玩不轉’。”

當然Stueck也會在適當的時候運用云技術,比如他在Amazon.com的公共云服務器上建立了一套學生信息系統,能夠保存學生的成績單,并制作了一款能夠遠程進行教材銷售的云應用程序。

云開發難題三:開發人員通常對不熟悉的云環境表示抗拒。

云計算對于很多機構來說仍然算是相對較新的領域,而且對于開發環境來說,它也可以被看作是一種顛覆性的技術。20/20集團,一家專門提供銷售外包服務的供應商,利用Salesforce.com推出的Force.com云平臺構建起了一款自定義應用程序,允許外包服務的銷售代表利用它來完成從預訂到開發票再到提供支出清單等一系列工作。

“最出人意料的情況是,我們的難題在于如何搞好整個【云開發】項目,以使其更容易為公司的管理及銷售團隊所接受,并明確同事之中誰來使用這套系統。此外,我們還需要考慮IT機構特別是開發人員到底愿不愿意為我們完善這樣一套系統,”Mark Warren說道,他是20/20公司的總設計師。

IT人士習慣于使用微軟的.Net,SQL Server,Java以及其它傳統的開發平臺,Warren說,而Force.com所使用的則是一套完全不同的模式。“如果你了解SQL和Java,那它們就是你的百寶箱,沒人愿意丟掉自己擅長的工具而去使用一套完全陌生的平臺,”Warren說。

作為應對,銷售應用程序的開發主要由業務人員來完成而非IT開發人員。這一決定給我們自己帶來了一系列挑戰,Warren說道,而最大的挑戰就是業務人員在變化管理及IT應對方面缺乏概念。“IT有自己的一套嚴格的規則,而商務人士往往不習慣于將其貫徹執行,”Warren說。“我們必須盡快將他們在變化管理方面的錯誤認識糾正過來。”

對于專業的技術人員不愿在云環境中進行開發工作的問題,能夠幫助云計算迅速普及的解決方案也不是沒有,Warren說。“培訓當然是個不錯的辦法,至少很方便,”他說。“不過,除非IT文化本身能夠變得更容易接受新方式及新技術,否則對機構進行革新重組(即招納新的開發人員)恐怕是惟一的選擇。”

云開發難題四:教材及說明的匱乏阻礙開發人員研究云技術

能夠幫助開發人員理解云技術及其相關工具和資源,以使他們能夠順利在云環境中構建應用程序的書面材料極為匱乏,DaVita公司的Jensley對于這種現狀表示驚訝。
“我當然希望這種狀況能夠得到改善,因為隨著越來越多的公司開始接受云技術這一概念,此類需求無疑會大大增加,”Hensley說道。“我們能夠通過與咨詢公司合作的方式扭轉這一不利局面。”

#p#

云開發難題五:網絡問題可能對私有云環境造成困擾

在云環境中進行開發,有時候同時意味著我們要在自己的私有云下進行開發,因為在私有云中沒有用戶過多所帶來的高負載影響,因此能為開發人員提供全天候穩定快速的工作環境。在私有云環境下,“挑戰之一是如何預測并制定處理方案,來解決定期及不定期出現的各種服務器故障,以及如何順利地進行設備切換,”David Intersimone說道,他是Embarcadero Technologies(一家數據庫管理工具制作公司)的開發人員關系部門副總裁。

Enbarcadero公司正使用其虛擬化數據中心來處理應用程序的開發及測試。“對于內部的私有云,我們有兩種選擇:選擇特定的日期或時間,并以一定的順序安排各服務器的運作,”Intersimone說。“或者是自動構建故障檢測機制,在運行過程中對我們私有云的主要相關設備及開發工作所處區域進行監控。”

如果要獲得更多可用的開發空間,Intersimone表示他正在考慮采用由CohesiveFT公司提供的云容器以及虛擬專有網絡。它們能夠為公共云及私有云根據具體需求提供擴展、故障切換、災難恢復及突發情況備份等服務。

其它可能會影響開發及測試的因素包括網絡延遲、網絡帶寬等,這類情況在世界上的某些國家中尤為常見。Embaracdero公司的研究及開發中心遍布斯科茨谷、加利福尼亞州、加州蒙特里、多倫多、圣彼得堡、佛羅里達州及羅馬尼亞的雅西,此外還在世界范圍內分布著大大小小的團隊及個人研發中心。

考慮到Embarcadero公司上述復雜的地理分布狀況,開發環境也就“更難保證程序的構建、檢查以及自動測試執行的同步完成,”Intersimone說。為了解決這一問題,開發人員決定在本地主機上進行開發工作,并正如代碼核對一樣,在虛擬服務器上將開發成果發布出來。而Embarcadero公司所要做的是借助Subversion(一款開源工具,用以控制源代碼)來確保所有這些工作成果能夠及時準確地與私有云中的版本進行同步。

“當一個階段性成果被構建完成,它將自動由驗證體系進行運行測試,”Intersimone說。“然后將通知發布到整個開發團隊中,并且該成果將被立即上傳到我們開發中心的虛擬機中去,以接受進一步的自動測試。”當自動及人工檢測全部完成后,電子郵件會通知到每位開發人員。“上述所有步驟在應用程序的開發過程中不斷循環,”他說道。

云開發難題六:在云環境中運行容易造成資源浪費

另一個潛在的問題是應用云技術會浪費資金。開發人員很容易就會忘記或者是忽視掉應該把不使用的虛擬機關閉。“我已經聽到了一些客戶的聲音,如果讓開發人員放開了去使用虛擬機資源,遇上周末的時候他們往往就把那些運行著任務的設備直接扔下了,”來自Gartner公司的Knipp說。“如果這些設備只是自己企業內部所購買并部署的私有服務器,倒也沒什么大不了的,只是耗電而已。但當他們所使用的是計時租賃的公共云服務時,那就絕對是對金錢的極大浪費。”

Knipp說他希望這一問題會成為推動各企業部署私有云設備的動力。

盡管讓開發人員使用私有云進行工作幾乎不會導致過于高昂的支出,但是“在自架服務器上,私有IaaS(基礎設施即服務)環境中,開發人員能夠盡情玩轉虛擬機而不必將其關閉,”Knipp說道。“這種習慣性行為會導致大量有效資源被虛開著的虛擬機所占用,進而使得整個企業機構不得不購買多于所需的硬件設備來應對這一局面。”

云開發難題七:云許可中那些莫名其妙的部署限制條款

在與云開發相關的非技術類問題中,影響最大的莫過于應用許可限制了。兩年前Kelly Service這一國家級臨時機構決定將Salesforce.com的Force.com作為平臺載體,以使用其自主研發的應用程序來幫助進行云環境下的軟件開發。

云開發帶來了種種益處,例如縮短應用程序開發周期以及降低開發成本,Joe Drouin說,他是Kelly Services的CIO。但該公司也在應用許可方面遇到了一些意料之外的麻煩,尤其是在反饋哪類用戶將會使用這款軟件以及其所能負載的訪問對象數量上。最終,在開發的“某些層面上我們驚訝地得知了自己能做或不能做哪些事情,有些條款實在是讓人費解,”Drouin說。

云開發難題八:高集成度架構使故障排查更難實施

將新應用程序與現有的程序整合起來可以說是開發過程中的關鍵性步驟,而云技術的引入從集成角度來說帶來了更多的挑戰,Drouin說道:“利用云計算時,企業用戶一般都不具備可以將其云服務供應商的基礎設施進行開放式接入、應用和整合的平臺。”

Kelly公司在基于云的應用程序與其內部部署系統以及多個云應用程序之間的協作性能問題方面交出了令人滿意的答卷。這類問題真的很難解決,因為公司通常來說只能對自己的基礎設施進行排查,Drouin說道。

為了盡量減少高度整合所帶來的問題,Kelly的開發人員們盡可能嘗試利用云供應商的API(即應用程序編程接口)來解決問題;這種方案相當容易,因為多數云服務供應商都會公開其API,Drouin說。

云開發難題九:云技術迅猛發展,前進步伐難以跟上

IT服務供應商Avanade使用的是部分歸屬于微軟的Azure云平臺,并利用微軟提供的開發工具來對企業內部及客戶端的業務進行開發和測試。

該開發工具與舊有工具較為類似,開發速度與測試環境在穩定性方面進行了強化,Graham Astor說道,他是Avanade公司的全球解決方案總監。但是“在不斷發展的云技術領域,要保持開發平臺的同步高速發展意味著必須對其進行頻繁更新,”他說。

Azure平臺需要每兩個月就對其性能及功能進行改進,因此Avanade每個月都需要與微軟的產品團隊成員進行會談,以獲取最新的變更信息。其它公司也面臨相同的境況嗎?“我不知道,”Knipp說,“但微軟肯定會全力支持Azure的咨詢管理工作,以推動其大規模普及。”

盡管路途坎坷,云開發仍然大有可為

盡管對于許多嘗試擺脫傳統開發方案而轉向云技術應用開發的企業來說,都面臨著大量潛在的新挑戰。然而無論如何,云技術還是使開發的資源及成本投入變得更為靈活、操作復雜性得以降低,而這兩點都使得應用程序的開發周期大大縮短。

原文名:Cloud development: 9 gotchas to know before you jump in 作者:Bob Violino

【本文乃51CTO精選譯文,轉載請標明出處!】

【編輯推薦】

  1. 使用Microsoft Azure 讓云遷移變得簡便的5種方法
  2. VMware的混合云遷移工具:vCloud Connector
  3. 企業CRM等業務系統遷移到 "云"中的最佳實現 
  4. 云計算該“遷移”還是“自建”? 
  5. 云遷移全攻略:哪些應用適合遷移
  6. 云遷移≠云轉型 先遷移還是先轉型?
  7. 實戰系列 Windows Azure開發者之任務

 

責任編輯:王勇 來源: 來源:51CTO
相關推薦

2022-03-01 14:12:22

區塊鏈技術安全

2012-04-25 15:57:57

Android

2016-06-28 09:36:04

運維DevOps實踐

2021-08-13 11:30:07

大數據數據分析據中心

2018-04-25 15:50:50

2012-02-03 08:47:48

2009-08-12 18:14:00

C# WebServi

2010-03-09 17:23:12

python開源

2020-09-04 15:07:54

網絡威脅情報CTI網絡攻擊

2018-07-13 05:04:08

物聯網IoT網絡

2013-01-21 10:46:34

公有云IaaS云計算

2018-07-20 14:41:15

數據中心遷移管理運維

2011-07-25 10:42:47

2011-12-15 09:48:07

2009-10-29 09:32:51

寬帶接入網

2018-01-25 10:02:30

云計算區塊鏈人工智能

2010-09-15 10:23:11

數據中心設計

2019-03-15 10:25:00

技術研發指標

2020-10-13 09:28:51

vue開發

2013-07-18 09:38:26

點贊
收藏

51CTO技術棧公眾號

主站蜘蛛池模板: 四虎永久免费影院 | 日韩久草 | 免费观看的黄色网址 | 国产乱码精品一区二区三区忘忧草 | 一区二区三区视频在线 | 亚洲国产精品一区二区久久 | 亚洲精品视频在线播放 | 九九九国产| a级片播放 | 99色播| 99re66在线观看精品热 | 成人精品鲁一区一区二区 | 欧美日韩成人一区二区 | 欧美一区二区三区在线播放 | 午夜精品一区二区三区在线视频 | 国产精品一区在线 | 久久久久国产成人精品亚洲午夜 | 午夜黄色影院 | 特黄色毛片 | 精品www | 国产在线小视频 | 91色在线 | 国产精品视频免费观看 | 日本特黄a级高清免费大片 国产精品久久性 | 久草免费视 | 久久国产精品免费视频 | 欧美国产中文字幕 | 亚洲欧洲一区 | 国产午夜精品一区二区三区嫩草 | 国产精品亚洲视频 | 成人一级视频在线观看 | 欧美久久久久久 | 黄色国产在线视频 | 亚洲国产一区二区三区 | 国产精品黄 | 亚洲码欧美码一区二区三区 | 亚洲精品一区在线 | 特黄视频 | 日韩欧美电影在线 | 九九色九九 | 国产精品久久久久久婷婷天堂 |