什么是網(wǎng)絡(luò)編程?一句話來說,對網(wǎng)絡(luò)協(xié)議的落地
2021-10-31
什么是網(wǎng)絡(luò)編程?總之,網(wǎng)絡(luò)編程就是網(wǎng)絡(luò)協(xié)議的落地。
落地意味著網(wǎng)絡(luò)編程對實戰(zhàn)的要求更高,也正因為如此,很多程序員更傾向于使用類似的封裝框架,快速高效。
既然如此,何必去學(xué)習(xí)網(wǎng)絡(luò)編程呢?
的確,在某些情況下,開發(fā)效率比開發(fā)細節(jié)更重要。但是高性能網(wǎng)絡(luò)編程呢?
這就像蓋房子一樣。當(dāng)我們只需要建造一個小洋房時,對地基的深度和材料的要求并沒有那么高,但是如果是建造高層建筑,那么小洋房的地基條件顯然不能滿足我們的要求。需要。
同樣,高性能網(wǎng)絡(luò)編程也不同于普通的開發(fā)。高性能意味著工作中的設(shè)計可以輕松達到臨界點。這時候,我們不僅要想辦法擴展邊界,比如提高吞吐量和并發(fā)網(wǎng)絡(luò)編程技術(shù) 課程設(shè)計要求,還要解決臨界點下的各種棘手的異常問題,比如如何保證千萬連接的正常運行?
這時候網(wǎng)絡(luò)編程技術(shù) 課程設(shè)計要求,不僅僅是框架的使用。我們應(yīng)該從底層原理入手,真正理解高性能問題。這些問題很大程度上依賴于多年的實戰(zhàn)。只有這樣,才能總結(jié)出系統(tǒng)的方法論和經(jīng)驗。
盛彥民,本科和博士,就讀于中國科學(xué)技術(shù)大學(xué)。2000年初,他開始接觸ACE等網(wǎng)絡(luò)編程技術(shù)。畢業(yè)后加入IBM,開發(fā)應(yīng)用服務(wù)器和云平臺。之后擔(dān)任大眾點評云平臺首席架構(gòu)師,主持和推動大眾點評私有云平臺建設(shè)。目前在螞蟻金服從事云計算領(lǐng)域的架構(gòu)和開發(fā)。
他將結(jié)合自己多年的實踐經(jīng)驗,從網(wǎng)絡(luò)編程的底層原理出發(fā),一步步聚焦高性能編程,從原理層面教你解決實際工作中可能遇到的各種性能問題,并在最后動手教你搭建好用的高性能框架。
基本課程要求
專欄使用C/C++語言講解,需要能夠理解基本的C/C++語法。
手稿代碼鏈接
手稿中有很多代碼,請查看完整版。
立柱模塊
欄目分為4個模塊,專門設(shè)計了一個“期中周”。
基本
從基礎(chǔ)入手,通過生動的比喻,讓你了解三向握手、緩沖區(qū)等底層原理,構(gòu)建全面的知識體系,為后續(xù)學(xué)習(xí)打下基礎(chǔ)。
改進文章
在網(wǎng)絡(luò)編程中,異常問題與性能密切相關(guān)。尤其是在高性能條件下,出現(xiàn)異常問題的概率會大大增加。本模塊重點介紹異常信息,教你提高程序的健壯性。
中期
為了提升你的實戰(zhàn)能力,在基礎(chǔ)篇和改進篇的基礎(chǔ)上,設(shè)置了為期一周的動手項目。在老師的指導(dǎo)下,您可以自己編寫一個可用的互連程序,以加深您對網(wǎng)絡(luò)編程的理解。
表現(xiàn)
能否解決程序的性能問題,是衡量水平的重要標(biāo)準(zhǔn)。本模塊重點關(guān)注工作中常見的性能問題,帶你處理高性能網(wǎng)絡(luò)編程所需的I/O、線程、進程等技術(shù),提升編程能力。
實用篇
除了學(xué)習(xí)使用輪子,制作輪子也是學(xué)習(xí)能力的重要體現(xiàn)。本模塊將結(jié)合上述技術(shù),教你搭建一個高性能的網(wǎng)絡(luò)程序。