精品国产一级在线观看,国产成人综合久久精品亚洲,免费一级欧美大片在线观看

當(dāng)前位置:云計(jì)算云服務(wù) → 正文

創(chuàng)業(yè)公司解密谷歌、FB和蘋(píng)果都盯上的后端云服務(wù):能省幾千萬(wàn)創(chuàng)業(yè)成本

責(zé)任編輯:editor006 作者:曉樺 |來(lái)源:企業(yè)網(wǎng)D1Net  2016-05-14 23:44:36 本文摘自:雷鋒網(wǎng)

隨著互聯(lián)網(wǎng)科技的發(fā)展,互聯(lián)網(wǎng)行業(yè)的分工也會(huì)像其它行業(yè)一樣逐漸細(xì)化,后端服務(wù)也是這樣被抽象出來(lái),即BaaS(后端即服務(wù))。在移動(dòng)后端服務(wù)系統(tǒng)(MBaaS)中,云服務(wù)公司為移動(dòng)應(yīng)用、智能設(shè)備開(kāi)發(fā)者提供整合云后端的邊界服務(wù),包括文件數(shù)據(jù)存儲(chǔ)、實(shí)時(shí)推送、即時(shí)通訊等實(shí)現(xiàn)難度較高的功能,以幫助開(kāi)發(fā)者快速開(kāi)發(fā)應(yīng)用。

為什么Facebook、蘋(píng)果和Google都盯上后端云服務(wù)?

物聯(lián)網(wǎng)時(shí)代,在國(guó)外BaaS服務(wù)已經(jīng)受到巨頭的重視,F(xiàn)acebook收購(gòu)Parse、蘋(píng)果發(fā)布了CloudKit、Google收購(gòu)了Firebase:Parse、CloudKit、FIREBASE都是國(guó)外知名的BaaS類產(chǎn)品,巨頭們都希望通過(guò)BaaS服務(wù)來(lái)完善生態(tài)。在今年三月舉行的谷歌全球云用戶會(huì)議上,谷歌云服務(wù)高級(jí)副總裁黛安·格林(Diane Greene)表示,“這將是一個(gè)長(zhǎng)期性、永久性業(yè)務(wù)”。

除了國(guó)外巨頭,國(guó)內(nèi)也有數(shù)家創(chuàng)業(yè)公司瞄準(zhǔn)于后端服務(wù)市場(chǎng)。云巴就是這樣一種后端云服務(wù)產(chǎn)品,主要面向智能硬件提供跨平臺(tái)、跨設(shè)備的實(shí)時(shí)消息交換服務(wù)。

云巴CEO張虎表示,對(duì)于開(kāi)發(fā)者而言,有了后端服務(wù),他們只需專注于具體業(yè)務(wù)和邏輯的實(shí)現(xiàn),無(wú)需關(guān)心后端基礎(chǔ)設(shè)施構(gòu)建、運(yùn)維、服務(wù)器托管、網(wǎng)絡(luò)、性能調(diào)優(yōu)等工作。對(duì)各巨頭來(lái)說(shuō),則各有各的布局:

對(duì)于Facebook來(lái)說(shuō),

在收購(gòu)Parse后,F(xiàn)acebook希望結(jié)束應(yīng)用之間的信息孤島狀態(tài),讓不同應(yīng)用之間的內(nèi)容能夠互通和無(wú)縫跳轉(zhuǎn),于是就發(fā)布了一個(gè)名為AppLinks“協(xié)議”,但這個(gè)協(xié)議背后則需要Parse這樣的后端服務(wù)提供數(shù)據(jù)存儲(chǔ)、計(jì)算能力、Push通知等一系列技術(shù)支撐。

但很不幸的是,在激烈的云服務(wù)競(jìng)爭(zhēng)中,Parse戰(zhàn)況不利,F(xiàn)acebook也于今年初關(guān)閉該服務(wù)。

而對(duì)于蘋(píng)果來(lái)說(shuō),

CloudKit可以提供完善且有彈性的后端解決方案,幫助開(kāi)發(fā)者減輕編寫(xiě)服務(wù)器代碼和維護(hù)服務(wù)器的需求。很明顯,蘋(píng)果此舉也是為了降低開(kāi)發(fā)iOS應(yīng)用的成本,維護(hù)iOS生態(tài)圈的繁榮。

