您好,登錄后才能下訂單哦!
年底很多移動產品都會推出自己的年度賬單,每年都會引起大眾媒體的關注。今年有幸參與了宜信財富APP年度賬單的開發,本文將帶大家探索宜信財富年度賬單背后的技術架構和研發邏輯,希望可以給大家帶來一些思路上的啟發。
宜信財富年度賬單前端架構所采用的技術棧包括:
本次年度賬單涉及客戶維度、銷售維度、客戶標簽等數據,其中客戶維度包括活動參與、文章、視頻瀏覽等數據。這部分數據的整合來源于數據中臺的主題數據。以下是數據中臺的架構圖:
在數據中臺的架構上,我們建立了“以客戶為中心”的標簽體系。該套標簽體系按照人口屬性、價值指標、地理指標、心理指標等幾大類對數據進行分層管理,標簽的加工方式主要來源于DW和DM層數據的輕量匯總或者衍生加工,以及部分模型生成的產品預測等標簽。這套標簽體系支持360度客戶畫像以及分析關鍵接觸點,提供基于跨渠道全流客戶體驗優化和關鍵觸點優化。
本次賬單的數據主要來源于業務操作、用戶管理等源系統數據,這些數據被結構化地存儲在數據庫集群中,且都已接入數據中臺,并按照定時任務或者實時數據落入對應主題域。賬單數據通過其相應主題數據加工而成,前端通過接口API訪問數據。
賬單需求里的“銷售評價消息實時推送”和“賬單傳播短信發送”都是通過智能運營系統支持的,該系統是集運營活動創建、執行、管理、反饋、迭代為一體的自動化平臺,能夠通過用戶屬性、標簽、計劃、操作等數據篩選客群,實現目標的精準觸達,提升關鍵指標和運營效率。
下面是智能運營系統創建運營計劃流程圖:
用戶數據來源于宜信財富平臺本身數據,包含:基礎信息、瀏覽信息、參與活動等多項數據,如何保證數據準確、高效地傳達到前端是后端開發所必須保障的。資產平臺采用了spring+jersery+oracle+redis+jetCache的技術架構,為了提升用戶體驗度,加快響應時間,數據存儲上該項目采用了緩存、非關系數據庫和傳統關系數據庫靈活結合的方式,更好地提供數據支撐。
在對接年度賬單需求時,我們也著重考慮了接口響應時間。年度賬單用戶數據包括用戶活動數據及操作數據兩張表,其中操作數據是一個重量級表格,為了減少數據庫的IO操作,采用了兩種方式來減少IO時間:
Stream 不是集合元素,它不是數據結構并不保存數據,它是有關算法和計算的,更像一個高級版本的 Iterator。
此外Stream還提供了并行技術,在不關注集合內部數據順序的時候,可以采用并行Stream拆解任務來加速處理過程。例如在做統計,需要將子產品進行匯總,或其他操作時。
如果將復雜的代碼邏輯直接用SQL來實現,代碼會非常冗長,執行效率也不高。代碼的邏輯是使用并行流Stream,根據類型對相關數據進行分類匯總,并且根據本次需求的業務場景將某一子類劃分到另一個類別下。
使用Stream并行流代替SQL邏輯可以加速執行效率,減少響應時間。感興趣的同學如果想了解Stream的更多特性,可以參考技術文檔。Stream的應用能夠讓代碼邏輯更加清晰,提高速度。
此項目是由多個團隊共同協作完成,本文對年度賬單需求做了一次技術層面的梳理,由于時間比較匆忙,內容不太詳細,希望可以給大家帶來一些開發思路,也希望用戶可以真切感受到我們的用心。
來源:宜信財富管理技術團隊
作者:米志華、孫李強、李力、趙全超
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。