系統(tǒng)架構(gòu)及開(kāi)發(fā)引導(dǎo)文檔V0.1

一断序,修訂紀(jì)錄

版本 修訂人 日期
初稿V0.1 林繼雙 2020-04-09

二,文檔目的

用于后端架構(gòu)開(kāi)發(fā)參考糜烹、技術(shù)棧描述违诗、開(kāi)發(fā)引導(dǎo)。

slogen:英語(yǔ)玩疮蹦,玩英語(yǔ),異性交友诸迟。

三,架構(gòu)cnName

1.設(shè)計(jì)原則

遵循有可能出現(xiàn)問(wèn)題就一定會(huì)出問(wèn)題原則。
減少不必要的依賴(lài)和技術(shù)棧阵苇。
自動(dòng)化部署壁公。
系統(tǒng)監(jiān)控,做到主動(dòng)解決問(wèn)題绅项。
為產(chǎn)品提供良好改需求環(huán)境贮尖,模塊盡量設(shè)計(jì)靈活。

2.安全描述

使用云服務(wù)端F5設(shè)備趁怔,隱藏主機(jī)湿硝,防止定向攻擊,在被docs攻擊的時(shí)候還是可以臨時(shí)切換F5設(shè)備润努。
敏感數(shù)據(jù)字段需要進(jìn)行加密关斜。
敏感操作需要二次鑒權(quán),手機(jī)驗(yàn)證碼或密碼铺浇。
Web端需要防止跨站腳本痢畜,注入腳本,sql注入等攻擊鳍侣。
暴力破解防御閥丁稀。
微服務(wù)需要加上SSL或禁止外網(wǎng)直接訪問(wèn)。
后臺(tái)管理采用spring security 對(duì)全部資源進(jìn)行權(quán)限過(guò)濾倚聚。

3.性能要求

百萬(wàn)日活: 每個(gè)用戶預(yù)計(jì)100 次請(qǐng)求 1億/8小時(shí) = 平均3472 QPS
线衫,高峰在6~8倍,預(yù)計(jì) QPS需要達(dá)到~=3W QPS惑折。
用戶注冊(cè)性能需要達(dá)到平均值的兩倍 ~=6944 授账。

4.擴(kuò)展

image.png

服務(wù)層級(jí):基于JWT,拆分服務(wù)讀瓶頸采用redis,寫(xiě)瓶頸采用jdbc-sharding惨驶。
各個(gè)服務(wù)接口不變的情況下還可以更換數(shù)據(jù)庫(kù)到nosql 庫(kù)白热。
代碼層級(jí):服務(wù)顆粒度可以根據(jù)并發(fā)程度情況進(jìn)行拆分。

5.業(yè)務(wù)模塊

image.png

6.后臺(tái)管理

使用vue -element-ui
滿足不同角色對(duì)應(yīng)不同權(quán)限粗卜。
https://panjiachen.github.io/vue-element-admin/

image.png

7.架構(gòu)圖

image.png

8.代碼分層

業(yè)務(wù)系統(tǒng): flo-boundaries
基礎(chǔ)服務(wù): flo-micros
治理: flo-clouds
推薦系統(tǒng): flo-recommendations

9.表規(guī)范

主表必須帶有id屋确、createTime。
數(shù)據(jù)可以修改的必須帶上 updateTime续扔。
狀態(tài)使用英文縮寫(xiě)(length 16) 例如. status : SUCCESS FAIL PENDING...
名稱(chēng)必須帶上 name() 攻臀,nameEn。保留雙語(yǔ)給小白用
表名稱(chēng) 不需要前綴测砂, 例如. order user
更多詳情參考阿里開(kāi)發(fā)文檔

四茵烈,技術(shù)棧描述

工具: maven , git , Jenkins
開(kāi)發(fā): Java11,Spring Boot(Web,MVC,Security,JPA,Data)
, Spring Cloud(Netflix全家桶,Config),String Cloud Admin 通過(guò)actuator采集和定制通知百匆。二砌些,文檔目的

用于后端架構(gòu)開(kāi)發(fā)參考、技術(shù)棧描述、開(kāi)發(fā)引導(dǎo)存璃。

slogen:英語(yǔ)玩仑荐,玩英語(yǔ),異性交友。
三纵东,架構(gòu)
1.設(shè)計(jì)原則

遵循有可能出現(xiàn)問(wèn)題就一定會(huì)出問(wèn)題原則粘招。
減少不必要的依賴(lài)和技術(shù)棧。
第三方:騰訊云偎球,融云IM
數(shù)據(jù): Mysql 5.7,Redis,Kafka,HBase

接口描述: swagger

五洒扎,后臺(tái)開(kāi)發(fā)引導(dǎo)

1.啟動(dòng)

monomers - app - AppApplication

2.開(kāi)發(fā)

