国产精品久av福利在线观看_亚洲一区国产精品_亚洲黄色一区二区三区_欧美成人xxxx_国产精品www_xxxxx欧美_国产精品久久婷婷六月丁香_国产特级毛片

錦州市廣廈電腦維修|上門維修電腦|上門做系統(tǒng)|0416-3905144熱誠服務,錦州廣廈維修電腦,公司IT外包服務
topFlag1 設為首頁
topFlag3 收藏本站
 
maojin003 首 頁 公司介紹 服務項目 服務報價 維修流程 IT外包服務 服務器維護 技術文章 常見故障
錦州市廣廈電腦維修|上門維修電腦|上門做系統(tǒng)|0416-3905144熱誠服務技術文章
構(gòu)建互聯(lián)網(wǎng)高性能WEB系統(tǒng)經(jīng)驗總結(jié)

作者: 佚名  日期:2023-08-18 12:03:20   來源: 本站整理

 互聯(lián)網(wǎng)發(fā)展至今各種應用層出不窮,用戶量動輒上億。所以如何構(gòu)建一個優(yōu)秀的高性能、高可靠的應用系統(tǒng)對每一個開發(fā)者至關重要。本文將我所學到和在工作中使用到的一些方法歸納總結(jié),希望給其他同學起到一些借鑒作用,在以后的開發(fā)中遇到類似的問題,能快速的找到解決方案。本人主要使用語言是JAVA,所以下面不做特殊說明,都是使用JAVA語言

高性能的關鍵

要想做到高性能,我總結(jié)了三點:

  1. 緩存 
    • DNS緩存
    • 數(shù)據(jù)庫緩存
    • 分布式緩存
  2. 拆分 
    • 業(yè)務拆分
    • 數(shù)據(jù)庫拆分
  3. 異步 
    • 網(wǎng)絡異步
    • 磁盤異步
    • 使用消息

上面舉了一些三點中常見的情況,無論什么地方遇到性能瓶頸,謹記這三點,大多數(shù)時候都能找到解決方案。以下分別介紹在整個架構(gòu)中各個方面對這三點的應用

無狀態(tài)服務

說無狀態(tài)服務我們首先要想到無狀態(tài)對象,無狀態(tài)對象簡單的可以理解為沒有Field的對象,比如model/entity對象就不屬于無狀態(tài)對象,因為他含有Field,比如典型MVC場景的**Controller,**Service就是無狀態(tài)的,他們只含有method。有的也是有狀態(tài)的,比如Structs2框架的Action,所以Structs2現(xiàn)在用得比較少了。有了無狀態(tài)對象,我們才有可能構(gòu)建無狀態(tài)服務,因為請求鏈路中不包含有狀態(tài)對象,所以我們每一次請求都是獨立的,這樣的架構(gòu)有助于我們服務進行擴展。

無狀態(tài)服務有時候不可避免的會遇到一些有狀態(tài)的對象,比如最常見的就是session。因為http請求本身是無狀態(tài)的,所以必須cookie和session配合使用,才能識別多次http請求屬于同一用戶。一般有兩種方法解決:

  • 使用cookie存儲
  • 使用分布式session服務

第一種就是將對象信息全部存儲在cookie中,通過相應的算法等在服務端將cookie中的信息讀出來。這些信息一般都會進行加密處理。 
第二種方法,就是將session存儲在分布式數(shù)據(jù)庫或者分布式緩存中,一般存在redis或者memcache中。那這種服務擴展會依賴第三方數(shù)據(jù)庫或緩存的能力。淘寶有類似的組件,開源世界也有基于memcache和redis的分布式session

無狀態(tài)服務用到了拆分和緩存

業(yè)務拆分

無狀態(tài)可以使應用服務水平擴展,但是當單個應用太大太臃腫時,有必要對應用進行拆分。垂直拆分即按業(yè)務拆分,比如電商系統(tǒng)中,按照訂單系統(tǒng),積分系統(tǒng)等進行拆分。拆分可以方便開發(fā),更方便擴展。系統(tǒng)大了以后,每個業(yè)務的訪問量是不一樣的,比如買家系統(tǒng)肯定比賣家系統(tǒng)訪問量大得多,這時候就可以只增加買家系統(tǒng)的機器即可。

除了按照業(yè)務的不同拆分成不同的系統(tǒng)以外,針對我們的應用分層也可以進行拆分,一般分為應用層、邏輯層和原子層。應用層就是各種數(shù)據(jù)、邏輯業(yè)務的組裝,邏輯層含有大量可重用邏輯,原子層直接操作數(shù)據(jù)庫,一些基本的數(shù)據(jù)操作包含在其中。

不論以何種形式拆分,拆分以后的系統(tǒng)在物理層面上就分離開來,所以系統(tǒng)間的通信是拆分中最重要的問題所在。

