www.久久久久|狼友网站av天堂|精品国产无码a片|一级av色欲av|91在线播放视频|亚洲无码主播在线|国产精品草久在线|明星AV网站在线|污污内射久久一区|婷婷综合视频网站

當(dāng)前位置:首頁 > 芯聞號(hào) > 充電吧
[導(dǎo)讀]Atitit ?高性能架構(gòu)之道1. 應(yīng)用服務(wù)與數(shù)據(jù)隔離 22. 負(fù)載均衡你問題 22.1. 用戶的請(qǐng)求由誰來轉(zhuǎn)發(fā)到到具體的應(yīng)用服務(wù)器 22.2. 有什么轉(zhuǎn)發(fā)的算法 22.3. 應(yīng)用服務(wù)器如何返回用戶的

Atitit ?高性能架構(gòu)之道

1. 應(yīng)用服務(wù)與數(shù)據(jù)隔離 2

2. 負(fù)載均衡你問題 2

2.1. 用戶的請(qǐng)求由誰來轉(zhuǎn)發(fā)到到具體的應(yīng)用服務(wù)器 2

2.2. 有什么轉(zhuǎn)發(fā)的算法 2

2.3. 應(yīng)用服務(wù)器如何返回用戶的請(qǐng)求 2

2.4. 用戶如果每次訪問到的服務(wù)器不一樣,那么如何維護(hù)session的一致性 2

3. 負(fù)載均衡 2

3.1. http重定向。?推薦簡(jiǎn)單,直接js搞定負(fù)載均衡 3

3.2. DNS域名解析負(fù)載均衡 3

3.3. 反向代理服務(wù)器。 3

3.4. IP層負(fù)載均衡。 4

3.5. 數(shù)據(jù)鏈路層負(fù)載均衡。 4

4. 負(fù)載均衡2、第二個(gè)問題即是集群調(diào)度算法問題,常見的調(diào)度算法有10種。 5

5. 負(fù)載均衡問題解決 7

5.1. 3、第三個(gè)問題是集群模式問題,一般3種解決方案: 7

5.2. 4、第四個(gè)問題是session問題,一般有4種解決方案: 7

6. 使用數(shù)據(jù)庫連接池和線程池 9

7. Cache ?redis ?前端cache等 9

7.1. 1、后臺(tái)應(yīng)用層和數(shù)據(jù)庫層的緩存 9

7.2. 2、頁面緩存 9

8. 全文索引 數(shù)據(jù)庫全文索引 與文件全文索引 10

9. Msa 10

10. 讀寫分離集群 主從復(fù)制 10

11. Cdn動(dòng)靜分離 11

12. 跟高性能數(shù)據(jù)庫 oracle取代mysql比如 11

13. 更高性能的存儲(chǔ)引擎 11

14. Nosql 更高性能數(shù)據(jù)庫 11

15. 存儲(chǔ)過程 提升單臺(tái)數(shù)據(jù)庫能力 11

16. 單表分區(qū) 11

17. 分布式存儲(chǔ) 11

17.1. 業(yè)務(wù)拆分垂直拆分 分庫 11

17.2. 水平拆分 按照時(shí)間維度推薦 ,用戶地理維度等。 11

18. 參考資料 12

18.1. 淺談web網(wǎng)站架構(gòu)演變過程 - 語不驚人死不休 - CSDN博客.mhtml 12

?

?

1.?應(yīng)用服務(wù)與數(shù)據(jù)隔離2.?負(fù)載均衡你問題

?

系統(tǒng)演變到這里,將會(huì)出現(xiàn)下面四個(gè)問題:

2.1.?用戶的請(qǐng)求由誰來轉(zhuǎn)發(fā)到到具體的應(yīng)用服務(wù)器2.2.?有什么轉(zhuǎn)發(fā)的算法2.3.?應(yīng)用服務(wù)器如何返回用戶的請(qǐng)求2.4.?用戶如果每次訪問到的服務(wù)器不一樣,那么如何維護(hù)session的一致性

?

3.?負(fù)載均衡

?

?

3.1.?http重定向。?推薦簡(jiǎn)單,直接js搞定負(fù)載均衡

1、HTTP重定向就是應(yīng)用層的請(qǐng)求轉(zhuǎn)發(fā)。用戶的請(qǐng)求其實(shí)已經(jīng)到了HTTP重定向負(fù)載均衡服務(wù)器,服務(wù)器根據(jù)算法要求用戶重定向,用戶收到重定向請(qǐng)求后,再次請(qǐng)求真正的集群

      優(yōu)點(diǎn):簡(jiǎn)單。

      缺點(diǎn):性能較差。

