在峰會(huì)上,周梁偉表示,云信之所以能夠支持千萬(wàn)級(jí)高并發(fā)的消息量,這要?dú)w功于云信的智慧IM云架構(gòu)。他詳細(xì)的闡述了網(wǎng)易云信的智慧IM云架構(gòu)的分層結(jié)構(gòu),以及各層結(jié)構(gòu)所具有的作用。并重點(diǎn)介紹了云信的服務(wù)化和高可用,以及云信是如何通過(guò)優(yōu)化連接層來(lái)實(shí)現(xiàn)提速和并發(fā)提升的。
智慧IM云平臺(tái)架構(gòu),大品牌有大智慧
網(wǎng)易云信的分層架構(gòu)由下至上分別為客戶端SDK層、連接層、路由層以及業(yè)務(wù)層。其中,客戶端SDK層位于云信分層架構(gòu)的最底層,它提供了多平臺(tái)的適配,最大程度上解決了開發(fā)者跨平臺(tái)需求的難題,使開發(fā)者能使用自己熟悉的開發(fā)語(yǔ)言和平臺(tái)快速實(shí)現(xiàn)產(chǎn)品功能。除此之外,SDK層還具備移動(dòng)弱網(wǎng)優(yōu)化、安全加密壓縮等重要作用。
連接層則提供了長(zhǎng)連接管理優(yōu)化、平滑升級(jí)、跨網(wǎng)切換、廣播分包等功能作用。周梁偉表示:“消息快速到達(dá)的前提是客戶端和服務(wù)器之間保持了穩(wěn)定的快速的連接,所以連接層可以理解為奠定云信服務(wù)穩(wěn)定性的基石。如果用三個(gè)詞來(lái)描述這一層的需求,那就是穩(wěn)定、安全、快速?!?/p>
網(wǎng)易云信IM云平臺(tái)的分層架構(gòu)
網(wǎng)易云信全力捍衛(wèi)服務(wù)化和高可用
周梁偉說(shuō):“云信的分層IM云架構(gòu),各層之間都提供了良好的彈性擴(kuò)容能力和業(yè)務(wù)隔離能力。這大大提升了云信的服務(wù)化和高可用。”除此之外,他還介紹到:“任何一個(gè)軟件系統(tǒng)對(duì)數(shù)據(jù)庫(kù),存儲(chǔ)平臺(tái)和緩存平臺(tái)等基礎(chǔ)資源的依賴都非常強(qiáng),這類基礎(chǔ)平臺(tái)資源的服務(wù)質(zhì)量和強(qiáng)大的擴(kuò)展能力會(huì)直接影響到整體系統(tǒng)的穩(wěn)定性。云信集成了網(wǎng)易自研的分布式數(shù)據(jù)庫(kù),分布式緩存和對(duì)象存儲(chǔ)服務(wù)等基礎(chǔ)平臺(tái),使云信在面對(duì)業(yè)務(wù)擴(kuò)容需求時(shí)更加從容。此外,云信還集成了如反垃圾云,視頻云等面向具體業(yè)務(wù)的云服務(wù),更加專業(yè)的團(tuán)隊(duì)來(lái)為云信的基礎(chǔ)功能保駕護(hù)航。”
一個(gè)系統(tǒng)服務(wù)的質(zhì)量除了依賴良好的架構(gòu),還需要良好的運(yùn)維支撐平臺(tái)和運(yùn)維人員。網(wǎng)易云信一年的不可用時(shí)長(zhǎng)要小于52分鐘,核心功能保證99.99%的可靠性??康氖鞘裁??周梁偉介紹到:“第一,開發(fā)團(tuán)隊(duì)有極高的運(yùn)維意識(shí),在開發(fā)設(shè)計(jì)時(shí)就注重應(yīng)用的可用性和擴(kuò)展性。第二,運(yùn)維團(tuán)隊(duì)了解開發(fā),通過(guò)專業(yè)的運(yùn)維能力幫助開發(fā)規(guī)避風(fēng)險(xiǎn)。運(yùn)維和開發(fā)相互合作,打造了云信的穩(wěn)定。任何一個(gè)環(huán)節(jié)都不是100%靠譜的,因此容災(zāi)是必不可少的,需要把容災(zāi)做到方方面面?!?/p>
三大優(yōu)化措施,助力連接層提速和并發(fā)提升
為了更好的支持更大數(shù)量級(jí)的高并發(fā)消息量,并維持穩(wěn)定和快速,網(wǎng)易云信圍繞連接層做了三方向的優(yōu)化工作。首先,針對(duì)區(qū)域網(wǎng)絡(luò)問(wèn)題,通過(guò)邊緣加速節(jié)點(diǎn)的方式來(lái)對(duì)網(wǎng)絡(luò)拓?fù)渥鰞?yōu)化。網(wǎng)易云信提供了多層的加速節(jié)點(diǎn),大幅提升連接的穩(wěn)定性和速度。通過(guò)優(yōu)化,客戶端到IDC中心的速度從之前的500+ms銳減至200ms,實(shí)現(xiàn)提速60%。同時(shí),消息丟失率也從之前的20%+降低到0%。第二個(gè)提速措施,是針對(duì)場(chǎng)景化的消息分發(fā)機(jī)制提升吞吐率,讓百萬(wàn)級(jí)的消息分發(fā)任務(wù)可以在秒級(jí)的處理時(shí)間內(nèi)完成。 最后,網(wǎng)易云信采用集群化的方式,來(lái)解決單節(jié)點(diǎn)的性能瓶頸,通過(guò)代理的方式,在4核8G的虛擬機(jī)上,單個(gè)節(jié)點(diǎn)的承載能力從1萬(wàn)連接數(shù)飆升至10萬(wàn)。
通過(guò)周梁偉的演講,我們可以看到,智慧IM云架構(gòu)是網(wǎng)易云信得以真正達(dá)成“穩(wěn)定”、“安全”、“快速”的優(yōu)質(zhì)IM云服務(wù)的堅(jiān)實(shí)基礎(chǔ),也正是有了這個(gè)“智慧”的“最強(qiáng)大腦”,加上網(wǎng)易云信針對(duì)每一層的大量?jī)?yōu)化工作,才造就了支持千萬(wàn)級(jí)高并發(fā)消息量的網(wǎng)易云信。在這套“智慧”的分層架構(gòu)中,每個(gè)層級(jí)都有極為明確的分工,各層級(jí)間的關(guān)系又極為緊密,在任務(wù)傳遞和互相協(xié)作上,既擁有足夠的保障機(jī)制,又具備高可用的彈性。除了分享網(wǎng)易云信的智慧IM云架構(gòu)之外,周梁偉在峰會(huì)上,還對(duì)網(wǎng)易云信的一些IM云功能特色做了周詳?shù)慕馕龊头窒?,獲得了在場(chǎng)架構(gòu)師和開發(fā)者的一致好評(píng)和認(rèn)可。
網(wǎng)易云信從涉足IM云服務(wù)市場(chǎng)之初,就把自己定位成一個(gè)專業(yè)的管道,以其“穩(wěn)定”、“安全”、“快速”的特質(zhì)幫助企業(yè)和開發(fā)者,減少他們的開發(fā)成本、產(chǎn)品研發(fā)周期和線上維護(hù)成本,讓其有限的研發(fā)產(chǎn)能在互聯(lián)網(wǎng)當(dāng)下唯快不破的生存環(huán)境下更多的往自身業(yè)務(wù)方面輸出,促進(jìn)整個(gè)行業(yè)的互聯(lián)網(wǎng)+發(fā)展。無(wú)論是這種對(duì)于自身定位的清晰把握,還是智慧IM云架構(gòu)的匠心獨(dú)具,對(duì)于國(guó)內(nèi)IM云行業(yè)都有著非凡的借鑒意義。