資料介紹
攜程實時用戶行為服務作為基礎服務,目前普遍應用在多個場景中,比如猜你喜歡(攜程的推薦系統)、動態廣告、用戶畫像、瀏覽歷史等等。
以猜你喜歡為例,猜你喜歡為應用內用戶提供潛在選項,提高成交效率。旅行是一項綜合性的需求,用戶往往需要不止一個產品。作為一站式的旅游服務平臺,跨業務線的推薦,特別是實時推薦,能實際滿足用戶的需求,因此在上游提供打通各業務線之間的用戶行為數據有很大的必要性。
攜程原有的實時用戶行為系統存在一些問題,包括:1)數據覆蓋不全;2)數據輸出沒有統一格式,對眾多使用方提高了接入成本;3)日志處理模塊是Web Service,比較難支持多種數據處理策略和實現方便擴容應對流量洪峰的需求等。
而近幾年旅游市場高速增長,數據量越來越大,并且會持續快速增長。有越來越多的使用需求,對系統的實時性,穩定性也提出了更高的要求。總的來說,當前需求對系統的實時性/可用性/性能/擴展性方面都有很高的要求。
一、架構
這樣的背景下,我們按照如下結構重新設計了系統:
圖1 實時用戶行為系統邏輯視圖
新的架構下,數據有兩種流向,分別是處理流和輸出流。
在處理流,行為日志會從客戶端(App/Online/H5)上傳到服務端的Collector Service。Collector Service將消息發送到分布式隊列。數據處理模塊由流計算框架完成,從分布式隊列讀出數據,處理之后把數據寫入數據層,由分布式緩存和數據庫集群組成。
輸出流相對簡單,Web Service的后臺會從數據層拉取數據,并輸出給調用方,有的是內部服務調用,比如推薦系統,也有的是輸出到前臺,比如瀏覽歷史。系統實現采用的是Java+Kafka+Storm+Redis+MySQL+Tomcat+Spring的技術棧。
Java:目前公司內部Java化的氛圍比較濃厚,并且Java有比較成熟的大數據組件
Kafka/Storm:Kafka作為分布式消息隊列已經在公司有比較成熟的應用,流計算框架Storm也已經落地,并且有比較好的運維支持環境。
Redis: Redis的HA,SortedSet和過期等特性比較好地滿足了系統的需求。
MySQL: 作為基礎系統,穩定性和性能也是系統的兩大指標,對比NoSQL的主要選項,比如HBase和ElasticSearch,十億數據級別上MySQL在這兩方面有更好的表現,并且經過設計能夠有不錯的水平擴展能力。
目前系統每天處理20億左右的數據量,數據從上線到可用的時間在300毫秒左右。查詢服務每天服務8000萬左右的請求,平均延遲在6毫秒左右。下面從實時性/可用性/性能/部署幾個維度來說明系統的設計。
- DSP硬實時操作系統用戶手冊下載 30次下載
- 基于分布式仿真系統的實時通訊架構 11次下載
- 社交網絡水軍用戶的動態行為分析綜述 11次下載
- 基于用戶窗口行為的內部威脅異常檢測 5次下載
- 微服務架構下圖規劃算法的改進方法 5次下載
- 用于網絡用戶行為聚類分析的簇標簽自動生成方法 15次下載
- 考慮服務行為特征的服務動態行為生長演化模型 0次下載
- 基于VMware的云計算平臺下異常行為檢測技術架構 0次下載
- 基于用戶行為偏好的服務選擇策略 0次下載
- 基于用戶行為模式的電力需求建模設計 3次下載
- 實時用戶行為服務系統架構實踐 0次下載
- 嵌入式實時操作系統原理與最佳實踐 178次下載
- 基于用戶瀏覽行為的個性化網頁推薦
- 基于B S架構GPS手機實時追蹤系統的研究
- 基于類Markov鏈的用戶瀏覽行為預測方法
- 如何搭建微服務架構的全局圖景 384次閱讀
- 深入探討微服務和事件驅動架構區別 436次閱讀
- SpringCloud微服務架構:實現分布式系統的無縫協作 614次閱讀
- OpenHarmony上使用服務卡片 457次閱讀
- 釋放微服務架構全部潛力的關鍵 473次閱讀
- 微服務架構中的數據一致性解決方案與實踐 401次閱讀
- SOA面向服務架構介紹 1180次閱讀
- 微服務架構的特點_微服務架構適用場景 4920次閱讀
- 邏輯架構模型開發概念原則詳解 4529次閱讀
- AI行為分析+智慧校園應用方案 1.3w次閱讀
- 什么是無服務器?無服務器架構的安全需要注意什么 3469次閱讀
- 什么是微服務架構_微服務架構的優缺點及應用 1.7w次閱讀
- 微服務架構與實踐基礎篇 4161次閱讀
- ICC即時連接理念 如何構建ITS實時服務模式 3076次閱讀
- 雙核實時系統的架構是如何設計的? 2753次閱讀
下載排行
本周
- 1電子電路原理第七版PDF電子教材免費下載
- 0.00 MB | 1491次下載 | 免費
- 2單片機典型實例介紹
- 18.19 MB | 95次下載 | 1 積分
- 3S7-200PLC編程實例詳細資料
- 1.17 MB | 27次下載 | 1 積分
- 4筆記本電腦主板的元件識別和講解說明
- 4.28 MB | 18次下載 | 4 積分
- 5開關電源原理及各功能電路詳解
- 0.38 MB | 11次下載 | 免費
- 6100W短波放大電路圖
- 0.05 MB | 4次下載 | 3 積分
- 7基于單片機和 SG3525的程控開關電源設計
- 0.23 MB | 4次下載 | 免費
- 8基于AT89C2051/4051單片機編程器的實驗
- 0.11 MB | 4次下載 | 免費
本月
- 1OrCAD10.5下載OrCAD10.5中文版軟件
- 0.00 MB | 234313次下載 | 免費
- 2PADS 9.0 2009最新版 -下載
- 0.00 MB | 66304次下載 | 免費
- 3protel99下載protel99軟件下載(中文版)
- 0.00 MB | 51209次下載 | 免費
- 4LabView 8.0 專業版下載 (3CD完整版)
- 0.00 MB | 51043次下載 | 免費
- 5555集成電路應用800例(新編版)
- 0.00 MB | 33562次下載 | 免費
- 6接口電路圖大全
- 未知 | 30320次下載 | 免費
- 7Multisim 10下載Multisim 10 中文版
- 0.00 MB | 28588次下載 | 免費
- 8開關電源設計實例指南
- 未知 | 21539次下載 | 免費
總榜
- 1matlab軟件下載入口
- 未知 | 935053次下載 | 免費
- 2protel99se軟件下載(可英文版轉中文版)
- 78.1 MB | 537793次下載 | 免費
- 3MATLAB 7.1 下載 (含軟件介紹)
- 未知 | 420026次下載 | 免費
- 4OrCAD10.5下載OrCAD10.5中文版軟件
- 0.00 MB | 234313次下載 | 免費
- 5Altium DXP2002下載入口
- 未知 | 233046次下載 | 免費
- 6電路仿真軟件multisim 10.0免費下載
- 340992 | 191183次下載 | 免費
- 7十天學會AVR單片機與C語言視頻教程 下載
- 158M | 183277次下載 | 免費
- 8proe5.0野火版下載(中文版免費下載)
- 未知 | 138039次下載 | 免費
評論
查看更多