除了收購(gòu)Firebase,Google還在去年10月收購(gòu)應(yīng)用開(kāi)發(fā)平臺(tái)Divshot,并將其整合至FIREBASE,使得應(yīng)用開(kāi)發(fā)變得更為簡(jiǎn)單。

就像FIREBASE創(chuàng)始人James Tamplin在博客上說(shuō)的那樣,F(xiàn)IREBASE和Google Cloud Platform可以很好的互補(bǔ)。也許像蘋(píng)果為iOS開(kāi)發(fā)者提供了CloudKit那樣,Google也可以利用類似的服務(wù)來(lái)為Android生態(tài)圈的開(kāi)發(fā)者們提供便利。

歸根結(jié)底,還是生態(tài)系統(tǒng)建設(shè)問(wèn)題。

后端服務(wù)解決的是創(chuàng)業(yè)公司幾千萬(wàn)成本的問(wèn)題

比如,做出一個(gè)視頻的彈幕應(yīng)用也會(huì)困難到要找第三方嗎?

后端服務(wù)出現(xiàn)之前,應(yīng)用、智能硬件的開(kāi)發(fā)需要為其消息傳輸、數(shù)據(jù)統(tǒng)計(jì)、儲(chǔ)存、實(shí)時(shí)通訊等功能自行搭建服務(wù)器架構(gòu),包括搭建數(shù)據(jù)庫(kù)與服務(wù)器集群等等。但是,產(chǎn)品本身和互聯(lián)網(wǎng)基礎(chǔ)工作關(guān)系不大,這些工作屬于產(chǎn)品企業(yè)的非主流業(yè)務(wù),不僅復(fù)雜繁重,消耗的經(jīng)歷和資源過(guò)多,并將拉長(zhǎng)產(chǎn)品最終走向市場(chǎng)的開(kāi)發(fā)周期。張虎透露,一個(gè)不熟悉后端服務(wù)的應(yīng)用或智能硬件創(chuàng)業(yè)團(tuán)隊(duì),如果要自建后端服務(wù),投入30人左右也需要耗時(shí)兩到三年才能完成,而且效果未必能夠?qū)I(yè),比如出現(xiàn)通訊延遲、消息發(fā)送成功率較低等。比如,某些通過(guò)藍(lán)牙傳輸?shù)闹悄苁直恚趯?shí)時(shí)顯示上存在大約兩秒的延遲。而這些投入——包括租用服務(wù)器等,甚至要耗費(fèi)數(shù)千萬(wàn)人民幣的成本,使得非主流業(yè)務(wù)成本還高于主產(chǎn)品。

所以,除了包辦后端搭建,后端服務(wù)更重要的是解決效率問(wèn)題——雙向通信、數(shù)據(jù)采集和統(tǒng)計(jì)等過(guò)程的快速和穩(wěn)定。以實(shí)時(shí)通信功能為例,張虎解釋稱,在一個(gè)家庭的智能水網(wǎng)系統(tǒng)中,后端服務(wù)可以實(shí)時(shí)采集每個(gè)感應(yīng)水流的傳感器的數(shù)據(jù),然后分析每一段管道的水流速、流量,來(lái)達(dá)到監(jiān)測(cè)水流是否泄漏的目的,同時(shí)可將結(jié)果發(fā)送到PC、手機(jī)端。如果發(fā)現(xiàn)水流速度和流量數(shù)據(jù)異常,那么系統(tǒng)可定位找出泄漏的部位。根據(jù)傳感器的密集程度,最高可定位到米級(jí)范圍。又比如說(shuō),智能兒童手表的對(duì)講功能,一端的用戶發(fā)出的音頻首先經(jīng)過(guò)服務(wù)器轉(zhuǎn)錄,再到達(dá)另一端設(shè)備接收,等等。