RPC

在RPC服務之前已經(jīng)許多系統(tǒng)通信的方法,比如RMI、WebService,但是RPC以更方便,更高效,跨平臺的方式現(xiàn)在成為主流的通信手段。幾乎每個大公司都有自己的RPC框架:淘寶的HSF、58的SCF,也有非常多優(yōu)秀的開源框架:Dubbo、GRPC、Thrift等等。國內(nèi)用dubbo的大公司也很多:京東、當當都是。

MQ

RPC調(diào)用一般是用在耦合比較重,同步調(diào)用的場景下。而MQ作為另一種異步通信的手段也被廣泛使用在各個業(yè)務中。常用的有:ActiveMQ、RabbitMQ、Kafka、RocketMQ。前兩個一般作為企業(yè)級應用,主要特點是支持非常多的特性和規(guī)范。后兩者是互聯(lián)網(wǎng)級的,擁有更強力的吞吐和更高的性能,但是犧牲了很多MQ的特性。mq一般用在要求最終一直性即可的場景,比如用戶注冊和發(fā)積分這兩個動作,可以用戶注冊以后直接返回前臺成功,然后發(fā)送注冊成功消息給mq系統(tǒng),發(fā)積分動作訂閱注冊事件,消費mq的事件信息。

MQ最大的好處就是削峰和解耦,在RPC式的同步調(diào)用場景中,如果同一個邏輯中調(diào)用A和B,那么在擴展的時候,A和B一定是需要同時擴展的,但是有了消息以后,A發(fā)送消息給B,及時B暫時處理不了,也可以等到A峰值過后B繼續(xù)處理,即使B短期無法匹配A的發(fā)送消息能力也沒有關系。

數(shù)據(jù)庫拆分

一般項目都會經(jīng)歷數(shù)據(jù)量從小到大的變化,所以數(shù)據(jù)庫拆分也是根據(jù)不同的數(shù)據(jù)量已經(jīng)不同的階段進行相應的處理。

讀寫分離,這是大多數(shù)應用在遇到性能瓶頸第一要干的事。大多數(shù)互聯(lián)網(wǎng)應用都是讀占道90%以上的場景。所以一主多從,一個master做寫,其他slave做讀即可。但是這種主從模式也存在一些問題,比如有一些數(shù)據(jù)需要及時性比較高,就是在寫入以后馬上需要讀到。因為主從同步是通過log異步復制,所以存在數(shù)據(jù)不一致窗口,這個時候必須要通過強行讀取主庫來保證數(shù)據(jù)的安全,在開發(fā)的時候一定要注意。

垂直分割,就是通過拆分將不同的業(yè)務放在不同的數(shù)據(jù)庫中,這樣就可以減少單一數(shù)據(jù)庫的壓力,提高整體性能。垂直分割要注意的是業(yè)務邊界問題,邊界問題就是有一個表,感覺放在A中和放在B庫中都合適。這個就要靠經(jīng)驗了,不能過分的考慮,因為其實不論你在之前分得有多好,在應用的迭代中,總會出現(xiàn)更多的找不到明確邊界的表。這個問題在業(yè)務模塊劃分中也是一樣。

水平分割,一般就是說sharding。將同一個表中的不同字段,拆分成不同的表,或者將同一張表按照hash或者業(yè)務字段分成不同的分片。這種一般需要DAL框架的支持,其中有TDDL、Cobar、Mycat等。主要就是通過框架讓程序編寫者對數(shù)據(jù)庫的拆分不可見,就像操作一個數(shù)據(jù)庫一樣。不過現(xiàn)在的DAL框架還不能達到這樣的目的,尤其是在跨庫事務的場景下,一般都需要其他方式處理。

跨庫事務/分布式事務

跨庫事務一般都是通過最終一致性來解決,即不強求ACID都能滿足,容許數(shù)據(jù)不一致的時間窗口,但是總會有一個時間點數(shù)據(jù)會到最終一致的狀態(tài)。解決方案非常的多,不過核心原理都是一樣,不外乎都是靠補償來完成的。

緩存的使用

計算機世界有一句名言:“計算機科學領域的任何問題都可以通過增加一個間接的中間層來解決”。緩存就是一種中間層。

使用緩存的場景非常非常的多,幾乎到了你能想到的所有地方。這里我們講通常的數(shù)據(jù)庫數(shù)據(jù)緩存

緩存一般有兩種,local和remote,一般來說使用一種緩存即可,因為緩存雖好,但是維護緩存的更新和刪除卻是一件非常麻煩得事。一般緩存可分為讀緩存(大多數(shù)場景)和寫緩存(一般針對數(shù)據(jù)安全性比較低的場景)。

