移動互聯網時代下,即時通訊之路該怎么走?
原創【51CTO.com原創稿件】移動互聯網時代,即時通信(IM)已經取代搜索引擎成為新的核心流量入口。根據中國互聯網絡信息中心(CNNIC)最新發布的第40次《中國互聯網絡發展狀況統計報告》,截至2017年6月,即時通信用戶規模達到6.92億,較2016年底增長2535萬,占網民總體的92.1%。其中手機即時通信用戶6.68億,較2016年底增長2981萬,占手機網民的92.3%。
即時通訊越來越走向碎片化和場景化,即時性更強,并且已經成為每天必用的日常工具。
移動互聯網時代對即時通訊提出了更高要求
從研發的角度來說,進入移動互聯網時代,即時通訊的開發環境有了很大的不同。
1. 連接管理
由PC時代的通過有線網絡來保障連接的穩定性,到移動互聯網時代的無線設備當道,出現了很多信號的問題,比如衰弱,或者頻繁移動,造成了連接相對不太穩定的情況。大流量的應用越來越多,除了稍微小一點的文本類通信,還有視頻類、音頻類的應用,以及網絡電話的應用,這些應用對網絡的要求更高,而它的延時、丟包率的要求跟有線幾乎是一樣的,所以在連接管理方面需要投入更大的研發力度。這是移動互聯網時代的即時通訊要邁過的第一重門。
2. 使用場景
在PC時代,人們使用即時通訊通常的模式是打開電腦上網,人們會根據對方的在線狀態來決定是否聯絡。到了移動時代,大家默認對方是在線的,因為手機是隨身攜帶的。但是從技術的角度來說并不是這樣。因為PC在線是真的在線,而手機是階段性的在線,在移動的過程中,在不同的網絡間切換的時候,網絡是在不停地中斷的。這種情況就不能保證消息是否能百分之百的送達。此外還有電量和流量的問題。在PC時代,電量和流量是完全不用考慮的。在移動互聯網時代,續航時間和使用成本是用戶非常關注的。PC時代的一些復雜的協議,如XMPP,將要被時代拋棄。現在更關注的是一些更精簡的私有化的協議,還有更少的運算量。這將帶來更少的用電量和流量,這也是開發廠商關注的一個方面。這就需要有保護用戶安全的要求,涉及到加密、解密。還要有對電量管理方面的要求,以及消息補償的機制,不能因為網絡情況差就導致丟消息。所以對協議的設計上會有很高的要求。
3. 運行環境
PC時代的運行環境更單一,基本上是在Windows下。但是現在除了PC時代的環境以外,又多了很多的手機系統。特別是在安卓下面,這種系統又分了很多的ROM,對不同的ROM的適配又帶來了很多要求,甚至一些嵌入式的設備和硬件也有這種溝通的需求。所以,運行環境的不同對即時通訊提出了更高的要求。
4. 高并發、高可用
即時通訊里的長連接一直以來也是一個重點。群聊、聊天室等帶來的高并發日趨頻繁,造成大量重復的請求,為系統帶來一些規模性的壓力。具備處理好即時通訊高并發的技術實力,意味著平臺能夠安穩通過移動時代的“高壓”考驗。
網易云即時通訊服務的不二法寶:穩定、易用
網易云有著長達17年的即時通訊技術積累,網易云即時通訊致力于打造最穩定的即時通訊云平臺。作為一個幫助用戶用最小的成本解決產品通訊能力問題的PaaS平臺,穩定、易用,是網易云即時通訊服務的重中之重。
一. 基于公有云服務模式做穩定
據網易技術委員會資深專家委員徐杭生介紹,在穩定性上,網易云基于公有云服務模式,做了大量的技術改造,比如快速擴容,依托于網易云的蜂巢技術,能夠快速監控到系統受到的壓力沖擊, 通過Docker鏡像和服務中心, 下發相關配置拉起新的服務鏡像,擴大業務容量,幫助用戶應對“尖峰時刻”。
做云服務不可避免的會碰到資源共享的問題,在這種突發情況下需要保護用戶的資源隔離性。在這方面,網易云即時通訊服務做了一些用戶隔離的方案。這種隔離分為兩種:
1. 針對大客戶的需求。網易云會做特定隔離,相當于把資源放在了一個包間,和其他應用隔離,互相之間不會有影響,這塊資源就能充分滿足用戶當前的實際需求。
2.針對一些用戶不合理的使用方式。這對資源是有侵略性的,為了避免這種侵略的行為影響到其他的用戶,可以單獨做一個隔離區,相當于一個小黑屋,通過這個小黑屋,把用戶導入到這個流量里。在這里面,不管調用的方式多么不正確,都只會影響內部,而不會對整個系統有更大的波動影響。
公有云聊天室架構
二. 基于即時通訊私有云定制化服務模式做易用
在易用性方面,網易云即時通訊將重點強化其即時通訊私有云定制化服務模式。
1. 專屬云
專屬云現在也是網易云的一個很重要的主打方向。公有云上的專屬云有更好的資源隔離性,也有更高的可控制權。同時,也能夠得到在公有云上的一些基礎設施、運維工具、IDC資源的支撐,甚至可以做到一些容災的設置。
2. 企業內部的私有云
企業內部的私有云主要是為了滿足一些企業用戶特殊化的定制需求,比如內部一些網絡的限制,跟內部平臺打通的一些要求。
混合云主要是為了解決企業IT網內不太滿足私有云條件的情況。簡單來說就是把企業的IT網和網易公有云上的專屬云結合在一起。這樣一來,既可以保障容量、規模、性能,還可以獲得較低的成本投入。還有一些對資源的廣度和深度要求比較大的應用,例如視頻類的需求,就可以放在公有云上。
私有云調用鏈示意圖
定制化是即時通訊的剛需
在公有云上,定制化主要是根據事件或消息的發生,去做相應的策略。例如在消息投遞中,會讓更多的用戶參與進來,通過消息外部抄送的能力,讓開發者得到用戶行為的通知,在通知的作用下,做更多的定制化。
在私有云上的定制化主要分為兩種:
1. 針對中大型企業的蜂巢的一體化解決方案
在中大型的企業里,網易云即時通訊會把融入了網易蜂巢一體化的解決方案的整體方案嵌入到企業內部。
在中大型的企業網里,一個即時通訊有很多的組成部分:對象存儲系統、業務平臺、監控系統等。這在網易公有云上有一整套完整的解決方案。在一些中大型企業要新建一個即時通訊系統的時候,把這套解決方案進行一些合理的精簡,然后放在私有云上,就能夠滿足他們的一些要求。而且這個系統具有很強的擴展性,因為整套平臺包括了一些底層的IaaS平臺、中間的調度系統。所以,它不僅適配能力強,而且能夠承載的壓力也很大。
2. 針對中小型企業的基于開源的、可適配的、插件化的、經濟型的解決方案
中小型企業對擴展性的需求會小一些,但是在標準化交付、快速部署,甚至一鍵部署的要求下,中小型企業的要求更多。他們希望用更少的資源,更高的機器利用率來部署即時通訊方案。
針對中小型企業,網易云即時通訊提供了一個基于開源組件的、定制化的解決方案。這套解決方案最大的特點是可以很好地利用企業私有云上面已有的資源,不管這個企業私有云是部署在自己的IDC還是部署在已有的云平臺上,都能夠通過一些技術方案適配它。整套的解決方案是模塊化的,各個層次是可以拆分的,可以隨意調取使用。
這樣的解決方案能夠幫助用戶節省成本,并且能夠很好地滿足企業在即時通訊方面的需求。同時這個系統也不會特別復雜,比公有云上系統的復雜度可能會降幾個數量級,對自己的運維也有很大的好處。當然,可靠性是不會打折扣的。
技術創新+服務模式創新,面對激烈競爭
即時通訊是移動互聯網里一個最大的應用場景,已經有越來越多的廠商參與進來,競爭非常激烈,網易云如何立于不敗之地?
1. 十七年的技術積累
網易云在2001年左右就推出過自己的即時通訊產品,從那個時候開始,網易云的技術架構就開始不停地演進。通過長時間的積累,形成了自己的特色,即穩定性和易用性。
2. 場景化的服務
網易云在做云服務的時候,從內部的一些需求出發,衍生出在自己內部的一些產品,例如信息安全,就是在郵箱、游戲、電商的使用場景中衍生出來的。場景化的云服務是網易云的一個發展方向,通過這種精準的特定用戶場景的需求,能給用戶帶來更大的商業價值。
網易云目前已經接入了37萬的開發者,在PaaS平臺是一個非常好的成績。網易云聚焦穩定易用,強化定制化私有云服務,以技術創新和服務模式創新滿足用戶需求,為云服務行業眾多廠商提供了借鑒。
專家簡介
徐杭生:網易技術委員會資深專家委員
徐杭生先生現任網易技術委員會資深專家委員,領導網易通信與視頻技術研發團隊,進行安卓、iOS、PC、web及server端等五大方向的開發工作。同時,以網易及網易云為依托,徐杭生領導由眾多技術專家組成精英研發及技術支持團隊,面向多行業多層次的客戶需求,提供核心技術支持與服務。在徐杭生的帶領下,網易云通信與視頻整合了技術與人力資源力量,共同為全國乃至全球客戶提供即時通訊云服務與企業級解決方案。
【51CTO原創稿件,合作站點轉載請注明原文作者和出處為51CTO.com】