在這些場(chǎng)景下,信息傳輸?shù)乃俣群头€(wěn)定性成為了決定設(shè)備服務(wù)性能好壞的關(guān)鍵因素。張虎表示,如今智能硬件早已不限于手機(jī)、平板、可穿戴的范疇,也加入了機(jī)器人、智能家居等等,面對(duì)逐漸增長(zhǎng)的場(chǎng)景和海量數(shù)據(jù),降低通訊延遲、保證推送穩(wěn)定等提高通訊效率的做法就成為了后端云服務(wù)的主要任務(wù)。目前,國(guó)外頂尖的水平是,PubNub公司創(chuàng)造的全球網(wǎng)絡(luò)范圍內(nèi)最大250毫秒的延遲,相對(duì)而言,云巴面對(duì)國(guó)內(nèi)網(wǎng)絡(luò)則做到了60毫秒以內(nèi)的延遲(注意是國(guó)內(nèi)網(wǎng)絡(luò))。

針對(duì)智能硬件與移動(dòng)應(yīng)用的后端云服務(wù)有何不同?

以往,后端云服務(wù)主要針對(duì)于應(yīng)用,張虎在創(chuàng)立云巴前,就主導(dǎo)創(chuàng)立了專注于為移動(dòng)app提供后端服務(wù)的極光推送。而隨著物聯(lián)網(wǎng)和智能硬件的興起,屬于張虎第二次創(chuàng)業(yè)的云巴則針對(duì)智能硬件的實(shí)時(shí)通訊領(lǐng)域。

云巴CEO張虎表示,對(duì)比移動(dòng)應(yīng)用,智能設(shè)備開(kāi)發(fā)對(duì)消息延遲更加敏感,對(duì)流量功耗上要求更高。在云巴的客戶中,主動(dòng)申請(qǐng)付費(fèi)服務(wù)的更多來(lái)自于智能硬件用戶。“移動(dòng)應(yīng)用的使用門(mén)檻較低,損失代價(jià)較少,消費(fèi)者和開(kāi)發(fā)者對(duì)其的期望較低。智能硬件不同,每一件產(chǎn)品都需要一定價(jià)格或成本來(lái)生產(chǎn)、買入,如果因?yàn)楣δ芊?wù)表現(xiàn)不佳,則更容易引來(lái)消費(fèi)者的投訴,智能硬件商為了保證產(chǎn)品體驗(yàn),寧愿選擇付費(fèi)。兩者的差異是互聯(lián)網(wǎng)的產(chǎn)品特點(diǎn)決定的。”這些選擇付費(fèi)的客戶,云巴會(huì)為其提供通信的獨(dú)享通道。

那么問(wèn)題來(lái)了:60毫秒的通信延遲是如何做到的?

張虎表示,目前兩個(gè)終端之間的通訊需要經(jīng)過(guò)網(wǎng)關(guān)、路由等組成的二三十次跳數(shù),那么保證消息的準(zhǔn)確發(fā)送、快速發(fā)送,就需要減少網(wǎng)關(guān)的跳數(shù),且突破單機(jī)限制。張虎表示,除了給付費(fèi)用戶提供獨(dú)享通道這樣的普遍模式,云巴做得更多的是“細(xì)活”,從架構(gòu)上進(jìn)行調(diào)整。

將服務(wù)器分成多個(gè)集群

“也許我們都發(fā)現(xiàn)一個(gè)有趣的現(xiàn)象,一般游戲房間、聊天室等等一般最多容納300或500人,這個(gè)特別的數(shù)字主要來(lái)源于:對(duì)一臺(tái)服務(wù)器來(lái)說(shuō),300人的數(shù)據(jù)量是能夠維持較好體驗(yàn)的水平。”張虎表示,一個(gè)架構(gòu)的設(shè)計(jì),即物理基因已經(jīng)決定服務(wù)器的最佳容量,“但我們可以想辦法突破這個(gè)單機(jī)限制,把數(shù)據(jù)分布到不同的服務(wù)器上,讓通訊終端突破300人的限制。”

那為什么不可以把服務(wù)器變得更強(qiáng)大?

