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

技術(shù)人員開發(fā)云計(jì)算從這里下手

云計(jì)算
云計(jì)算的熱度沒有隨著時(shí)間的推移而降溫,正相反,云計(jì)算的溫度還在不斷的攀升。隨之而來的就會(huì)使技術(shù)人員對(duì)于開發(fā)云計(jì)算的探討。本文就來幫助技術(shù)人員思考一下如何開發(fā)云計(jì)算。

云計(jì)算2009年仍然延續(xù)了它在2008年的熱度,不難預(yù)料,運(yùn)行在云上的應(yīng)用(以下簡(jiǎn)稱云應(yīng)用)肯定會(huì)越來越多,隨之而來的是,肯定會(huì)有越來越多的開發(fā)人員不得不考慮或者參與開發(fā)云計(jì)算。

 

云計(jì)算的本質(zhì)是通過互聯(lián)網(wǎng)訪問應(yīng)用和服務(wù),這些應(yīng)用或者服務(wù)通常不是運(yùn)行在自己的服務(wù)器上而是由第三方提供。對(duì)開發(fā)云計(jì)算的技術(shù)人員而言,在云計(jì)算模式下,盡管部署應(yīng)用時(shí)無需關(guān)心基礎(chǔ)設(shè)施方面的問題,但同時(shí)也帶來了一些新的問題,比如開發(fā)云計(jì)算人員不能用以前熟悉的方式調(diào)用數(shù)據(jù)庫、應(yīng)用程序呈無狀態(tài)特性以及必須采用不同的開發(fā)框架等。

 

開發(fā)云計(jì)算的挑戰(zhàn)

 

“開發(fā)云計(jì)算最大的挑戰(zhàn)是,軟件必須能根據(jù)應(yīng)用的需求自己調(diào)整和提供所需要的資源?!?/SPAN>Sun云計(jì)算部門CTO Lew Tucker說,幸運(yùn)的是,借助云平臺(tái)提供的API,云應(yīng)用的開發(fā)人員可以從云的提供方申請(qǐng)更多的資源。

 

開發(fā)云計(jì)算人員還必須進(jìn)行冗余設(shè)計(jì),要認(rèn)識(shí)到很有可能在“云”中的服務(wù)器只是普通的服務(wù)器,微軟Azure云平臺(tái)副總裁Amitabh Srivistava說,“很有可能服務(wù)器會(huì)出問題,因此,你必須在開發(fā)云應(yīng)用時(shí)考慮冗余。”

 

開發(fā)云計(jì)算時(shí)還必須考慮到Web應(yīng)用的無狀態(tài)特性(無狀態(tài)性是指客戶端和服務(wù)器端不必保存對(duì)方的詳細(xì)信息,服務(wù)器只需要處理當(dāng)前請(qǐng)求,而不必了解所有的請(qǐng)求歷史—編者注),Srivistava說,“如果你的程序要求保留狀態(tài)信息,程序在運(yùn)行過程中肯定會(huì)出問題。云計(jì)算的模式是,如果什么地方出了問題就終止它,然后另外再啟動(dòng)一個(gè)程序。只有保證每個(gè)應(yīng)用程序的運(yùn)行都是相對(duì)獨(dú)立的,也就是狀態(tài)無關(guān),才能達(dá)到這一目標(biāo)?!?/SPAN>

 

Srivistava進(jìn)一步解釋說,例如,在云中沒有本地磁盤這個(gè)概念,也沒有注冊(cè),在無狀態(tài)的應(yīng)用中,這些參數(shù)都要被封裝起來打包在調(diào)用的參數(shù)中。

 

Sun公司Tucker提醒說:“無狀態(tài)保證了應(yīng)用程序簡(jiǎn)單,但是,要開發(fā)出真正有趣而且好用的云計(jì)算應(yīng)用又需要一些狀態(tài)信息,比如我們必須保存用戶的信息以免要求用戶不停地登錄,這就是為什么我們?nèi)匀恍枰獢?shù)據(jù)庫或者其他一些什么東西來保存狀態(tài)的原因?!钡?,有部分云上的應(yīng)用(Web的前端)需要根據(jù)訪問量動(dòng)態(tài)地進(jìn)行調(diào)節(jié),必須是無狀態(tài)的。

 

開發(fā)云計(jì)算應(yīng)用的另外一個(gè)特點(diǎn)是:應(yīng)用程序的不同部分可能分別運(yùn)行在云的不同地方。例如,一個(gè)應(yīng)用程序的表現(xiàn)層可能運(yùn)行在Facebook,而其存儲(chǔ)部分可能運(yùn)行在亞馬遜的彈性存儲(chǔ)服務(wù)(S3)上,其應(yīng)用程序的邏輯部分又可能運(yùn)行在另外一個(gè)完全不同的地方。

 