3.2.?DNS域名解析負(fù)載均衡

2、。DNS域名解析負(fù)載均衡就是在用戶請(qǐng)求DNS服務(wù)器,獲取域名對(duì)應(yīng)的IP地址時(shí),DNS服務(wù)器直接給出負(fù)載均衡后的服務(wù)器IP。

      優(yōu)點(diǎn):交給DNS,不用我們?nèi)ゾS護(hù)負(fù)載均衡服務(wù)器。

      缺點(diǎn):當(dāng)一個(gè)應(yīng)用服務(wù)器掛了,不能及時(shí)通知DNS,而且DNS負(fù)載均衡的控制權(quán)在域名服務(wù)商那里,網(wǎng)站無法做更多的改善和更強(qiáng)大的管理。

3.3.?反向代理服務(wù)器。

3、在用戶的請(qǐng)求到達(dá)反向代理服務(wù)器時(shí)(已經(jīng)到達(dá)網(wǎng)站機(jī)房),由反向代理服務(wù)器根據(jù)算法轉(zhuǎn)發(fā)到具體的服務(wù)器。常用的apache,nginx都可以充當(dāng)反向代理服務(wù)器。

      優(yōu)點(diǎn):部署簡(jiǎn)單。

      缺點(diǎn):代理服務(wù)器可能成為性能的瓶頸,特別是一次上傳大文件。

3.4.?IP層負(fù)載均衡。

4、在請(qǐng)求到達(dá)負(fù)載均衡器后,負(fù)載均衡器通過修改請(qǐng)求的目的IP地址,從而實(shí)現(xiàn)請(qǐng)求的轉(zhuǎn)發(fā),做到負(fù)載均衡。

      優(yōu)點(diǎn):性能更好。

      缺點(diǎn):負(fù)載均衡器的寬帶成為瓶頸。

3.5.?數(shù)據(jù)鏈路層負(fù)載均衡。

5、在請(qǐng)求到達(dá)負(fù)載均衡器后,負(fù)載均衡器通過修改請(qǐng)求的mac地址,從而做到負(fù)載均衡,與IP負(fù)載均衡不一樣的是,當(dāng)請(qǐng)求訪問完服務(wù)器之后,直接返回客戶。而無需再經(jīng)過負(fù)載均衡器。

?

2、第二個(gè)問題即是集群調(diào)度算法問題,常見的調(diào)度算法有10種。

1、rr 輪詢調(diào)度算法。顧名思義,輪詢分發(fā)請(qǐng)求。

      優(yōu)點(diǎn):實(shí)現(xiàn)簡(jiǎn)單

      缺點(diǎn):不考慮每臺(tái)服務(wù)器的處理能力

2、wrr 加權(quán)調(diào)度算法。我們給每個(gè)服務(wù)器設(shè)置權(quán)值weight,負(fù)載均衡調(diào)度器根據(jù)權(quán)值調(diào)度服務(wù)器,服務(wù)器被調(diào)用的次數(shù)跟權(quán)值成正比。

      優(yōu)點(diǎn):考慮了服務(wù)器處理能力的不同

3、sh 原地址散列:提取用戶IP,根據(jù)散列函數(shù)得出一個(gè)key,再根據(jù)靜態(tài)映射表,查處對(duì)應(yīng)的value,即目標(biāo)服務(wù)器IP。過目標(biāo)機(jī)器超負(fù)荷,則返回空。

4、dh 目標(biāo)地址散列:同上,只是現(xiàn)在提取的是目標(biāo)地址的IP來做哈希。

      優(yōu)點(diǎn):以上兩種算法的都能實(shí)現(xiàn)

?

?

?

4.?負(fù)載均衡2、第二個(gè)問題即是集群調(diào)度算法問題,常見的調(diào)度算法有10種。

?

1、rr 輪詢調(diào)度算法。顧名思義,輪詢分發(fā)請(qǐng)求。

      優(yōu)點(diǎn):實(shí)現(xiàn)簡(jiǎn)單

      缺點(diǎn):不考慮每臺(tái)服務(wù)器的處理能力

2、wrr 加權(quán)調(diào)度算法。我們給每個(gè)服務(wù)器設(shè)置權(quán)值weight,負(fù)載均衡調(diào)度器根據(jù)權(quán)值調(diào)度服務(wù)器,服務(wù)器被調(diào)用的次數(shù)跟權(quán)值成正比。

      優(yōu)點(diǎn):考慮了服務(wù)器處理能力的不同