“其實(shí)最理想的方式也是把通訊降低到一跳,即所有任務(wù)在一個(gè)服務(wù)器完成然后發(fā)送,但這樣有一個(gè)悖論:當(dāng)把一個(gè)服務(wù)器做到強(qiáng)大時(shí),一旦這個(gè)服務(wù)器出現(xiàn)問(wèn)題,那么所有服務(wù)都將失效。”為此,云巴把服務(wù)器按照業(yè)務(wù)邏輯分成若干集群,當(dāng)一個(gè)集群由于壓力或者其他一些因素導(dǎo)致服務(wù)出現(xiàn)問(wèn)題,那么另一個(gè)對(duì)等的集群就可以替代頂上,使服務(wù)穩(wěn)定下來(lái)。

據(jù)悉,云巴目前使用的Cache集群是Couchbase集群和Redis集群。其中Couchbase可以讓數(shù)據(jù)自動(dòng)在多個(gè)節(jié)點(diǎn)備份,單節(jié)點(diǎn)失效不會(huì)影響業(yè)務(wù),而且支持業(yè)務(wù)自動(dòng)分片(autosharing)。所謂自動(dòng)分片,就是把同類型的業(yè)務(wù)自動(dòng)分配到不同的機(jī)器上。

Erlang語(yǔ)言支持大量并發(fā)

每一個(gè)優(yōu)秀的產(chǎn)品除了技術(shù)上的完善,還需要根據(jù)業(yè)務(wù)場(chǎng)景的打磨細(xì)節(jié),根據(jù)細(xì)節(jié)做出一些取舍。比如,語(yǔ)言方面,云巴選擇了非常冷門(mén)的Erlang語(yǔ)言。

Erlang是一種面向并發(fā)和消息的函數(shù)式編程語(yǔ)言。Erlang設(shè)定的是競(jìng)爭(zhēng)式的協(xié)程,在Erlang編程語(yǔ)言中,Erlang進(jìn)程是并發(fā)并且獨(dú)立執(zhí)行的,輕量并且有自己的堆棧空間。也就是說(shuō),每一個(gè)Erlang進(jìn)程完全是私有的,兩個(gè)Erlang進(jìn)程之間的堆棧空間不會(huì)被共享。這就好比高架橋和并行的車道,相互是獨(dú)立的,不能竄道,這樣很大程度提高了運(yùn)輸?shù)男屎退俣取?/p>

對(duì)比C++、Java,Erlang只在一個(gè)小圈子內(nèi)流行,但是,將線程放在用戶空間內(nèi)自行調(diào)度(協(xié)程)是為了獲得盡可能大規(guī)模的并發(fā)能力,與GoNodejs的協(xié)作式不同,競(jìng)爭(zhēng)式的決策則為大規(guī)模的多人開(kāi)發(fā)提供了保證,避免某個(gè)協(xié)程的死循環(huán)或過(guò)量運(yùn)算影響其他任務(wù)的進(jìn)行。同時(shí),Erlang維護(hù)和開(kāi)發(fā)了一整套中間層工具OTP,而這些工具、框架也正是被用來(lái)開(kāi)發(fā)諸如分布式服務(wù)器、錯(cuò)誤處理、數(shù)據(jù)庫(kù)等應(yīng)用的利器。Erlang不提倡防御式編程,它認(rèn)為程序既然遇到錯(cuò)誤就應(yīng)該讓它崩潰,這樣一旦出現(xiàn)錯(cuò)誤就可以第一時(shí)間被發(fā)現(xiàn),加以補(bǔ)救措施,可以將損失降到最小。

關(guān)鍵字:谷歌跳數(shù)協(xié)程

本文摘自:雷鋒網(wǎng)

x 創(chuàng)業(yè)公司解密谷歌、FB和蘋(píng)果都盯上的后端云服務(wù):能省幾千萬(wàn)創(chuàng)業(yè)成本 掃一掃
分享本文到朋友圈
當(dāng)前位置:云計(jì)算云服務(wù) → 正文

創(chuàng)業(yè)公司解密谷歌、FB和蘋(píng)果都盯上的后端云服務(wù):能省幾千萬(wàn)創(chuàng)業(yè)成本

責(zé)任編輯:editor006 作者:曉樺 |來(lái)源:企業(yè)網(wǎng)D1Net  2016-05-14 23:44:36 本文摘自:雷鋒網(wǎng)