在micros 下添加 模塊進(jìn)行開(kāi)發(fā)。
命名最好采用當(dāng)個(gè)單詞進(jìn)行命名如:
常見(jiàn)問(wèn)題 衰絮,命名為 faq , 包含 Faq , FaqDetail 實(shí)體袍冷,提供增加,編輯猫牡,刪除胡诗,查詢接口.

六,推薦算法(參考)

采集的數(shù)據(jù)越精確淌友,推薦也是準(zhǔn)確
技術(shù)棧:
存儲(chǔ):hdsf
分類(lèi)和標(biāo)記:spark
用戶習(xí)慣收集:kafka
實(shí)時(shí)分析:storm
數(shù)據(jù)查詢分析: es

推薦算法大致可以分為三類(lèi):基于內(nèi)容的推薦算法煌恢、協(xié)同過(guò)濾推薦算法和基于知識(shí)的推薦算法。

基于內(nèi)容的推薦算法震庭,原理是用戶喜歡和自己關(guān)注過(guò)的Item在內(nèi)容上類(lèi)似的Item瑰抵,比如你看了哈利波特I,基于內(nèi)容的推薦算法發(fā)現(xiàn)哈利波特II-VI器联,與你以前觀看的在內(nèi)容上面(共有很多關(guān)鍵詞)有很大關(guān)聯(lián)性谍憔,就把后者推薦給你,這種方法可以避免Item的冷啟動(dòng)問(wèn)題(冷啟動(dòng):如果一個(gè)Item從沒(méi)有被關(guān)注過(guò)主籍,其他推薦算法則很少會(huì)去推薦习贫,但是基于內(nèi)容的推薦算法可以分析Item之間的關(guān)系,實(shí)現(xiàn)推薦)千元,弊端在于推薦的Item可能會(huì)重復(fù)苫昌,典型的就是新聞推薦,如果你看了一則關(guān)于MH370的新聞幸海,很可能推薦的新聞和你瀏覽過(guò)的祟身,內(nèi)容一致;另外一個(gè)弊端則是對(duì)于一些多媒體的推薦(比如音樂(lè)物独、電影袜硫、圖片等)由于很難提內(nèi)容特征,則很難進(jìn)行推薦挡篓,一種解決方式則是人工給這些Item打標(biāo)簽婉陷。

協(xié)同過(guò)濾算法帚称,原理是用戶喜歡那些具有相似興趣的用戶喜歡過(guò)的商品,比如你的朋友喜歡電影哈利波特I秽澳,那么就會(huì)推薦給你闯睹,這是最簡(jiǎn)單的基于用戶的協(xié)同過(guò)濾算法(user-based collaboratIve filtering),還有一種是基于Item的協(xié)同過(guò)濾算法(item-based collaborative filtering)担神,這兩種方法都是將用戶的所有數(shù)據(jù)讀入到內(nèi)存中進(jìn)行運(yùn)算的楼吃,因此成為Memory-based Collaborative Filtering,另一種則是Model-based collaborative filtering妄讯,包括Aspect Model孩锡,pLSA,LDA亥贸,聚類(lèi)浮创,SVD,Matrix Factorization等砌函,這種方法訓(xùn)練過(guò)程比較長(zhǎng)斩披,但是訓(xùn)練完成后,推薦過(guò)程比較快讹俊。

最后一種方法是基于知識(shí)的推薦算法垦沉,也有人將這種方法歸為基于內(nèi)容的推薦,這種方法比較典型的是構(gòu)建領(lǐng)域本體仍劈,或者是建立一定的規(guī)則厕倍,進(jìn)行推薦。 混合推薦算法贩疙,則會(huì)融合以上方法讹弯,以加權(quán)或者串聯(lián)、并聯(lián)等方式盡心融合这溅。 當(dāng)然组民,推薦系統(tǒng)還包括很多方法,其實(shí)機(jī)器學(xué)習(xí)或者數(shù)據(jù)挖掘里面的方法悲靴,很多都可以應(yīng)用在推薦系統(tǒng)中臭胜,比如說(shuō)LR、GBDT癞尚、RF(這三種方法在一些電商推薦里面經(jīng)常用到)耸三,社交網(wǎng)絡(luò)里面的圖結(jié)構(gòu)等,都可以說(shuō)是推薦方法浇揩。

參考架構(gòu)

