springboot后端框架,mysql數(shù)據(jù)庫,rabbitmq,rocketmq,docker,Dubbo,springcloud gateway,minio,vectx,spring cloud nacos,springcloud alibaba
數(shù)據(jù)開放平臺項(xiàng)目介紹:基于React +Spring Boot + Dubbo + Gateway的接口開放調(diào)用平臺。管理員可以接入并發(fā)布數(shù)據(jù)接口,可視化各接口調(diào)用情況;用戶可以開通接口調(diào)用權(quán)限,通過客戶端SDK輕松調(diào)用接口獲取接口的數(shù)據(jù)服務(wù)。
主要工作:
為解決開發(fā)者調(diào)用成本過高的問題,基于Spring Boot Starter開發(fā)了客戶端SDK,方便客戶對于接口的調(diào)用。
為防止接口被惡意調(diào)用,設(shè)計(jì)API簽名認(rèn)證算法,為用戶分配唯一ak/sk以鑒權(quán),保障調(diào)用的安全性,可溯源性。
選用Spring Cloud gateway作為Api網(wǎng)關(guān),實(shí)現(xiàn)了路由轉(zhuǎn)發(fā)、訪問控制、流量染色,并集中處理簽名校驗(yàn)、請求參數(shù)校驗(yàn)、接口調(diào)用統(tǒng)計(jì)等業(yè)務(wù)邏輯,提高安全性的同時(shí),便于系統(tǒng)開發(fā)維護(hù)。
為解決多個(gè)子系統(tǒng)內(nèi)代碼重復(fù)的問題,抽象模型層和業(yè)務(wù)層代碼為公共模塊,使用Dubbo RPC框架實(shí)現(xiàn)子系統(tǒng)間的高性能接口調(diào)用,大幅減少重復(fù)代碼。
數(shù)據(jù)分析平臺項(xiàng)目介紹:基于Spring Boot + MQ + AIGC + React的智能數(shù)據(jù)分析平臺。區(qū)別于傳統(tǒng)BI,用戶只需要導(dǎo)入原始數(shù)據(jù)集,并輸入分析訴求,系統(tǒng)進(jìn)行智能處理,生成可視化圖表及分析結(jié)論,簡化數(shù)據(jù)分析的成本。
主要工作:
1.數(shù)據(jù)解析與優(yōu)化:使用Easy Excel解析用戶上傳的XLSX文件,并壓縮為CSV,縮小處理數(shù)據(jù)文件的大小,節(jié)約成本。
2.分布式限流:為防止用戶惡意占用系統(tǒng)資源,使用Redisson的RateLimiter實(shí)現(xiàn)分布式限流,限制單個(gè)用戶訪問AI分析接口的頻率。
3.并發(fā)與異步優(yōu)化:針對A|生成結(jié)果等待時(shí)間較長的問題,基于自定義IO密集型線程池和任務(wù)隊(duì)列,實(shí)現(xiàn)AIGC的并發(fā)執(zhí)行和異步化;增加任務(wù)狀態(tài)字段,提交任務(wù)后立即響應(yīng)前端,優(yōu)化用戶體驗(yàn)。
4.系統(tǒng)可靠性:由于AIGC的響應(yīng)時(shí)間較長,基于自定義IO密集型線程池+任務(wù)隊(duì)列實(shí)現(xiàn)了AIGC的并發(fā)執(zhí)行和異步化,提升系統(tǒng)處理請求的并發(fā)能力,提升系統(tǒng)可靠性。