隨著互聯(lián)網(wǎng)科技的發(fā)展,互聯(lián)網(wǎng)行業(yè)的分工也會(huì)像其它行業(yè)一樣逐漸細(xì)化,后端服務(wù)也是這樣被抽象出來(lái),即BaaS(后端即服務(wù))。在移動(dòng)后端服務(wù)系統(tǒng)(MBaaS)中,云服務(wù)公司為移動(dòng)應(yīng)用、智能設(shè)備開(kāi)發(fā)者提供整合云后端的邊界服務(wù),包括文件數(shù)據(jù)存儲(chǔ)、實(shí)時(shí)推送、即時(shí)通訊等實(shí)現(xiàn)難度較高的功能,以幫助開(kāi)發(fā)者快速開(kāi)發(fā)應(yīng)用。

為什么Facebook、蘋(píng)果和Google都盯上后端云服務(wù)?

物聯(lián)網(wǎng)時(shí)代,在國(guó)外BaaS服務(wù)已經(jīng)受到巨頭的重視,F(xiàn)acebook收購(gòu)Parse、蘋(píng)果發(fā)布了CloudKit、Google收購(gòu)了Firebase:Parse、CloudKit、FIREBASE都是國(guó)外知名的BaaS類產(chǎn)品,巨頭們都希望通過(guò)BaaS服務(wù)來(lái)完善生態(tài)。在今年三月舉行的谷歌全球云用戶會(huì)議上,谷歌云服務(wù)高級(jí)副總裁黛安·格林(Diane Greene)表示,“這將是一個(gè)長(zhǎng)期性、永久性業(yè)務(wù)”。

除了國(guó)外巨頭,國(guó)內(nèi)也有數(shù)家創(chuàng)業(yè)公司瞄準(zhǔn)于后端服務(wù)市場(chǎng)。云巴就是這樣一種后端云服務(wù)產(chǎn)品,主要面向智能硬件提供跨平臺(tái)、跨設(shè)備的實(shí)時(shí)消息交換服務(wù)。

云巴CEO張虎表示,對(duì)于開(kāi)發(fā)者而言,有了后端服務(wù),他們只需專注于具體業(yè)務(wù)和邏輯的實(shí)現(xiàn),無(wú)需關(guān)心后端基礎(chǔ)設(shè)施構(gòu)建、運(yùn)維、服務(wù)器托管、網(wǎng)絡(luò)、性能調(diào)優(yōu)等工作。對(duì)各巨頭來(lái)說(shuō),則各有各的布局:

對(duì)于Facebook來(lái)說(shuō),

在收購(gòu)Parse后,F(xiàn)acebook希望結(jié)束應(yīng)用之間的信息孤島狀態(tài),讓不同應(yīng)用之間的內(nèi)容能夠互通和無(wú)縫跳轉(zhuǎn),于是就發(fā)布了一個(gè)名為AppLinks“協(xié)議”,但這個(gè)協(xié)議背后則需要Parse這樣的后端服務(wù)提供數(shù)據(jù)存儲(chǔ)、計(jì)算能力、Push通知等一系列技術(shù)支撐。

但很不幸的是,在激烈的云服務(wù)競(jìng)爭(zhēng)中,Parse戰(zhàn)況不利,F(xiàn)acebook也于今年初關(guān)閉該服務(wù)。

而對(duì)于蘋(píng)果來(lái)說(shuō),

CloudKit可以提供完善且有彈性的后端解決方案,幫助開(kāi)發(fā)者減輕編寫(xiě)服務(wù)器代碼和維護(hù)服務(wù)器的需求。很明顯,蘋(píng)果此舉也是為了降低開(kāi)發(fā)iOS應(yīng)用的成本,維護(hù)iOS生態(tài)圈的繁榮。

除了收購(gòu)Firebase,Google還在去年10月收購(gòu)應(yīng)用開(kāi)發(fā)平臺(tái)Divshot,并將其整合至FIREBASE,使得應(yīng)用開(kāi)發(fā)變得更為簡(jiǎn)單。