比如將數(shù)據(jù)庫中的數(shù)據(jù)讀出時同時寫入緩存中,下一次讀數(shù)據(jù)的時候就可以直接讀取緩存中的數(shù)據(jù),從而大大減小數(shù)據(jù)庫的壓力,說起來很簡單,其實這也存在很多種的架構(gòu),每種架構(gòu)都有利弊,大家可以詳細去了解。

寫緩存,就是先將數(shù)據(jù)寫入緩存中,然后一段時間再持久化,這樣同樣會提高效率,這種方案的問題在于如果這時候宕機,部分數(shù)據(jù)將會丟失,所以適用于數(shù)據(jù)安全性較低的場景。

緩存雖然速度快,除了維護更新較為麻煩的是,內(nèi)存也是較為昂貴的硬件,所以除了將熱點數(shù)據(jù)存儲在緩存中,一般緩存中維護數(shù)據(jù)的索引或者主要字段用于列表顯示,真正的大而全的數(shù)據(jù)還需要其他方法解決。

靜態(tài)化

對于大多數(shù)場景,我們的數(shù)據(jù)在一定時間都是不會變化的,或者說即使變化,也只是頁面的一小部分會發(fā)生變化,可以將不變化的部分單獨拿出來做靜態(tài)化。比如京東商城的頁面就是靜態(tài)化的,靜態(tài)化以后,數(shù)據(jù)不用每次都從緩存或者數(shù)據(jù)庫中取得,然后再封裝成頁面,而是直接請求返回靜態(tài)頁面,性能無疑提升了非常大。

除了以上常用的方法外,還要非常多的重要的方法:

  • CDN加速
  • DNS緩存
  • 頁面緩存
  • 使用分布式存儲
  • 使用多線程編寫程序