image.png
最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
  • 序言:七十年代末仪壮,一起剝皮案震驚了整個(gè)濱河市,隨后出現(xiàn)的幾起案子胳徽,更是在濱河造成了極大的恐慌积锅,老刑警劉巖爽彤,帶你破解...
    沈念sama閱讀 212,542評(píng)論 6 493
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件,死亡現(xiàn)場(chǎng)離奇詭異乏沸,居然都是意外死亡淫茵,警方通過(guò)查閱死者的電腦和手機(jī)爪瓜,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 90,596評(píng)論 3 385
  • 文/潘曉璐 我一進(jìn)店門(mén)蹬跃,熙熙樓的掌柜王于貴愁眉苦臉地迎上來(lái),“玉大人铆铆,你說(shuō)我怎么就攤上這事蝶缀。” “怎么了薄货?”我有些...
    開(kāi)封第一講書(shū)人閱讀 158,021評(píng)論 0 348
  • 文/不壞的土叔 我叫張陵翁都,是天一觀的道長(zhǎng)。 經(jīng)常有香客問(wèn)我谅猾,道長(zhǎng)柄慰,這世上最難降的妖魔是什么? 我笑而不...
    開(kāi)封第一講書(shū)人閱讀 56,682評(píng)論 1 284
  • 正文 為了忘掉前任税娜,我火速辦了婚禮坐搔,結(jié)果婚禮上,老公的妹妹穿的比我還像新娘敬矩。我一直安慰自己概行,他們只是感情好,可當(dāng)我...
    茶點(diǎn)故事閱讀 65,792評(píng)論 6 386
  • 文/花漫 我一把揭開(kāi)白布弧岳。 她就那樣靜靜地躺著凳忙,像睡著了一般。 火紅的嫁衣襯著肌膚如雪禽炬。 梳的紋絲不亂的頭發(fā)上涧卵,一...
    開(kāi)封第一講書(shū)人閱讀 49,985評(píng)論 1 291
  • 那天,我揣著相機(jī)與錄音腹尖,去河邊找鬼艺演。 笑死,一個(gè)胖子當(dāng)著我的面吹牛桐臊,可吹牛的內(nèi)容都是我干的胎撤。 我是一名探鬼主播,決...
    沈念sama閱讀 39,107評(píng)論 3 410
  • 文/蒼蘭香墨 我猛地睜開(kāi)眼断凶,長(zhǎng)吁一口氣:“原來(lái)是場(chǎng)噩夢(mèng)啊……” “哼伤提!你這毒婦竟也來(lái)了?” 一聲冷哼從身側(cè)響起认烁,我...
    開(kāi)封第一講書(shū)人閱讀 37,845評(píng)論 0 268
  • 序言:老撾萬(wàn)榮一對(duì)情侶失蹤肿男,失蹤者是張志新(化名)和其女友劉穎介汹,沒(méi)想到半個(gè)月后,有當(dāng)?shù)厝嗽跇?shù)林里發(fā)現(xiàn)了一具尸體舶沛,經(jīng)...
    沈念sama閱讀 44,299評(píng)論 1 303
  • 正文 獨(dú)居荒郊野嶺守林人離奇死亡嘹承,尸身上長(zhǎng)有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點(diǎn)故事閱讀 36,612評(píng)論 2 327
  • 正文 我和宋清朗相戀三年,在試婚紗的時(shí)候發(fā)現(xiàn)自己被綠了如庭。 大學(xué)時(shí)的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片叹卷。...
    茶點(diǎn)故事閱讀 38,747評(píng)論 1 341
  • 序言:一個(gè)原本活蹦亂跳的男人離奇死亡,死狀恐怖坪它,靈堂內(nèi)的尸體忽然破棺而出骤竹,到底是詐尸還是另有隱情,我是刑警寧澤往毡,帶...
    沈念sama閱讀 34,441評(píng)論 4 333
  • 正文 年R本政府宣布蒙揣,位于F島的核電站,受9級(jí)特大地震影響开瞭,放射性物質(zhì)發(fā)生泄漏懒震。R本人自食惡果不足惜,卻給世界環(huán)境...
    茶點(diǎn)故事閱讀 40,072評(píng)論 3 317
  • 文/蒙蒙 一嗤详、第九天 我趴在偏房一處隱蔽的房頂上張望个扰。 院中可真熱鬧,春花似錦断楷、人聲如沸锨匆。這莊子的主人今日做“春日...
    開(kāi)封第一講書(shū)人閱讀 30,828評(píng)論 0 21
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽(yáng)恐锣。三九已至,卻和暖如春舞痰,著一層夾襖步出監(jiān)牢的瞬間土榴,已是汗流浹背。 一陣腳步聲響...
    開(kāi)封第一講書(shū)人閱讀 32,069評(píng)論 1 267
  • 我被黑心中介騙來(lái)泰國(guó)打工响牛, 沒(méi)想到剛下飛機(jī)就差點(diǎn)兒被人妖公主榨干…… 1. 我叫王不留玷禽,地道東北人。 一個(gè)月前我還...
    沈念sama閱讀 46,545評(píng)論 2 362
  • 正文 我出身青樓呀打,卻偏偏與公主長(zhǎng)得像矢赁,于是被迫代替她去往敵國(guó)和親。 傳聞我的和親對(duì)象是個(gè)殘疾皇子贬丛,可洞房花燭夜當(dāng)晚...
    茶點(diǎn)故事閱讀 43,658評(píng)論 2 350

推薦閱讀更多精彩內(nèi)容