“而以前程序員開發(fā)的程序都運(yùn)行在自己的服務(wù)器上?!?/SPAN> Tucker說,“這就意味著,開發(fā)云計(jì)算應(yīng)用時(shí)必須重新考慮系統(tǒng)的架構(gòu),特別是要考慮云應(yīng)用的大規(guī)模特性,不僅是用戶數(shù)量大,而且計(jì)算資源分布也很分散。”

 

Tucker補(bǔ)充說:“也不要把云應(yīng)用想得多么神秘。其實(shí)沒有什么訣竅,要讓開發(fā)云計(jì)算應(yīng)用可擴(kuò)展,需要仔細(xì)地設(shè)計(jì)和規(guī)劃?!?/SPAN>

 

不過,云平臺(tái)可以給我們提供一些幫助。在某些情況下,比如使用Google App Engine來開發(fā)某些特定的應(yīng)用時(shí),程序自然就具有了可擴(kuò)展性,無需開發(fā)人員考慮。有時(shí)候,我們可以使用某些設(shè)計(jì)模式,這些設(shè)計(jì)模式可以用來為應(yīng)用程序提供擴(kuò)展能力。例如,亞馬遜彈性計(jì)算云(EC2)Multiple Availability Zones,開發(fā)云計(jì)算人員在這里可以把一個(gè)應(yīng)用部署到多個(gè)地方運(yùn)行。

 

“以前,只有大公司能做到這一點(diǎn)?!?/SPAN> Kay Kinton公司的發(fā)言人說。EC2有一種稱為彈性IP的功能,它能快速建立一個(gè)互聯(lián)網(wǎng)地址的映射,把準(zhǔn)備發(fā)送給失敗的應(yīng)用實(shí)例的請(qǐng)求轉(zhuǎn)給一個(gè)有效的實(shí)例。

 

不同類型的數(shù)據(jù)庫

 

在云應(yīng)用中,抽象和無狀態(tài)在對(duì)數(shù)據(jù)庫的訪問時(shí)也同樣適用?!袄?,Azure就給 開發(fā)云計(jì)算人員提供了一種與訪問標(biāo)準(zhǔn)的關(guān)系型數(shù)據(jù)庫完全不同的方式?!?/SPAN>Benjamin Day咨詢公司總裁Ben Day說,“Azure的存儲(chǔ)引擎也沒有使用關(guān)系數(shù)據(jù)庫,因此以前開發(fā)應(yīng)用時(shí)所采用的很多方法在開發(fā)云應(yīng)用時(shí)就行不通了。”

 

他還以關(guān)系型數(shù)據(jù)庫中的存儲(chǔ)過程為例來說明,在關(guān)系型數(shù)據(jù)庫中,查詢邏輯與實(shí)際的數(shù)據(jù)位置很近,編程者可以明確知道數(shù)據(jù)在哪里、保存在哪些設(shè)備上,而在Azure云中,這個(gè)前提不再存在。

 

“開發(fā)云計(jì)算應(yīng)用在訪問數(shù)據(jù)庫時(shí)的困難在于,無法保證你要讀取的數(shù)據(jù)庫在某一指定的位置或者數(shù)據(jù)中心或者某一指定的設(shè)備上,”Day說,“因此,最終你只能使用最基本的SQL查詢語句,而很多存儲(chǔ)過程由于與數(shù)據(jù)庫的具體類型密切相關(guān)而不能使用?!?/SPAN>

 

另外,Day補(bǔ)充說,Azure的存儲(chǔ)引擎也與微軟規(guī)劃中的SQL Server的云版本SQL數(shù)據(jù)服務(wù)(SQL Data Services)有很大區(qū)別,因此,開發(fā)人員需要了解自己到底是在使用哪個(gè)數(shù)據(jù)庫引擎。例如,Azure把一個(gè)1MB的文件作為一個(gè)Blob類型的數(shù)據(jù)保存,而SQL Server中會(huì)把這個(gè)文件保存在一張表(table)中。

 

開發(fā)云機(jī)算應(yīng)用與普通應(yīng)用在訪問數(shù)據(jù)庫時(shí)有明顯區(qū)別的并不僅僅只有Azure,使用Google App Engine時(shí)也有同樣的問題。

 

GoogleApp Engine產(chǎn)品經(jīng)理Pete Koomen介紹說:“Google App Engine不僅對(duì)實(shí)際的物理硬件進(jìn)行了抽象,而且對(duì)關(guān)于設(shè)備的所有概念都進(jìn)行了抽象?!边@保證了開發(fā)人員把代碼上傳到Google以后,Google可以把這些代碼和數(shù)據(jù)庫分開管理。“因?yàn)?/SPAN>Google把其中的很多流程都實(shí)現(xiàn)了自動(dòng)化,因此,開發(fā)人員必須遵循一定的規(guī)則,這些規(guī)則與我們以前在傳統(tǒng)的SQL模式下的規(guī)則有很大區(qū)別?!?/SPAN>

 