3、sh 原地址散列:提取用戶IP,根據(jù)散列函數(shù)得出一個(gè)key,再根據(jù)靜態(tài)映射表,查處對(duì)應(yīng)的value,即目標(biāo)服務(wù)器IP。過目標(biāo)機(jī)器超負(fù)荷,則返回空。

4、dh 目標(biāo)地址散列:同上,只是現(xiàn)在提取的是目標(biāo)地址的IP來做哈希。

      優(yōu)點(diǎn):以上兩種算法的都能實(shí)現(xiàn)同一個(gè)用戶訪問同一個(gè)服務(wù)器。

5、lc 最少連接。優(yōu)先把請(qǐng)求轉(zhuǎn)發(fā)給連接數(shù)少的服務(wù)器。

      優(yōu)點(diǎn):使得集群中各個(gè)服務(wù)器的負(fù)載更加均勻。

6、wlc 加權(quán)最少連接。在lc的基礎(chǔ)上,為每臺(tái)服務(wù)器加上權(quán)值。算法為:(活動(dòng)連接數(shù)*256+非活動(dòng)連接數(shù))÷權(quán)重 ,計(jì)算出來的值小的服務(wù)器優(yōu)先被選擇。

      優(yōu)點(diǎn):可以根據(jù)服務(wù)器的能力分配請(qǐng)求。

7、sed 最短期望延遲。其實(shí)sed跟wlc類似,區(qū)別是不考慮非活動(dòng)連接數(shù)。算法為:(活動(dòng)連接數(shù)+1)*256÷權(quán)重,同樣計(jì)算出來的值小的服務(wù)器優(yōu)先被選擇。

8、nq 永不排隊(duì)。改進(jìn)的sed算法。我們想一下什么情況下才能“永不排隊(duì)”,那就是服務(wù)器的連接數(shù)為0的時(shí)候,那么假如有服務(wù)器連接數(shù)為0,均衡器直接把請(qǐng)求轉(zhuǎn)發(fā)給它,無需經(jīng)過sed的計(jì)算。

9、LBLC 基于局部性的最少連接。均衡器根據(jù)請(qǐng)求的目的IP地址,找出該IP地址最近被使用的服務(wù)器,把請(qǐng)求轉(zhuǎn)發(fā)之,若該服務(wù)器超載,最采用最少連接數(shù)算法。

10、LBLCR 帶復(fù)制的基于局部性的最少連接。均衡器根據(jù)請(qǐng)求的目的IP地址,找出該IP地址最近使用的“服務(wù)器組”,注意,并不是具體某個(gè)服務(wù)器,然后采用最少連接數(shù)從該組中挑出具體的某臺(tái)服務(wù)器出來,把請(qǐng)求轉(zhuǎn)發(fā)之。若該服務(wù)器超載,那么根據(jù)最少連接數(shù)算法,在集群的非本服務(wù)器組的服務(wù)器中,找出一臺(tái)服務(wù)器出來,加入本服務(wù)器組,然后把請(qǐng)求轉(zhuǎn)發(fā)之。

?

3、第三個(gè)問題是集群模式問題,一般3種解決方案

1、NAT:負(fù)載均衡器接收用戶的請(qǐng)求,轉(zhuǎn)發(fā)給具體服務(wù)器,服務(wù)器處理完請(qǐng)求返回給均衡器,均衡器再重新返回給用戶。

2、DR:負(fù)載均衡器接收用

5.?負(fù)載均衡問題解決?

?

5.1.?3、第三個(gè)問題是集群模式問題,一般3種解決方案

1、NAT:負(fù)載均衡器接收用戶的請(qǐng)求,轉(zhuǎn)發(fā)給具體服務(wù)器,服務(wù)器處理完請(qǐng)求返回給均衡器,均衡器再重新返回給用戶。

2、DR:負(fù)載均衡器接收用戶的請(qǐng)求,轉(zhuǎn)發(fā)給具體服務(wù)器,服務(wù)器出來玩請(qǐng)求后直接返回給用戶。需要系統(tǒng)支持IP Tunneling協(xié)議,難以跨平臺(tái)。

3、TUN:同上,但無需IP Tunneling協(xié)議,跨平臺(tái)性好,大部分系統(tǒng)都可以支持。

?

5.2.?4、第四個(gè)問題是session問題,一般有4種解決方案

1、Session Sticky。session sticky就是把同一個(gè)用戶在某一個(gè)會(huì)話中的請(qǐng)求,都分配到固定的某一臺(tái)服務(wù)器中,這樣我們就不需要解決跨服務(wù)器的session問題了,常見的算法有ip_hash法,即上面提到的兩種散列算法。

      優(yōu)點(diǎn):實(shí)現(xiàn)簡(jiǎn)單。

      缺點(diǎn):應(yīng)用服務(wù)器重啟則session消失。