熱門文章
  • 如何關閉Windows Defender
  • 構(gòu)建互聯(lián)網(wǎng)高性能WEB系統(tǒng)經(jīng)驗總結(jié)
  • DNS污染檢測方法 教你一招輕松驗證...
  • 手機信號不好是因為什么?手機信號...
  • OPPO手機黑屏了怎么辦?OPPO手機黑...
  • 手機該怎么清理垃圾更方便,手機清...
  • iPhone 小技巧:使用 iMessage 信息...
  • win11磁盤分區(qū)格式怎么查看,win11...
  • 電子計算機的基本組成
  • 訪問頁面頻繁彈窗要求輸入PIN密碼怎...
  • Win11關機速度慢怎么辦?來試試這兩...
  • Excel技巧:把圖片壓縮近10倍清晰度...
  • 錦州廣廈電腦上門維修

    報修電話:13840665804  QQ:174984393 (聯(lián)系人:毛先生)   
    E-Mail:174984393@qq.com
    維修中心地址:錦州廣廈電腦城
    ICP備案/許可證號:遼ICP備2023002984號-1
    上門服務區(qū)域: 遼寧錦州市區(qū)
    主要業(yè)務: 修電腦,電腦修理,電腦維護,上門維修電腦,黑屏藍屏死機故障排除,無線上網(wǎng)設置,IT服務外包,局域網(wǎng)組建,ADSL共享上網(wǎng),路由器設置,數(shù)據(jù)恢復,密碼破解,光盤刻錄制作等服務

    技術支持:微軟等
    久久亚洲综合国产精品99麻豆精品福利| 亚洲欧洲成视频免费观看| 国产精品一区二区免费在线观看| 成人精品国产亚洲| 日本成人三级电影网站| 99re91这里只有精品| 日本黄网站色大片免费观看| 成人av影音| 日韩亚洲在线视频| 精品96久久久久久中文字幕无| 亚洲免费av一区二区三区| 精品一二三区| 亚洲18在线看污www麻豆| 久久久久久美女精品| 一道本在线免费视频| 一本综合久久| 男人天堂资源网| 国产亚洲成年网址在线观看| 国产无码精品久久久| 欧美情侣在线播放| 99国内精品久久久久| 亚洲第一视频在线| 91视频 - 88av| 91国偷自产一区二区三区观看| 超碰在线网址| 北条麻妃在线观看| 国产成人啪免费观看软件| 日韩黄色一级大片| 亚洲精品国产精品国产自| 全色精品综合影院| 99精品视频播放| 99久久99久久免费精品蜜臀| 中文字幕在线观看第二页| 色成人在线视频| 日本黄色免费在线| 国产一国产二国产三| 欧美又粗又大又爽| 美女的胸无遮挡在线观看 | http;//www.99re视频| 欧美福利在线播放网址导航| 久热国产精品视频一区二区三区| 日韩美女一区二区三区在线观看| 国产wwwwxxxx| 在线成人一区二区| 国产a亚洲精品| 美女被艹视频网站| 欧美午夜视频在线观看| 激情五月色综合亚洲小说| 国产精品一区视频| 国产成人影院| 中文字幕人妻一区二区三区在线视频| 久久久精品国产免费观看同学| 国产色在线视频| 欧美性猛交xxxx黑人| 亚洲综合在线网| 日韩成人在线视频网站| 麻豆传媒免费在线观看| youjizz.com在线观看| 日本不卡中文字幕| 国内一级毛片| 九九久久九九久久| 一区二区三区四区国产精品| 午夜国产福利在线| 亚洲图色中文字幕| 欧美曰成人黄网| 精品3atv在线视频| 日韩激情在线播放| 欧美一级大片在线观看| 五月天久久网站| 国产极品久久久| 日韩免费不卡av| 老妇喷水一区二区三区| 女人18毛片水真多18精品| 国产精品美女久久久久av超清| 久久激情电影| 你懂的网站在线| 国产亚洲欧美另类一区二区三区| 蜜桃视频在线观看一区二区| 99视频都是精品热在线播放| 欧美一区三区二区在线观看| 久久精品亚洲人成影院| 国产一区你懂的| 国产五月天婷婷| 国产福利精品一区二区三区| julia一区二区中文久久94| 亚洲欧美中文字幕在线一区| 久久久久久久久97黄色工厂| 欧美成人自拍| baoyu777.永久免费视频| 黄瓜视频污在线观看| 国产一区二区三区四区五区入口 | 国产区一区二区三区| 国产福利一区在线| 91黑丝在线| 国产麻豆天美果冻无码视频| 久久国产精品-国产精品| 日韩精品影音先锋| 欧美爱爱视频| 五月婷婷六月丁香| 久久久久久三级| 8x拔播拔播x8国产精品| 精品久久久久久久久久久下田 | 国产精品igao视频网网址不卡日韩| 色网在线播放| 一色屋色费精品视频在线观看 | 亚洲国产第一| 国产激情精品一区二区三区| 亚洲欧美日本免费| www.久久伊人| 黄色三级视频片| 欧美成人免费va影院高清| 粉嫩一区二区三区在线看| 国产精品xxx在线观看| 在线观看视频色潮| 丰满少妇xoxoxo视频| 亚洲r级在线观看| 精品日韩视频在线观看| 欧美久久九九| 欧美亚洲国产一区| 免费一区二区三区在线视频| 2019天天干夜夜操| 国产极品美女高潮无套嗷嗷叫酒店| 成人小视频在线观看免费| 欧美午夜精品伦理| 国产精品麻豆久久| 一区二区三区短视频| 又粗又大的机巴好爽欧美| 一区二区乱子伦在线播放| 日本三级理论片| 亚洲一级生活片| 9.1片黄在线观看| 国产精品视频一区二区三区四| 亚洲国产精品久久久久秋霞蜜臀| 成人h动漫精品一区二区| 欧美成熟视频| 久久人人视频| 有码av在线| 亚洲成在人线av| av中文字幕在线不卡| 亚洲裸体俱乐部裸体舞表演av| 国产精品一区二区av影院萌芽| av免费在线观看不卡| 精品人妻一区二区三区免费| 国产精品视频专区| 91麻豆精品国产91久久久更新时间| 久久超碰97中文字幕| 国产91精品入| 男人天堂亚洲| 永久免费av在线| 国产原创av在线| 在线永久免费观看黄网站| 怡春院在线视频| 日韩av在线天堂| 久久久精品免费看| 亚洲中文字幕在线一区| 亚洲影院中文字幕| jizzwww| 日韩簧片在线观看| 又长又粗又大又爽| 第一站视频久草网| 四虎永久免费地址| 性生活在线视频| 亚洲精品成人自拍| 亚洲午夜激情| 精品在线一区| 国产欧美丝袜| 国产精品一区二区三区观看| 亚洲另类图片色| 日本韩国精品在线| 国产精品欧美精品| 成人精品免费视频| 亚洲一区二区三区四区的| 欧美人狂配大交3d怪物一区| 久久婷婷久久一区二区三区| 中文久久精品| 亚洲视频一区| 午夜日韩福利| 日韩在线播放一区二区| 精品国产一区一区二区三亚瑟| аⅴ资源新版在线天堂| 69久久久久| 成人性生交大片免费观看网站| 91美女精品| 亚洲精品福利| 亚洲国产高清一区| 亚洲视频免费看| 欧美日韩第一视频| 91沈先生作品| 欧美a级黄色大片| 日本免费www| 中文av免费观看| 最新在线中文字幕| 国产乱在线观看视频| www.成人69.com| h在线观看视频免费网站| 国家队第一季免费高清在线观看| 国产小视频免费在线网址| 草美女在线观看| 亚洲精品国产setv| 樱桃成人精品视频在线播放|