《青春有你2》全民pick背後的投票技術
前 言
從《偶像練習生》、《中國新說唱》到《青春有你》、《潮流合夥人》,愛奇藝近年來不斷深耕青年文化領域,成功推出了多部爆款內容,持續引領青年潮流文化的發展。在這之中,延續三年的“偶青”系列IP推動了偶像元年的開啟、為偶像團體選拔類綜藝樹立起全新的標杆,在滿足使用者多元娛樂需求的同時,向全球使用者輸出勇敢追夢、堅持自我的正向精神,也為國內偶像市場注入新鮮血液,再度推動偶像市場的健康良性發展。
《青春有你2》已於5月30日晚順利收官。百位訓練生歷經層層考核,最終由青春製作人助力選出的THE9以團體形式正式誕生,並獲得蒙牛真果粒代言資格。在歷次節目順利進行的背後,有無數的團隊付出了努力和汗水。其中就包括了投票服務技術團隊。下面主要介紹一下投票服務的架構最佳化和對《青春有你2》的支援工作。
1
投票服務簡介
2
投票服務的架構最佳化
直播投票和日常投票分別維護了兩套程式碼和服務部署,帶來比較高的維護成本; 對於需要擴容縮容等場景,運維部署複雜; 運營平臺前後端程式碼有複雜的耦合,前端程式碼技術陳舊,難以進一步擴充套件運營的需求
2.1
部署架構最佳化
2.2
高可用最佳化
得益於QAE和Skywalker的部署架構,投票服務層本身做到了多地多中心部署。同時在重構過程中,對資料儲存層也進行了改造,將專案中使用的快取和資料庫都做到了跨資料中心的高可用。投票專案中用到的資料儲存主要是MySQL、Couchbase和HBase,其中MySQL用於儲存配置資訊,Couchbase作為分散式快取,HBase用來儲存持久化資料。公司自研的MySQL-HA支援跨資料中心的一主多讀和故障下的主備切換;Couchbase在每個資料中心內是獨立叢集,使用XDCR進行跨資料中心叢集的雙向同步,透過自研的動態客戶端SDK來支援故障下的業務透明的切換;HBase使用跨資料中心的雙向同步,透過配置中心在機房故障時切換HBase叢集連線。
2.3
快取分片叢集彈性擴容縮容
其中使用者維度快取,透過對UID做分片來分散讀寫壓力和擴充單快取叢集容量的限制。並且大型活動本身有生命週期,快取中的資料不必長時間儲存,多個活動之間互相獨立,可以針對活動具體的量級來靈活調整分片的數量,在活動前擴容,在活動後回收(資料在底層儲存中另外有持久化)。節省了資源的同時,不用再對每個活動再定製化的做程式碼改造和最佳化。
2.4
提升非同步處理速度
原投票服務使用ActiveMQ作為訊息中介軟體,替換成了RocketMq物理機叢集,效能和可用性都有明顯的提高。對訊息體做了進一步精簡,以增加更大的吞吐量。對票數計數counter和持久化儲存拆分成了並行的consumer group處理。
2.5
開發框架
用Vue.js重寫了原js+html實現的運營後臺。重新設計了許可權系統,根據活動分配運營許可權,每個活動許可權又可以細分讀寫許可權,可以進行細粒度的許可權管理。增加了審計日誌,提高了系統安全性,更好的符合審計要求。投票服務層則重構為基於Springboot的開發框架。
2.6
效 果
3
投票與《青春有你2》
3.1
賽制介紹
《青春有你2》作為偶青系列IP的延伸,賽制與之前一樣:透過若干次舞臺公演和專業考核,從109位訓練生裡全民票選出9人組成全新偶像團體出道。從3月到5月底的四階段投票結果決定了每一輪的晉級名單,最終決賽直播時的投票結果則直接決定了成團的9人人選。這意味著投票在整個活動中具有非常重要的作用。
3.2
投票渠道
可以投票的渠道包括愛奇藝站內和站外。站內是愛奇藝app和愛奇藝泡泡APP,站外是品牌合作方蒙牛。愛奇藝VIP使用者比普通使用者享有更多的助力機會,登陸愛奇藝泡泡app享有額外的助力機會。蒙牛作為擁有唯一官方投票權的品牌,推出了官方助力小程式“真果粒青春福粒社”,購買線上及線下指定產品,掃描活動二維碼可獲得投票機會。
3.3
審 計
《青春有你2》的審計助力於由普華永道中天會計師事務所作為獨立第三方專業機構執行商定程式。在節目開始之前,與普華永道工作人員對公證的流程及材料進行了深入的討論。在節目開始後,普華永道工作人員也多次來到愛奇藝,對每項投票工作都進行了詳細的審計,並透過普華永道自己的技術手段進行投票黑盒測試,做票數的獨立統計,以確保投票結果的公正、準確性。
3.4
風 控
在青你2的投票活動中,愛奇藝風控中臺團隊與互動投票團隊緊密配合,為投票安全防刷等保駕護航。涉及到風控的技術細節這裡不做展開。
3.5
決賽直播投票
4
結 語
來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/69945252/viewspace-2704706/,如需轉載,請註明出處,否則將追究法律責任。
相關文章
- 滴滴全民拼車日背後的運維技術揭秘運維
- 微博春晚背後的技術故事
- Google DNS劫持背後的技術分析GoDNS
- 深挖谷歌 DeepMind 和它背後的技術谷歌
- JDV背後的技術-助力618
- 無人駕駛汽車背後的技術
- 瞭解Instagram背後的技術
- TGDC | 探索人臉藝術背後的技術
- 6 個技術點帶你理解 Kafka 高效能背後的原理Kafka
- ChatGPT 背後核心技術的白話版ChatGPT
- 前端技術選型及背後思考前端
- 人臉識別背後:可怕的不是技術
- GIFTO背後區塊鏈技術的分類區塊鏈
- 滴滴AR實景導航背後的技術
- 揭祕.NET Core剪裁器背後的技術
- 詳解Windows 11背後的技術創新Windows
- 背後支援著 Instagram 的開源技術
- 投票:OAuth2.0 技術選型你會怎麼選OAuth
- 被誤解的「中文版Sora」背後,位元組跳動有哪些技術?Sora
- 你知道微視背後的視訊特效技術是怎樣做出來的嗎?特效
- 直播預告 | “大淘寶技術論壇”太好逛了,背後的技術分享
- 《青春有你3》的zi彈時間舞臺,凝築了自由視角技術進化史
- 聊聊人像摳圖背後的演算法技術演算法
- 《深空之眼》口型動畫背後的技術支援動畫
- 深入解讀Service Mesh 背後的技術細節
- 解析波士頓Handle機器人背後的技術機器人
- Facebook移動端照片預覽背後的技術
- AI打王者、星際爭霸……你還不懂背後技術?這有一份遊戲AI綜述AI遊戲
- 優步的緊急按鈕及其背後的技術
- 榮耀帶你探悉最新款MAGIC4 PRO產線背後的尖端技術
- 「我在淘天做技術」雙11背後的營銷技術體系
- 俄羅斯世界盃直播背後的技術趨勢
- 探索新零售時代背後的技術變革
- 淺談滴滴需求響應式公交背後的技術
- 淺談AlphaGo背後所涉及的深度學習技術Go深度學習
- 黑洞圖片的背後,是影象處理技術的成熟!
- 騰訊全面上雲背後:程式設計師的技術焦慮和技術理想程式設計師
- 首次揭祕!阿里無人店系統背後的技術阿里