2、Session Replication。session replication就是在集群中復(fù)制session,使得每個(gè)服務(wù)器都保存有全部用戶的session數(shù)據(jù)。

      優(yōu)點(diǎn):減輕負(fù)載均衡服務(wù)器的壓力,不需要要實(shí)現(xiàn)ip_hasp算法來轉(zhuǎn)發(fā)請(qǐng)求。

      缺點(diǎn):復(fù)制時(shí)寬帶開銷大,訪問量大的話session占用內(nèi)存大且浪費(fèi)。

3、Session數(shù)據(jù)集中存儲(chǔ):session數(shù)據(jù)集中存儲(chǔ)就是利用數(shù)據(jù)庫來存儲(chǔ)session數(shù)據(jù),實(shí)現(xiàn)了session和應(yīng)用服務(wù)器的解耦。

      優(yōu)點(diǎn):相比session replication的方案,集群間對(duì)于寬帶和內(nèi)存的壓力減少了很多。

      缺點(diǎn):需要維護(hù)存儲(chǔ)session的數(shù)據(jù)庫。

4、Cookie Base:cookie base就是把session存在cookie中,有瀏覽器來告訴應(yīng)用服務(wù)器我的session是什么,同樣實(shí)現(xiàn)了session和應(yīng)用服務(wù)器的解耦。

      優(yōu)點(diǎn):實(shí)現(xiàn)簡(jiǎn)單,基本免維護(hù)。

      缺點(diǎn):cookie長(zhǎng)度限制,安全性低,寬帶消耗。

值得一提的是:

nginx目前支持的負(fù)載均衡算法有wrr、sh

?

?

6.?使用數(shù)據(jù)庫連接池和線程池

?

7.?Cache ?redis ?前端cache等

?

7.1.?1、后臺(tái)應(yīng)用層和數(shù)據(jù)庫層的緩存

  隨著訪問量的增加,逐漸出現(xiàn)了許多用戶訪問同一部分內(nèi)容的情況,對(duì)于這些比較熱門的內(nèi)容,沒必要每次都從數(shù)據(jù)庫讀取。我們可以使用緩存技術(shù),例如可以使用google的開源緩存技術(shù)guava或者使用memcacahe作為應(yīng)用層的緩存,也可以使用redis作為數(shù)據(jù)庫層的緩存。

7.2.?2、頁面緩存

  除了數(shù)據(jù)緩存,還有頁面緩存。比如使用HTML5的localstroage或者cookie。

?

  優(yōu)點(diǎn):

·?減輕數(shù)據(jù)庫的壓力

·?大幅度提高訪問速度

?

  缺點(diǎn):

·?需要維護(hù)緩存服務(wù)器

·?提高了編碼的復(fù)雜性

?

8.?全文索引 數(shù)據(jù)庫全文索引 與文件全文索引9.?Msa

?

10.?讀寫分離集群 主從復(fù)制

?

那么如何實(shí)現(xiàn)數(shù)據(jù)庫的讀寫分離呢?目前的思路將數(shù)據(jù)庫進(jìn)行主從拆分,所有的寫操作操作主庫,所有的讀操作操作從庫,對(duì)主庫的更新操作會(huì)通過binlog同步到從庫上,從而在從庫也可以拿到最新的數(shù)據(jù)。如此一來,讀寫不再互相阻塞,性能至少提升1倍以上。就MySQL而言,主從熱備的功能可以通過cobar、mycat之類的框架來完成。

?

 解決問題方案:

1.?我們可以使用MYSQL自帶的master+slave的方式實(shí)現(xiàn)主從復(fù)制。

2.?采用第三方數(shù)據(jù)庫中間件,例如mycat。mycat是從cobar發(fā)展而來的,而cobar是阿里開源的數(shù)據(jù)庫中間件,后來停止開發(fā)。mycat是國內(nèi)比較好的mysql開源數(shù)據(jù)庫分庫分表中間件。

?

?

11.?Cdn動(dòng)靜分離12.?跟高性能數(shù)據(jù)庫 oracle取代mysql比如13.?更高性能的存儲(chǔ)引擎14.?Nosql 更高性能數(shù)據(jù)庫15.?存儲(chǔ)過程 提升單臺(tái)數(shù)據(jù)庫能力16.?單表分區(qū)17.?分布式存儲(chǔ)??17.1.?業(yè)務(wù)拆分垂直拆分 分庫17.2.?水平拆分 按照時(shí)間維度推薦 ,用戶地理維度等。

?

18.?參考資料18.1.?淺談web網(wǎng)站架構(gòu)演變過程 - 語不驚人死不休 - CSDN博客.mhtml

