現(xiàn)在市面上的編程語(yǔ)言以面向?qū)ο鬄橹髁?。面向?qū)ο笙纫獜囊恍┳罨镜淖銎?。比如?4歲就結(jié)婚了,不然怎么面向?qū)ο缶幊?。然后剛結(jié)婚就生娃了,不然對(duì)象跑了咋辦?new一個(gè)?創(chuàng)建銷(xiāo)毀開(kāi)銷(xiāo)很大的,還是生個(gè)娃持續(xù)持有對(duì)象的引用的好。

  為啥有些人開(kāi)口說(shuō)話能說(shuō)很久,有些人說(shuō)話有一搭沒(méi)一搭的?據(jù)我觀察發(fā)現(xiàn),動(dòng)手干活差不多的兩個(gè)人,會(huì)說(shuō)的將來(lái)發(fā)展的會(huì)更好。原因從具體實(shí)例來(lái)感受一下。

  和朋友聊天,真的,好幾年前人人網(wǎng)出來(lái)的總有點(diǎn)技術(shù)極客精神,聊天我們聊技術(shù)。人家問(wèn)我你們視頻是怎么存儲(chǔ)怎么播放的。我說(shuō)我就是做內(nèi)容,meta的,其他和我無(wú)關(guān)。天兒就聊死了,自己的格局就下來(lái)了。如果說(shuō)我做的有開(kāi)發(fā)平臺(tái)的東西,里面有上傳視頻的。先調(diào)用云存儲(chǔ)的接口進(jìn)行一個(gè)初始化,他們返回給我們一個(gè)視頻介質(zhì)上傳url。JS端將介質(zhì)分片的方式上傳到url上。如果網(wǎng)絡(luò)中斷或者瀏覽器關(guān)閉啥的,可以調(diào)用續(xù)傳接口用新返回的url繼續(xù)傳。續(xù)傳接口帶著總文件大小和目前已經(jīng)收到的文件的大小,JS可以依據(jù)這個(gè)判斷從哪個(gè)分片繼續(xù)傳。云存儲(chǔ)在另一個(gè)部門(mén),他們負(fù)責(zé)和云轉(zhuǎn)碼部門(mén)進(jìn)行通信,云轉(zhuǎn)碼將介質(zhì)轉(zhuǎn)成各種格式,至于從原始高清文件轉(zhuǎn)成各種碼率,怎樣取樣的,DRM數(shù)字版權(quán)管理又是怎么做的,由云轉(zhuǎn)碼部門(mén)負(fù)責(zé)。他們內(nèi)部是用什么策略分發(fā)到各個(gè)DNS節(jié)點(diǎn)上的。調(diào)度部門(mén)又是怎樣調(diào)度來(lái)節(jié)約視頻網(wǎng)站最寶貴的帶寬的,具體細(xì)節(jié)我不是很清楚。云轉(zhuǎn)碼部門(mén)將轉(zhuǎn)換好的各種碼率和視頻url通過(guò)MQ的形式傳給我們,我們存到數(shù)據(jù)庫(kù)里。

  那人家就又問(wèn)了,MQ你們用的啥呀?我說(shuō)apache的qpidd。額~~,人家不知道,聊天就聊死了。所以得說(shuō)MQ都差不多的,和rabbit mq一樣都是基于AMQP高級(jí)消息隊(duì)列協(xié)議的。這是公司統(tǒng)一的集群,說(shuō)是安裝部署挺方便的。主流的編程語(yǔ)言也都支持,所以就用了。因?yàn)橹饕强绮块T(mén)的通信,主要以方便,節(jié)約溝通成本為主,所以我們的消息體也就是json先壓縮再base64。也沒(méi)用protobuf那些二進(jìn)制的,因?yàn)槿f(wàn)一遇到問(wèn)題,二進(jìn)制可讀性差,缺乏自描述,不容易排查。

  高并發(fā)服務(wù)必須有一些緊急方案,比如服務(wù)熔斷,降級(jí),隔離,限流,異步RPC等。服務(wù)熔斷,降級(jí),隔離大家比較傾向于用netflix開(kāi)源的分布式服務(wù)彈性框架Hystrix。Hystrix也可以限流。但是我們服務(wù)用的guava的RateLimiter這種成熟的令牌桶算法來(lái)實(shí)現(xiàn)。

  服務(wù)限流是個(gè)很簡(jiǎn)單的事情。我們的代碼也就幾百行,但是里面有一套比較完整的設(shè)計(jì)思想,目的是根據(jù)一定的策略(如:url, 平臺(tái)來(lái)源,url+平臺(tái)來(lái)源)來(lái)做一個(gè)業(yè)務(wù)細(xì)粒度的限流。

  iOS培訓(xùn),Swift培訓(xùn),蘋(píng)果開(kāi)發(fā)培訓(xùn),移動(dòng)開(kāi)發(fā)培訓(xùn)

延伸閱讀

學(xué)習(xí)是年輕人改變自己的最好方式-Java培訓(xùn),做最負(fù)責(zé)任的教育,學(xué)習(xí)改變命運(yùn),軟件學(xué)習(xí),再就業(yè),大學(xué)生如何就業(yè),幫大學(xué)生找到好工作,lphotoshop培訓(xùn),電腦培訓(xùn),電腦維修培訓(xùn),移動(dòng)軟件開(kāi)發(fā)培訓(xùn),網(wǎng)站設(shè)計(jì)培訓(xùn),網(wǎng)站建設(shè)培訓(xùn)學(xué)習(xí)是年輕人改變自己的最好方式