就像FIREBASE創(chuàng)始人James Tamplin在博客上說(shuō)的那樣,F(xiàn)IREBASE和Google Cloud Platform可以很好的互補(bǔ)。也許像蘋(píng)果為iOS開(kāi)發(fā)者提供了CloudKit那樣,Google也可以利用類似的服務(wù)來(lái)為Android生態(tài)圈的開(kāi)發(fā)者們提供便利。

歸根結(jié)底,還是生態(tài)系統(tǒng)建設(shè)問(wèn)題。

后端服務(wù)解決的是創(chuàng)業(yè)公司幾千萬(wàn)成本的問(wèn)題

比如,做出一個(gè)視頻的彈幕應(yīng)用也會(huì)困難到要找第三方嗎?

后端服務(wù)出現(xiàn)之前,應(yīng)用、智能硬件的開(kāi)發(fā)需要為其消息傳輸、數(shù)據(jù)統(tǒng)計(jì)、儲(chǔ)存、實(shí)時(shí)通訊等功能自行搭建服務(wù)器架構(gòu),包括搭建數(shù)據(jù)庫(kù)與服務(wù)器集群等等。但是,產(chǎn)品本身和互聯(lián)網(wǎng)基礎(chǔ)工作關(guān)系不大,這些工作屬于產(chǎn)品企業(yè)的非主流業(yè)務(wù),不僅復(fù)雜繁重,消耗的經(jīng)歷和資源過(guò)多,并將拉長(zhǎng)產(chǎn)品最終走向市場(chǎng)的開(kāi)發(fā)周期。張虎透露,一個(gè)不熟悉后端服務(wù)的應(yīng)用或智能硬件創(chuàng)業(yè)團(tuán)隊(duì),如果要自建后端服務(wù),投入30人左右也需要耗時(shí)兩到三年才能完成,而且效果未必能夠?qū)I(yè),比如出現(xiàn)通訊延遲、消息發(fā)送成功率較低等。比如,某些通過(guò)藍(lán)牙傳輸?shù)闹悄苁直恚趯?shí)時(shí)顯示上存在大約兩秒的延遲。而這些投入——包括租用服務(wù)器等,甚至要耗費(fèi)數(shù)千萬(wàn)人民幣的成本,使得非主流業(yè)務(wù)成本還高于主產(chǎn)品。

所以,除了包辦后端搭建,后端服務(wù)更重要的是解決效率問(wèn)題——雙向通信、數(shù)據(jù)采集和統(tǒng)計(jì)等過(guò)程的快速和穩(wěn)定。以實(shí)時(shí)通信功能為例,張虎解釋稱,在一個(gè)家庭的智能水網(wǎng)系統(tǒng)中,后端服務(wù)可以實(shí)時(shí)采集每個(gè)感應(yīng)水流的傳感器的數(shù)據(jù),然后分析每一段管道的水流速、流量,來(lái)達(dá)到監(jiān)測(cè)水流是否泄漏的目的,同時(shí)可將結(jié)果發(fā)送到PC、手機(jī)端。如果發(fā)現(xiàn)水流速度和流量數(shù)據(jù)異常,那么系統(tǒng)可定位找出泄漏的部位。根據(jù)傳感器的密集程度,最高可定位到米級(jí)范圍。又比如說(shuō),智能兒童手表的對(duì)講功能,一端的用戶發(fā)出的音頻首先經(jīng)過(guò)服務(wù)器轉(zhuǎn)錄,再到達(dá)另一端設(shè)備接收,等等。

在這些場(chǎng)景下,信息傳輸?shù)乃俣群头€(wěn)定性成為了決定設(shè)備服務(wù)性能好壞的關(guān)鍵因素。張虎表示,如今智能硬件早已不限于手機(jī)、平板、可穿戴的范疇,也加入了機(jī)器人、智能家居等等,面對(duì)逐漸增長(zhǎng)的場(chǎng)景和海量數(shù)據(jù),降低通訊延遲、保證推送穩(wěn)定等提高通訊效率的做法就成為了后端云服務(wù)的主要任務(wù)。目前,國(guó)外頂尖的水平是,PubNub公司創(chuàng)造的全球網(wǎng)絡(luò)范圍內(nèi)最大250毫秒的延遲,相對(duì)而言,云巴面對(duì)國(guó)內(nèi)網(wǎng)絡(luò)則做到了60毫秒以內(nèi)的延遲(注意是國(guó)內(nèi)網(wǎng)絡(luò))。