在使用App Engine時(shí),開發(fā)人員把那些要長(zhǎng)期保存的數(shù)據(jù)存儲(chǔ)在Google的大表(Big Talbe)?!按蟊聿皇?/SPAN>SQL數(shù)據(jù)庫。我們之所以使用大表而不用SQL數(shù)據(jù)庫,原因在于SQL數(shù)據(jù)庫要支持很多功能(例如Join功能),這使得我們要把一個(gè)數(shù)據(jù)庫放到多臺(tái)服務(wù)器上運(yùn)行非常困難?!?/SPAN>

 

“在使用我們的系統(tǒng)開發(fā)云計(jì)算應(yīng)用時(shí),我們會(huì)提供一個(gè)編程模型,并從一開始就鼓勵(lì)程序員們采用一些反常規(guī)的方式,比如,開發(fā)人員會(huì)在一次存儲(chǔ)過程中把數(shù)據(jù)分散保存在多個(gè)位置。”他說,這樣做的好處是保證應(yīng)用程序在執(zhí)行查詢時(shí)效率非常高。

 

Koomen對(duì)在云環(huán)境中使用關(guān)系型數(shù)據(jù)庫持反對(duì)態(tài)度。他說:“我們發(fā)現(xiàn)在訪問量很大的情況下,關(guān)系型數(shù)據(jù)庫非常難于管理,為了解決高訪問量帶來的一系列問題,程序員不得不投入大量的時(shí)間和精力?!?/SPAN>

 

必須習(xí)慣于變化

 

咨詢公司Model Metrics曾幫助客戶在Salesforce.com和其他一些平臺(tái)上部署了云應(yīng)用。它們發(fā)現(xiàn)開發(fā)云計(jì)算應(yīng)用和B/S應(yīng)用開發(fā)的一個(gè)主要區(qū)別是,“云上的應(yīng)用改變要快得多?!?/SPAN> Model MetricsCTO John Barnes說,“例如,Salesforce.com一年要出好幾次新的版本,每個(gè)新版本中很可能都會(huì)有值得一用的新功能和新特性。”

 

Barnes建議,“作為一名云應(yīng)用的開發(fā)人員,你必須在技術(shù)上與云平臺(tái)保持一致,必須關(guān)注很多技術(shù)博客,也要積極參加一些網(wǎng)絡(luò)研討會(huì)?!?/SPAN>

 

開發(fā)人員還應(yīng)該了解不同的設(shè)計(jì)模式,例如最終一致性(Eventual Consistency,最終一致性是一種一致性的模型,用于并行編程,例如分布式共享內(nèi)存和分布式交易。最終一致性指的是,在一個(gè)較長(zhǎng)的時(shí)間內(nèi),如果沒有更新的話,所有的更新都會(huì)在系統(tǒng)內(nèi)部進(jìn)行傳播,最終保證所有數(shù)據(jù)的拷貝都是相同的—編者注)。 采用這種設(shè)計(jì)模式時(shí),如果程序?qū)?shù)據(jù)進(jìn)行了修改,也許要在幾毫秒之后才能在數(shù)據(jù)庫中反應(yīng)出來,“這種設(shè)計(jì)模式帶來的結(jié)果是,很可能從數(shù)據(jù)庫中取出的不是最新的值,”Barnes說,“由于諸如此類的原因,程序員開發(fā)云計(jì)算應(yīng)用時(shí)編程方式會(huì)有一些不同。”#P#

 

系統(tǒng)管理變簡(jiǎn)單

 

對(duì)程序員而言,并不是說云只是帶來麻煩,在云環(huán)境中,也有些事情變得簡(jiǎn)單了。

 

Barnes說:“比如,云提供的利用Web服務(wù)來組裝應(yīng)用程序的松耦合方法就把云變成了一個(gè)相對(duì)輕松的開發(fā)平臺(tái)?!?/SPAN>

 

這保證了開發(fā)云計(jì)算人員可以把精力集中在創(chuàng)新和業(yè)務(wù)邏輯上,而不用像以前一樣,要在一些基礎(chǔ)性和輔助性的工作上浪費(fèi)時(shí)間(如要關(guān)心操作系統(tǒng)和硬件的配置等問題)。例如,Salesforce.com的云開發(fā)平臺(tái)Force.com就提供了安全、工作流、系統(tǒng)管理和負(fù)載均衡方面的功能。

 

Model Metrics有一個(gè)客戶最初決定在微軟的.Net平臺(tái)上開發(fā)一個(gè)大學(xué)生管理系統(tǒng),后來發(fā)現(xiàn)如果改在Force.com上開發(fā),其開發(fā)成本可能只需要原來的1/31/4,因?yàn)?/SPAN>Force.com有很多現(xiàn)存的功能模塊可以利用。

 

