上云不買云主機(jī),這么做省錢還安全(下)
上期《上云不買云主機(jī),這么做省錢還安全(上)》一文中,易縱互聯(lián)(北京)科技有限公司CTO杜鵬介紹了51ASPX.COM(以下簡稱51ASPX)如何從托管服務(wù)器轉(zhuǎn)變?yōu)楣性朴脩,以及他們(yōu)槭裁礇]有像大多數(shù)企業(yè)一樣,選擇云主機(jī)而是選擇PaaS服務(wù),從而實(shí)現(xiàn)了更好的經(jīng)濟(jì)性和靈活性,進(jìn)一步降低了維護(hù)成本。本期杜鵬將繼續(xù)介紹,采用PaaS服務(wù)對(duì)軟件架構(gòu)的要求以及他們對(duì)采用PaaS服務(wù)的一些體會(huì)。
至頂網(wǎng):看起來,PaaS服務(wù)模式有很多特點(diǎn)或者說優(yōu)勢,那么,它對(duì)部署到云上的應(yīng)用程序是否有要求?
杜鵬:要想將應(yīng)用以PaaS服務(wù)形式部署,對(duì)軟件的架構(gòu)的確是有要求的,因?yàn)檐浖泻芏嗖僮鞑煌恕1热,傳統(tǒng)架構(gòu)下寫一個(gè)日志文件,如果用虛機(jī)就直接寫到本地了;如果換成PaaS服務(wù),就要用云服務(wù)商提供的一個(gè)接口來傳輸數(shù)據(jù),然后存放到云數(shù)據(jù)庫上。
再比如,我要做圖片處理,原來我自己做要部署到虛機(jī)上,虛機(jī)上開端口,進(jìn)行圖片處理和圖片交互,F(xiàn)在采用廠商的云服務(wù)以后,不用開端口,只要在配置文件里進(jìn)行配置,傳一些參數(shù)就可以了。
PaaS模式擴(kuò)展非常容易,可以很容易進(jìn)行擴(kuò)展。而如果放在虛機(jī)上,負(fù)載上來,要再加一臺(tái)虛機(jī),然后兩臺(tái)虛機(jī)之間要做負(fù)載均衡,或者把這個(gè)虛機(jī)配置再調(diào)高,這個(gè)過程中這個(gè)業(yè)務(wù)可能會(huì)中斷。而PaaS模式時(shí)從一個(gè)核心擴(kuò)展4個(gè)核心,是可以自動(dòng)進(jìn)行擴(kuò)展,好幾個(gè)服務(wù)同時(shí)并行,只要之前在底層把這個(gè)配置配好,就基本不影響你正常業(yè)務(wù)進(jìn)行,運(yùn)維層面也減少了運(yùn)維成本。
至頂網(wǎng):如果要想將傳統(tǒng)架構(gòu)改變成適合PaaS服務(wù)的形勢部署,這種改造工作量是不是會(huì)很大嗎?
杜鵬:不是很大。實(shí)際難度與原來開發(fā)架構(gòu)設(shè)計(jì),特別是系統(tǒng)耦合性有關(guān)。比如,原來是松耦合的可能就還好。我們建議,這種改造可以分布進(jìn)行,一部分一部分去遷到云上。比如,系統(tǒng)里面的數(shù)據(jù)庫、文件存儲(chǔ)等都有對(duì)應(yīng)的云服務(wù),可以先把你的文件存儲(chǔ)遷到云上,采用PaaS服務(wù),文件遷完之后再遷數(shù)據(jù)庫,最后遷你的應(yīng)用。
至頂網(wǎng):云主機(jī)方式在應(yīng)對(duì)大流量負(fù)載時(shí)可以通過負(fù)載均衡技術(shù)來滿足彈性的需求,如果用PaaS模式,擴(kuò)展的彈性是如何保證的?
杜鵬:采用PaaS云服務(wù)可以實(shí)現(xiàn)自動(dòng)伸縮,自動(dòng)進(jìn)行負(fù)載均衡。你采用PaaS服務(wù)就像是配置一個(gè)大系統(tǒng),配置一個(gè)大系統(tǒng)底層就OK了,其他的問題都交由云服務(wù)商來解決。
如果并發(fā)訪問量突然有上升,峰值突然達(dá)到2000、3000、甚至5000時(shí),云服務(wù)商瞬間可以啟動(dòng)多臺(tái)PaaS服務(wù)來應(yīng)對(duì)突如其來的這些流量,保證服務(wù)不會(huì)崩潰,這是PaaS服務(wù)的優(yōu)勢。如果用虛機(jī)或者云主機(jī),突然有大流量到了很可能就宕了,到時(shí)整個(gè)網(wǎng)站或者服務(wù)就會(huì)癱掉。而且,不像原來采用云主機(jī),為了維護(hù)一個(gè)服務(wù)狀態(tài)還要維護(hù)一個(gè)操作系統(tǒng),有點(diǎn)浪費(fèi)了,而且風(fēng)險(xiǎn)也比較高。因?yàn)樘摍C(jī)上可能有漏洞、操作系統(tǒng)層面也可能有。
至頂網(wǎng):云主機(jī)訂閱是一般是根據(jù)配置來的,比如幾個(gè)核、多少內(nèi)存、多大硬盤,PaaS服務(wù)如何考慮這方面的問題?
杜鵬:PaaS是按使用計(jì)費(fèi),與具體配置和使用時(shí)間,可以按小時(shí)、也可以精確到分、甚至秒。在配置方面,與云主機(jī)類似,會(huì)因?yàn)楹诵臄?shù)、存儲(chǔ)空間以及帶寬不同而不同。與云主機(jī)配置稍有不同的是,購買云主機(jī)其配置一般人會(huì)按照負(fù)載高峰時(shí)來配,但這種高峰吹西安機(jī)會(huì)一般是很少的,因此大部分時(shí)間資源有閑置,也就是有浪費(fèi)。而在訂閱PaaS服務(wù)時(shí)可以很容易實(shí)現(xiàn)彈性:如果忙,配置就自動(dòng)增加,如果閑配置就自動(dòng)降下,相應(yīng)的費(fèi)用也就低了。
至頂網(wǎng):你前面提到采用PaaS模式可以改善安全性,具體是什么原因?
杜鵬:我們自己管理服務(wù)器時(shí),無論是ASP或者PHP,“被黑”都是常有的事,“被黑”黑客進(jìn)你服務(wù)器,把你的數(shù)據(jù)都拿走了。但現(xiàn)在我們就很少擔(dān)心這個(gè)問題,這是因?yàn)镻aaS是應(yīng)用層面的服務(wù),它不會(huì)暴露底層的系統(tǒng),如操作系統(tǒng)、中間件等。以Windows系統(tǒng)為例,操作系統(tǒng)默認(rèn)開很多端口,甚至還有一些漏洞。黑客一旦發(fā)現(xiàn)這個(gè)漏洞就能進(jìn)入操作系統(tǒng)內(nèi)部,控制磁盤、甚至一些內(nèi)存。而服務(wù)(Services)級(jí)別沒有這些概念,黑客拿不到這些操作系統(tǒng)的賬號(hào)、密碼,它“黑”完了最多能看到應(yīng)用程序。
打個(gè)比方,服務(wù)就相當(dāng)于是一個(gè)很封閉的空間,入侵后只能在這個(gè)小的空間里邊活動(dòng),也就是只能看到Services本身,Services底層所運(yùn)行的環(huán)境他是接觸不到的。比如說Services里面有十個(gè)文件,就只能看到這十個(gè)文件,這十個(gè)文件外還有什么,根本就看不到。這相當(dāng)于把虛機(jī)里原來跑著的10個(gè)應(yīng)用全部拆開,拆成10個(gè)PaaS服務(wù),然后單獨(dú)來部署,一個(gè)掛掉不影響其他的。還有,原來自己服務(wù)器經(jīng)常需要升級(jí),一升級(jí)網(wǎng)站就斷掉,F(xiàn)在我們也不用管它,服務(wù)商自己處理。我們現(xiàn)在已經(jīng)沒有專門的運(yùn)維人員了。
至頂網(wǎng):用PaaS模式能節(jié)省成本,您能解釋下這是從哪些地方帶來了成本節(jié)?
杜鵬:節(jié)省成本體現(xiàn)在幾個(gè)方面:一個(gè)是可以彈性擴(kuò)展,真正按使用付費(fèi),避免浪費(fèi),從而實(shí)現(xiàn)節(jié)省。第二,是節(jié)省人力運(yùn)維成本,不需要專門的運(yùn)維人員。
運(yùn)維成本其實(shí)是一筆不小的開支,現(xiàn)在有些公司會(huì)用云主機(jī),實(shí)際還是需要一些運(yùn)維工作,成本也不低,上一定規(guī)模就需要專門的人去維護(hù)它的云主機(jī),包括它里邊的網(wǎng)絡(luò)、系統(tǒng)是否安全,是否被人入侵等。主機(jī)里面可能還安裝有數(shù)據(jù)庫,這個(gè)數(shù)據(jù)庫去定時(shí)備份。如果說這個(gè)數(shù)據(jù)庫出現(xiàn)臟數(shù)據(jù)或者其他一些情況,要回滾的時(shí)候數(shù)據(jù)恢復(fù)應(yīng)該怎么去處理,這都需要負(fù)責(zé)運(yùn)維的人來操心。改用PaaS服務(wù)之后,服務(wù)器的運(yùn)維根本不用操心,云服務(wù)商提供了很多功能,都很便宜。
至頂網(wǎng):最后請您總結(jié)一下,你們這些年使用云的體會(huì)和經(jīng)驗(yàn)?
杜鵬:正如前面所述,上云的確給我們帶來了很大方便。它讓我們沒有了運(yùn)維的煩惱。現(xiàn)在,我們基本不用擔(dān)心備份問題;安全上也放心了很多;系統(tǒng)彈性也提高了,因?yàn)榭梢栽谛枰獣r(shí)隨時(shí)擴(kuò)容。還有,的確能省錢,避免了浪費(fèi)。總之,上云是一件值得做的事情。
談到教訓(xùn),其實(shí)也有一些,但絕大多數(shù)都是因?yàn)閯傞_始用不熟悉導(dǎo)致的,比如,我們最初Web應(yīng)用服務(wù)和數(shù)據(jù)庫服務(wù)部署在不同的城市,等到我們發(fā)現(xiàn)性能出現(xiàn)問題才注意到這個(gè)問題。另外,在選擇服務(wù)時(shí)由于版本不同可能存在功能上較大差異,我們就遇到第一代存儲(chǔ)服務(wù)版本不支持異地備份,第二代版本才提供這一能力的問題。
這里還想特別提到一個(gè)體會(huì)或者建議是,一定要充分利用云服務(wù)商提供的各種服務(wù)。我們上云之后才發(fā)現(xiàn)云服務(wù)商提供了很多、很多的功能服務(wù),而知道的人很少。這些服務(wù)很好用而且非常便宜,如果自己開發(fā)不僅成本高,而且穩(wěn)定性、安全性都很難得到保證。我強(qiáng)烈建議大家盡量用好這些云服務(wù),從而能把更多精力用到最為核心的業(yè)務(wù)上。
本文章選自《數(shù)字化轉(zhuǎn)型方略》雜志,閱讀更多雜志內(nèi)容,請掃描下方二維碼