針對(duì)智能硬件與移動(dòng)應(yīng)用的后端云服務(wù)有何不同?

以往,后端云服務(wù)主要針對(duì)于應(yīng)用,張虎在創(chuàng)立云巴前,就主導(dǎo)創(chuàng)立了專注于為移動(dòng)app提供后端服務(wù)的極光推送。而隨著物聯(lián)網(wǎng)和智能硬件的興起,屬于張虎第二次創(chuàng)業(yè)的云巴則針對(duì)智能硬件的實(shí)時(shí)通訊領(lǐng)域。

云巴CEO張虎表示,對(duì)比移動(dòng)應(yīng)用,智能設(shè)備開(kāi)發(fā)對(duì)消息延遲更加敏感,對(duì)流量功耗上要求更高。在云巴的客戶中,主動(dòng)申請(qǐng)付費(fèi)服務(wù)的更多來(lái)自于智能硬件用戶。“移動(dòng)應(yīng)用的使用門(mén)檻較低,損失代價(jià)較少,消費(fèi)者和開(kāi)發(fā)者對(duì)其的期望較低。智能硬件不同,每一件產(chǎn)品都需要一定價(jià)格或成本來(lái)生產(chǎn)、買入,如果因?yàn)楣δ芊?wù)表現(xiàn)不佳,則更容易引來(lái)消費(fèi)者的投訴,智能硬件商為了保證產(chǎn)品體驗(yàn),寧愿選擇付費(fèi)。兩者的差異是互聯(lián)網(wǎng)的產(chǎn)品特點(diǎn)決定的。”這些選擇付費(fèi)的客戶,云巴會(huì)為其提供通信的獨(dú)享通道。

那么問(wèn)題來(lái)了:60毫秒的通信延遲是如何做到的?

張虎表示,目前兩個(gè)終端之間的通訊需要經(jīng)過(guò)網(wǎng)關(guān)、路由等組成的二三十次跳數(shù),那么保證消息的準(zhǔn)確發(fā)送、快速發(fā)送,就需要減少網(wǎng)關(guān)的跳數(shù),且突破單機(jī)限制。張虎表示,除了給付費(fèi)用戶提供獨(dú)享通道這樣的普遍模式,云巴做得更多的是“細(xì)活”,從架構(gòu)上進(jìn)行調(diào)整。

將服務(wù)器分成多個(gè)集群

“也許我們都發(fā)現(xiàn)一個(gè)有趣的現(xiàn)象,一般游戲房間、聊天室等等一般最多容納300或500人,這個(gè)特別的數(shù)字主要來(lái)源于:對(duì)一臺(tái)服務(wù)器來(lái)說(shuō),300人的數(shù)據(jù)量是能夠維持較好體驗(yàn)的水平。”張虎表示,一個(gè)架構(gòu)的設(shè)計(jì),即物理基因已經(jīng)決定服務(wù)器的最佳容量,“但我們可以想辦法突破這個(gè)單機(jī)限制,把數(shù)據(jù)分布到不同的服務(wù)器上,讓通訊終端突破300人的限制。”

那為什么不可以把服務(wù)器變得更強(qiáng)大?

“其實(shí)最理想的方式也是把通訊降低到一跳,即所有任務(wù)在一個(gè)服務(wù)器完成然后發(fā)送,但這樣有一個(gè)悖論:當(dāng)把一個(gè)服務(wù)器做到強(qiáng)大時(shí),一旦這個(gè)服務(wù)器出現(xiàn)問(wèn)題,那么所有服務(wù)都將失效。”為此,云巴把服務(wù)器按照業(yè)務(wù)邏輯分成若干集群,當(dāng)一個(gè)集群由于壓力或者其他一些因素導(dǎo)致服務(wù)出現(xiàn)問(wèn)題,那么另一個(gè)對(duì)等的集群就可以替代頂上,使服務(wù)穩(wěn)定下來(lái)。

