亚洲av成人无遮挡网站在线观看,少妇性bbb搡bbb爽爽爽,亚洲av日韩精品久久久久久,兔费看少妇性l交大片免费,无码少妇一区二区三区

  免費注冊 查看新帖 |

Chinaunix

  平臺 論壇 博客 文庫
最近訪問板塊 發(fā)新帖
查看: 10550 | 回復(fù): 0
打印 上一主題 下一主題

如何學(xué)好后端開發(fā)? [復(fù)制鏈接]

論壇徽章:
0
跳轉(zhuǎn)到指定樓層
1 [收藏(0)] [報告]
發(fā)表于 2023-06-16 15:31 |只看該作者 |倒序瀏覽
如果要學(xué)好后端,要拿高工資,要有更好的發(fā)展前景,后臺開發(fā)服務(wù)必須學(xué)會解決三高問題:高并發(fā)、高可用、高性能.

一 高并發(fā)
我們的開發(fā)的后臺服務(wù)器應(yīng)付一些小并發(fā)場景綽綽有余,但是隨著互聯(lián)網(wǎng)應(yīng)用業(yè)務(wù)量的上漲,對后臺服務(wù)端的請求數(shù)劇增,高并發(fā)需求隨之而來,高并發(fā)指的就是高 TPS 和高 QPS TPS (Transactions Per Second)每秒事務(wù)數(shù) QPS(Query Per Second)每秒查詢數(shù)等。 對于高并發(fā)服務(wù)必須改變傳統(tǒng)的單進程模型,才能處理的過來如此海量的請求。處理高并發(fā),我們要學(xué)習(xí)下面技術(shù)來處理這個問題

多進程
對于高并發(fā)的服務(wù)請求,由于后臺服務(wù)一般都是 IO 密集型應(yīng)用,IO 密集型應(yīng)用就是大部分 CPU 時間用在網(wǎng)絡(luò) IO 上,相對的是 CPU 密集型應(yīng)用大部分時間花在數(shù)據(jù)計算上。  大多數(shù)的后臺服務(wù)程序都是 IO 密集型的應(yīng)用,網(wǎng)絡(luò) IO 的時候 CPU 等待白白浪費時間, 這就告訴我們 CPU 的潛力還沒有完全發(fā)揮,所以當(dāng)一個進程的處理能力達到上限,我們可以多創(chuàng)建幾個進程,這就是多進程模型。  

多線程
多線程與多進程類似,實際在Linux系統(tǒng)中線程是由輕量級的進程 LWP(Light-weight process)實現(xiàn),多線程方式實現(xiàn)的后臺服務(wù)相對于多進程更加輕量,因為多線程是在同一個進程內(nèi)部實現(xiàn)。  不過多線程也會帶來新的問題,比如全局數(shù)據(jù)競爭和同步問題,引入線程鎖還要防止死鎖的發(fā)生。

協(xié)程
那什么是協(xié)程呢?協(xié)程 Coroutines 是一種比線程更加輕量級的微線程。類比一個進程可以擁有多個線程,一個線程也可以擁有多個協(xié)程,因此協(xié)程又稱微線程和纖程?梢源致缘陌褏f(xié)程理解成子程序調(diào)用,每個子程序都可以在一個單獨的協(xié)程內(nèi)執(zhí)行。

異步回調(diào)
所謂異步回調(diào)就是,服務(wù)端發(fā)起 IO 請求的線程不等網(wǎng)絡(luò) IO 線程操作完成,就繼續(xù)執(zhí)行隨后的代碼,一般請求線程需要先注冊一個回調(diào)函數(shù),當(dāng)IO 完成之后網(wǎng)絡(luò)IO線程通過調(diào)用之前注冊的回調(diào)函數(shù)來通知發(fā)起 IO 請求的線程,這樣發(fā)起請求的線程就不會阻塞住等待結(jié)果,提高了服務(wù)處理性能

二 高性能
按以上服務(wù)模型可以提高服務(wù)本身處理能力,高性能后臺服務(wù)往往還會利用多種技術(shù)、從多個維度優(yōu)化提高性能。比如采用CDN(Content Delivery Network)內(nèi)容分發(fā)網(wǎng)絡(luò),存儲和分發(fā)使用戶就近獲取內(nèi)容,縮短響應(yīng)時間;采用池化技術(shù),避免頻繁的資源分配與回收;采用服務(wù)集群,橫向擴展服務(wù)能力;采用緩存技術(shù),熱點數(shù)據(jù)加入緩存,減少數(shù)據(jù)庫訪問。
1.CND 內(nèi)容分發(fā)技術(shù)
2.池化技術(shù):數(shù)據(jù)庫連接池,線程池
3.集群化
4.技術(shù)

三 高可用
高可用即保證服務(wù)的穩(wěn)定性,不出現(xiàn)重大問題或宕機,常見的解決高可用思路是冗余和負載均衡。冗余的意思就是多部署幾臺服務(wù)器,當(dāng)其中一臺掛掉另外一臺能頂上。通過負載均衡技術(shù)實現(xiàn)對流量的動態(tài)調(diào)配,不至于出現(xiàn)大量流量沖擊某臺機器出現(xiàn)請求不均勻,軟件負載均衡技術(shù)可以通過DNS、Nginx、LVS等技術(shù)實現(xiàn)。這里主要學(xué)習(xí)的技術(shù)有:  
1.負載均衡技術(shù),軟硬件負載均衡
2.限流隔離降級技術(shù)
3.應(yīng)用層容災(zāi),資源隔離熔斷
4.異地多活

三高問題是后端開發(fā)的主流問題,也是作為后端開發(fā)高級工程師必須掌握的問題,要能靈活運用這些技術(shù)解決企業(yè)級項目問題,我們路還很長,與其在迷惘,不如抓緊時間學(xué)習(xí)后端開發(fā)技術(shù),提高我們技術(shù)水平,才是后端程序員最需要做的事情。

您需要登錄后才可以回帖 登錄 | 注冊

本版積分規(guī)則 發(fā)表回復(fù)

  

北京盛拓優(yōu)訊信息技術(shù)有限公司. 版權(quán)所有 京ICP備16024965號-6 北京市公安局海淀分局網(wǎng)監(jiān)中心備案編號:11010802020122 niuxiaotong@pcpop.com 17352615567
未成年舉報專區(qū)
中國互聯(lián)網(wǎng)協(xié)會會員  聯(lián)系我們:huangweiwei@itpub.net
感謝所有關(guān)心和支持過ChinaUnix的朋友們 轉(zhuǎn)載本站內(nèi)容請注明原作者名及出處

清除 Cookies - ChinaUnix - Archiver - WAP - TOP