本站聲明: 本文章由作者或相關(guān)機(jī)構(gòu)授權(quán)發(fā)布,目的在于傳遞更多信息,并不代表本站贊同其觀點(diǎn),本站亦不保證或承諾內(nèi)容真實(shí)性等。需要轉(zhuǎn)載請(qǐng)聯(lián)系該專欄作者,如若文章內(nèi)容侵犯您的權(quán)益,請(qǐng)及時(shí)聯(lián)系本站刪除。
換一批
延伸閱讀

9月2日消息,不造車的華為或?qū)⒋呱龈蟮莫?dú)角獸公司,隨著阿維塔和賽力斯的入局,華為引望愈發(fā)顯得引人矚目。

關(guān)鍵字: 阿維塔 塞力斯 華為

倫敦2024年8月29日 /美通社/ -- 英國汽車技術(shù)公司SODA.Auto推出其旗艦產(chǎn)品SODA V,這是全球首款涵蓋汽車工程師從創(chuàng)意到認(rèn)證的所有需求的工具,可用于創(chuàng)建軟件定義汽車。 SODA V工具的開發(fā)耗時(shí)1.5...

關(guān)鍵字: 汽車 人工智能 智能驅(qū)動(dòng) BSP

北京2024年8月28日 /美通社/ -- 越來越多用戶希望企業(yè)業(yè)務(wù)能7×24不間斷運(yùn)行,同時(shí)企業(yè)卻面臨越來越多業(yè)務(wù)中斷的風(fēng)險(xiǎn),如企業(yè)系統(tǒng)復(fù)雜性的增加,頻繁的功能更新和發(fā)布等。如何確保業(yè)務(wù)連續(xù)性,提升韌性,成...

關(guān)鍵字: 亞馬遜 解密 控制平面 BSP

8月30日消息,據(jù)媒體報(bào)道,騰訊和網(wǎng)易近期正在縮減他們對(duì)日本游戲市場(chǎng)的投資。

關(guān)鍵字: 騰訊 編碼器 CPU

8月28日消息,今天上午,2024中國國際大數(shù)據(jù)產(chǎn)業(yè)博覽會(huì)開幕式在貴陽舉行,華為董事、質(zhì)量流程IT總裁陶景文發(fā)表了演講。

關(guān)鍵字: 華為 12nm EDA 半導(dǎo)體

8月28日消息,在2024中國國際大數(shù)據(jù)產(chǎn)業(yè)博覽會(huì)上,華為常務(wù)董事、華為云CEO張平安發(fā)表演講稱,數(shù)字世界的話語權(quán)最終是由生態(tài)的繁榮決定的。

關(guān)鍵字: 華為 12nm 手機(jī) 衛(wèi)星通信

要點(diǎn): 有效應(yīng)對(duì)環(huán)境變化,經(jīng)營業(yè)績(jī)穩(wěn)中有升 落實(shí)提質(zhì)增效舉措,毛利潤率延續(xù)升勢(shì) 戰(zhàn)略布局成效顯著,戰(zhàn)新業(yè)務(wù)引領(lǐng)增長(zhǎng) 以科技創(chuàng)新為引領(lǐng),提升企業(yè)核心競(jìng)爭(zhēng)力 堅(jiān)持高質(zhì)量發(fā)展策略,塑強(qiáng)核心競(jìng)爭(zhēng)優(yōu)勢(shì)...

關(guān)鍵字: 通信 BSP 電信運(yùn)營商 數(shù)字經(jīng)濟(jì)

北京2024年8月27日 /美通社/ -- 8月21日,由中央廣播電視總臺(tái)與中國電影電視技術(shù)學(xué)會(huì)聯(lián)合牽頭組建的NVI技術(shù)創(chuàng)新聯(lián)盟在BIRTV2024超高清全產(chǎn)業(yè)鏈發(fā)展研討會(huì)上宣布正式成立。 活動(dòng)現(xiàn)場(chǎng) NVI技術(shù)創(chuàng)新聯(lián)...

關(guān)鍵字: VI 傳輸協(xié)議 音頻 BSP

北京2024年8月27日 /美通社/ -- 在8月23日舉辦的2024年長(zhǎng)三角生態(tài)綠色一體化發(fā)展示范區(qū)聯(lián)合招商會(huì)上,軟通動(dòng)力信息技術(shù)(集團(tuán))股份有限公司(以下簡(jiǎn)稱"軟通動(dòng)力")與長(zhǎng)三角投資(上海)有限...

關(guān)鍵字: BSP 信息技術(shù)
關(guān)閉
關(guān)閉