據(jù)悉,云巴目前使用的Cache集群是Couchbase集群和Redis集群。其中Couchbase可以讓數(shù)據(jù)自動(dòng)在多個(gè)節(jié)點(diǎn)備份,單節(jié)點(diǎn)失效不會(huì)影響業(yè)務(wù),而且支持業(yè)務(wù)自動(dòng)分片(autosharing)。所謂自動(dòng)分片,就是把同類型的業(yè)務(wù)自動(dòng)分配到不同的機(jī)器上。

Erlang語(yǔ)言支持大量并發(fā)

每一個(gè)優(yōu)秀的產(chǎn)品除了技術(shù)上的完善,還需要根據(jù)業(yè)務(wù)場(chǎng)景的打磨細(xì)節(jié),根據(jù)細(xì)節(jié)做出一些取舍。比如,語(yǔ)言方面,云巴選擇了非常冷門(mén)的Erlang語(yǔ)言。

Erlang是一種面向并發(fā)和消息的函數(shù)式編程語(yǔ)言。Erlang設(shè)定的是競(jìng)爭(zhēng)式的協(xié)程,在Erlang編程語(yǔ)言中,Erlang進(jìn)程是并發(fā)并且獨(dú)立執(zhí)行的,輕量并且有自己的堆棧空間。也就是說(shuō),每一個(gè)Erlang進(jìn)程完全是私有的,兩個(gè)Erlang進(jìn)程之間的堆棧空間不會(huì)被共享。這就好比高架橋和并行的車道,相互是獨(dú)立的,不能竄道,這樣很大程度提高了運(yùn)輸?shù)男屎退俣取?/p>

對(duì)比C++、Java,Erlang只在一個(gè)小圈子內(nèi)流行,但是,將線程放在用戶空間內(nèi)自行調(diào)度(協(xié)程)是為了獲得盡可能大規(guī)模的并發(fā)能力,與GoNodejs的協(xié)作式不同,競(jìng)爭(zhēng)式的決策則為大規(guī)模的多人開(kāi)發(fā)提供了保證,避免某個(gè)協(xié)程的死循環(huán)或過(guò)量運(yùn)算影響其他任務(wù)的進(jìn)行。同時(shí),Erlang維護(hù)和開(kāi)發(fā)了一整套中間層工具OTP,而這些工具、框架也正是被用來(lái)開(kāi)發(fā)諸如分布式服務(wù)器、錯(cuò)誤處理、數(shù)據(jù)庫(kù)等應(yīng)用的利器。Erlang不提倡防御式編程,它認(rèn)為程序既然遇到錯(cuò)誤就應(yīng)該讓它崩潰,這樣一旦出現(xiàn)錯(cuò)誤就可以第一時(shí)間被發(fā)現(xiàn),加以補(bǔ)救措施,可以將損失降到最小。

關(guān)鍵字:谷歌跳數(shù)協(xié)程

本文摘自:雷鋒網(wǎng)

電子周刊
回到頂部

關(guān)于我們聯(lián)系我們版權(quán)聲明隱私條款廣告服務(wù)友情鏈接投稿中心招賢納士

企業(yè)網(wǎng)版權(quán)所有 ©2010-2024 京ICP備09108050號(hào)-6 京公網(wǎng)安備 11010502049343號(hào)

^
  • <menuitem id="jw4sk"></menuitem>

    1. <form id="jw4sk"><tbody id="jw4sk"><dfn id="jw4sk"></dfn></tbody></form>
      主站蜘蛛池模板: 永登县| 安阳市| 淳化县| 长治市| 阿克| 阳泉市| 东至县| 青田县| 长宁区| 乌拉特后旗| 沙雅县| 耿马| 扶风县| 开封县| 昆明市| 南京市| 嘉鱼县| 昭苏县| 正定县| 枣庄市| 南宁市| 双江| 金塔县| 古浪县| 图们市| 美姑县| 澄城县| 自治县| 金沙县| 闽清县| 比如县| 安福县| 都兰县| 长葛市| 中卫市| 视频| 静安区| 平湖市| 苍溪县| 丹巴县| 三门峡市|