兼顧可能的遷移

 

無論如何,開發(fā)者必須牢記開發(fā)云應(yīng)用與傳統(tǒng)的套裝軟件的區(qū)別。Barnes說,對(duì)云的開發(fā)人員而言,還有一個(gè)值得留意的是,開發(fā)云應(yīng)用時(shí)要注意不同云有不同的定價(jià)方法。

 

Salesforce.com開發(fā)者市場(chǎng)部副總裁Adam Gross還提醒那些準(zhǔn)備在云平臺(tái)上開發(fā)應(yīng)用的開發(fā)人員說,需要了解他所選擇的平臺(tái)提供了哪些功能、有哪些特點(diǎn),以便為將來的遷移做準(zhǔn)備,“開發(fā)人員在開發(fā)云應(yīng)用的第一天就要考慮到這個(gè)問題,應(yīng)該盡量選擇云平臺(tái)上的那些非專有的技術(shù)和功能,以保證有一天能夠順利地從這個(gè)平臺(tái)遷移到另一個(gè)云平臺(tái)?!?/SPAN>

 

Koomen對(duì)此也表示認(rèn)同,他說:“Google支持流行的Python語言和Django Web框架,這就在一定程度上保證了應(yīng)用的可移植性。不僅如此,Google現(xiàn)在正在開發(fā)開源的上傳和下載工具,來讓用戶方便地把數(shù)據(jù)上傳到App Engine中或者把數(shù)據(jù)從App Engine中下載下來?!?/SPAN>

【編輯推薦】

  1. 新一代開源云計(jì)算開發(fā)平臺(tái)
  2. 開源和SaaS產(chǎn)品著手重構(gòu)數(shù)據(jù)庫
  3. SaaS開發(fā)入門 阿里軟件平臺(tái)HelloWorld開發(fā)實(shí)例
責(zé)任編輯:桑丘 來源: 新浪科技
相關(guān)推薦

2014-01-23 11:11:31

2012-09-20 09:31:41

技術(shù)技術(shù)人員技術(shù)開發(fā)

2015-05-05 09:06:59

2017-09-14 17:12:58

2009-04-17 10:13:05

技術(shù)人員晉升職場(chǎng)

2009-12-25 14:17:36

ADO錯(cuò)誤

2009-10-14 10:18:53

薪酬

2012-01-13 15:48:21

IT技術(shù)人員

2013-08-06 15:16:27

技術(shù)人創(chuàng)業(yè)開發(fā)者創(chuàng)業(yè)移動(dòng)互聯(lián)網(wǎng)創(chuàng)業(yè)

2012-05-10 10:23:10

技術(shù)人員開發(fā)

2020-09-22 15:30:19

技術(shù)研發(fā)思維

2013-06-20 09:28:24

2013-08-06 09:42:59

技術(shù)人員面試

2018-10-09 10:57:48

技術(shù)KPI考核

2009-12-24 17:11:09

ADO與RDO

2010-08-09 17:08:13

IT技術(shù)人

2013-09-30 10:16:32

博客技術(shù)人員

2011-05-07 15:08:21

2010-01-13 16:54:29

C++測(cè)試

2009-12-25 13:37:09

退出Vi返回到shel
點(diǎn)贊
收藏

51CTO技術(shù)棧公眾號(hào)

主站蜘蛛池模板: 欧美一级黄带 | 久久精品亚洲欧美日韩精品中文字幕 | 久久精品久久久久久 | 精品av| www.av7788.com| 男人天堂av网 | 日本亚洲欧美 | 日韩理论电影在线观看 | 黄色一级片aaa | 一区二区三区视频在线观看 | 国产a区 | 99看片网| 亚洲精品视频在线看 | 黄色片大全在线观看 | 91久久 | 色视频在线播放 | 亚洲 欧美 日韩在线 | 国产福利免费视频 | 国内自拍视频在线观看 | 国产成人啪免费观看软件 | 亚洲精品久久久 | 欧美日韩综合精品 | 久久99精品久久久久久 | 久久里面有精品 | 国产精品不卡 | 国产小视频在线观看 | 国产欧美一区二区三区久久手机版 | 精品一区二区三区四区五区 | 国产福利免费视频 | 日本免费一区二区三区 | 国产乱码精品一区二区三区忘忧草 | 日韩欧美一区二区三区免费观看 | 黄色激情毛片 | 91久久久久久久久久久久久 | 少妇特黄a一区二区三区88av | 99在线免费观看视频 | 粉嫩一区二区三区性色av | 中文久久| 国产精品18hdxxxⅹ在线 | 精品国产一区二区三区性色av | 在线观看免费黄色片 |