讓1.5億移動端用戶第一時間獲取消息
在內容同質化嚴重的時候,同樣的內容,如何讓用戶***時間打開自己的移動應用閱讀,而不是其他家的?如何將以前需要數小時甚至數天才能發送完畢的消 息,在半小時內搞定?特別是類似愛奇藝這樣體量巨大的公司,面對自己的1.5億移動端用戶,想維持他們的活躍度,也絕對是一個挑戰。目前,云推送技術有望 幫助解決這一困境,而且可應用多個移動平臺,包括iOS和Android等。日前,InfoQ編輯采訪了愛奇藝移動業務事業部的產品總監任衡,以及產品經 理周政、呂蘇等,就云推送技術在愛奇藝的應用做了探討,相信他們的經驗對其他有類似需求的移動研發人員有一定的借鑒價值。
維持用戶活躍性——愛奇藝的大難題
愛奇藝2010年成立,自2012年開始發力移動端,據說不論是在iPad還是iPhone端,都基本上是國內最早做移動端的,到目前為止,也幾乎 覆蓋了所有的平臺,包括iPhone和iPad、Android手機和平板、WinPhone和WinPad、Symbian和Bada等。另外,愛奇藝 還和三星、華為、步步高、Oppo等手機廠商合作,在它們的手機中預裝其應用。根據艾瑞的數據, 愛奇藝與PPS合并后,移動端的用戶覆蓋規模達到第二名的兩倍。
但話說回來,用戶裝了你的應用不一定就是你的忠實用戶,根據一個非官方的說法,很多用戶下載了某些應用之后就再也沒有打開過。也就是說,如果及時喚 醒用戶并維持他們的活躍度,比如上了新片或者***的娛樂八卦消息等如何推送到用戶眼前,這才是眾多廠商首要解決的問題,這也是愛奇藝所面臨的挑戰。從技術層面上分析,不論是成本、實時性、可擴展性和個性化,每個都不是容易的事情。
成本維度考量:在一個相對較短的時間內,把數億條消息全都推送出去,對于服務器、帶寬等都是很大的挑戰。另外, 蘋果也有自己的消息中心,它的容量也是有限的,如果一股腦將全部的信息推送給它,它也承受不住,而且達到率會大打折扣。這種情況下,就需要通過一種緩釋的 方式,一部分一部分地推送給蘋果消息中心,這都需要N多服務器和帶寬的支持。對于公司來說,當然也希望通過規模化的操作來降低成本。
實時性維度考量:對于熟悉娛樂界的同學來說,這就比較好理解了,比如最近爆出八卦,某大眾偶像已經結婚,這是一 個很勁爆的消息,那么愛奇藝獲得了這個新聞之后,如何***時間發出去?要知道,現在每個用戶的終端設備上幾乎都裝著多個視頻客戶端,而誰的客戶端先發出消 息,那么誰也就搶得了先機,用戶也就可能選擇誰。另外,用戶也并不是每天24小時都拿著手機看的,一般中午12點和晚上6點是兩個明顯的小高峰,飯前和下 班路上大家都有看手機的習慣,如果在這個時間段讓用戶收到所推送的消息,開啟率和激活率無疑會有比較大的提升。
擴展性維度考量:如果說自己架設服務器,倒也是能做,只是擴展性上不是很好把握,比如要用多少服務器,每個服務 器的容量大小等都是需要考慮的。即使愛奇藝能做,相比于專門提供這樣服務的公司,比如百度,可能就不如他們將這樣的服務做得精細而全面。所以說,通過百度 云推送,愛奇藝能夠以一種比較低成本、高效的方式解決自己的問題,而且不用考慮任何負載、帶寬需求。
個性化維度考量:個性化的優勢不言而喻,不同的手機不同的特點,不同的用戶也有不同的需求,比如功能手機只能接收文字,而Android手機還可以接收圖片,以后也許會直接包含視頻等。那么多的手機型號,而且各個廠商可能都有自己的推送服務,對于愛奇藝來說,能夠維護好這個復雜的系統也是很大的挑戰。如果有一個專門的技術,讓開發者不用考慮手機型號,各類推送服務,只需要將精力放在業務上面,比如不同用戶的特性, 然后依此推送個性化的服務,給喜歡電影的人推送新片,給女性推送娛樂八卦等。大家各司其職,各取所長,工作效率就會提高很多。
基于云的推送服務的引入
在蘋果沒有在國內架設自己的數據中心之前,類似愛奇藝這樣的公司,在推送消息時,經常遇到的問題就是丟包。其原因也比較簡單,一是因為蘋果的帶寬較小,本來總量可能比較大,但是分配給國內的公司就少很多。
在引入百度云推送服務之前,愛奇藝一直沒有找到特別好的辦法解決丟包的問題。在測試了多次之后,他們才決定選用百度云推送的服務,其原因主要是,雖 然愛奇藝的技術團隊對自己的服務端做了很多改進,但是相比于百度云的規模效應,還是小巫見大巫。舉個簡單的例子,原來自己需要花費四、五個小時才能發完所有的消息,現在則是幾十分鐘的事情,這就是云技術的能量。而且對于Android平臺,因為不像iOS那樣還要走自己的消息中心,百度云推送可以讓愛奇藝 的信息做到實時發布。
對于百度云推送服務的特點,愛奇藝根據自己的理解,也做了一些總結。以自己以前自建服務器完成信息推送服務,和現在的云推送服務相比,任衡舉了一個 快遞配送的例子,雖然現在的快遞公司很多,但是大家很多時候還是愿意選擇順豐,其原因就在于其服務可以及時、安全,服務質量也不錯。可以說,百度云推送就 是一個功能完善、經驗豐富的配送站,比如從前自己通過蘋果消息中心推送信息時,不知道那個道路只能跑兩輛車,于是一下子塞進去了一萬輛,結果自然是堵塞。 而百度知道那個是雙車道的,每次只能塞兩輛,基于這些經驗,于是就將客戶發送到他那兒的一萬輛車分次發,每次兩輛,問題就輕易解決了。
另外,很多中小型公司,其實包括愛奇藝在內,面對蘋果的消息中心,有時候也不知道如何調整自己的策略才更好,而百度知道,鑒于自己在互聯網領域的多年經驗,它知道何時中國的帶寬波動***,而何時蘋果的消息發送中心效率***,因為走過很多遍,也就知道了路上有哪些坑。要知道百度地圖、百度音樂都是體量很大的移動客戶端,在其發展的過程中,相信也都遇到了各種各樣的問題。而解決這些問題之后的經驗,通過百度云推送服務都可以無縫傳遞給企業。
談到在使用百度云推送時的經驗,以及如何讓后來者少走一些坑。任衡和周政提到,因為百度云推送的接口是標準的,所以只要嚴格按照文檔中的指南,很快 就可以上手。愛奇藝是差不多用了一個月的時間完成了從測試到調試到上線的三部曲。其實,在選用百度云推送之前,愛奇藝也測試了其他一些國內的云推送服務公 司,之所以最終選擇百度云,一方面是公司間的關系,另外就是百度在運維、云計算方面的技術積累,以及從公司品牌和個性的服務等方面,都比較占優勢。
期待——更多的個性化數據分析
雖然現在百度云推送已經實現了比較好的消息推送功能,能夠滿足企業的基本需求,但是用戶的需求是無止境的。在交談中,任衡也列舉了一些例子,類似淘寶的數據魔方,通過收集整理買家的數據,能夠了解他的喜好,然后推送不同的廣告信息。而百度云推送也許將來可以通過和愛奇藝合作,基于所發送的信息,深入了解用戶對信息的敏感度,然后按照電影、電視劇、娛樂八卦對人群細分,從而不僅可以將消息推送到用戶面前,而且推送的都是他們感興趣的。如果能做到這一 點,那么就善莫大焉。
在InfoQ編輯和愛奇藝的研發經理溝通的過程中,即使是體量大的移動端,即使有著強大的技術研發力量,也是希望能夠將自己的精力放在業務上,讓用戶有片看,讓視頻更加流暢,讓用戶體驗更好,然后將非核心的事情都外包出去,比如將消息推送交給百度云推送去做等。對于體量不如愛奇藝這么大的中小型公 司,也許需求更是如此吧。在接下來,InfoQ的編輯會走進更多的有代表性的移動產品,與其技術負責人、產品經理溝通,獲取更多在移動產品開發過程中的難 題,以及可能的解決方案。各位讀者如果在研發過程中遇到什么難題,也歡迎以評論的方式與編輯討論,InfoQ的編輯會帶著這些問題和有經驗的專家溝通,為大家盡可能答疑解惑。
題外話:本文所提到的百度云推送技術百度目前已經對外開放,51CTO的讀者可以優先注冊體驗。