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

當(dāng)前位置:首頁 > 單片機 > C語言編程
[導(dǎo)讀]什么是網(wǎng)絡(luò)編程?用一句話概括,就是對網(wǎng)絡(luò)協(xié)議的落地。?落地,意味著對實戰(zhàn)的要求更高。所以,一些朋友更喜歡用類似Netty這種封裝好的框架——快速,高效。確實,跟開發(fā)細節(jié)相比,我們常常更看重開發(fā)效率。?可日常的項目里,我們也不得不面對極端的網(wǎng)絡(luò)性能考驗。沒人喜歡堵車,但應(yīng)對大量請求時,如果網(wǎng)絡(luò)性能處理不佳,數(shù)據(jù)、業(yè)務(wù)就會面臨大塞車。?舉個正向的例子,之前在綠盟有個信息安全產(chǎn)品,叫黑洞,是當(dāng)時市場上最成功的DDOS過濾設(shè)備。這玩意最大的技術(shù)難點就在于:當(dāng)攻擊報文洪水到達時,每秒要過濾掉幾十萬攻擊請求。在那之前,我從沒想過通過程序代碼,對網(wǎng)絡(luò)報文的處理效率,竟然能達到如此強悍的地步。?早些年尚且如此...

什么是網(wǎng)絡(luò)編程?用一句話概括,就是對網(wǎng)絡(luò)協(xié)議的落地




落地,意味著對實戰(zhàn)的要求更高。所以,一些朋友更喜歡用類似 Netty 這種封裝好的框架——快速,高效。確實,跟開發(fā)細節(jié)相比,我們常常更看重開發(fā)效率。



可日常的項目里,我們也不得不面對極端的網(wǎng)絡(luò)性能考驗。沒人喜歡堵車,但應(yīng)對大量請求時,如果網(wǎng)絡(luò)性能處理不佳,數(shù)據(jù)、業(yè)務(wù)就會面臨大塞車



舉個正向的例子,之前在綠盟有個信息安全產(chǎn)品,叫黑洞,是當(dāng)時市場上最成功的 DDOS 過濾設(shè)備。這玩意最大的技術(shù)難點就在于:當(dāng)攻擊報文洪水到達時,每秒要過濾掉幾十萬攻擊請求。在那之前,我從沒想過通過程序代碼,對網(wǎng)絡(luò)報文的處理效率,竟然能達到如此強悍的地步。



早些年尚且如此,更別提如今的 5G 時代了。用戶大幅度提升的平均網(wǎng)絡(luò)傳輸速度,正對我們提出高性能網(wǎng)絡(luò)編程的要求:不僅要解決諸如提高吞吐量和并發(fā)性等問題,還得處理各種棘手異常,比如保證千萬個連接的正常運行等等。



這些,顯然不是一兩個框架就能搞定的。



可惜的是,我面試過的不少候選人都沒有意識到這點,哪怕他們已經(jīng)工作多年,在網(wǎng)絡(luò)協(xié)議和網(wǎng)絡(luò)編程這塊依舊不是很上心,對其的理解也還停留在一個比較淺的層次上,比如:



? 大家經(jīng)常說的四層、七層,分別指的是什么?


? TCP 三次握手是什么,TIME_WAIT 是怎么發(fā)生的?CLOSE_WAIT 又是什么狀態(tài)?


? Linux 下的 epoll 解決的是什么問題?如何使用 epoll 寫出高性能的網(wǎng)絡(luò)程序?


? 什么是網(wǎng)絡(luò)事件驅(qū)動模型?Reactor 模式又是什么?



其實,無論在面試還是工作中,網(wǎng)絡(luò)性能及優(yōu)化這方面的知識都是非常重要的基本功。在我看來,想做到高性能網(wǎng)絡(luò)編程,下面兩個核心要點永遠都繞不開:



第一,在理解網(wǎng)絡(luò)協(xié)議的基礎(chǔ)上,充分利用操作系統(tǒng)內(nèi)核提供的能力,感知各種網(wǎng)絡(luò) I/O 事件;第二,學(xué)會使用線程處理并發(fā)。抓住這兩點,就抓住了高性能網(wǎng)絡(luò)編程的“七寸”。



分享給你一張網(wǎng)絡(luò)編程的核心知識圖譜,將上述兩個核心會涉及到的知識點都囊括在內(nèi),只要我們仔細梳理、透徹理解這些核心知識點,就能學(xué)以致用地解決工作中的實際問題。




這張圖譜出自盛延敏的《網(wǎng)絡(luò)編程實戰(zhàn)》專欄。其實我覺得他這名字起得太樸素了。要我的話,就叫:高性能網(wǎng)絡(luò)編程,因為整個專欄都是圍繞「高性能」展開的。



但話又說回來,高性能就建立在那些實打?qū)嵉慕?jīng)驗基礎(chǔ)上,所以現(xiàn)在這個也算簡潔有力。內(nèi)容同樣是單刀直入展開,比如在講解某個理論或算法時,與代碼、實驗相關(guān)聯(lián),分析它提出的目的、解決了哪些問題。



說白了,就是從解決實際問題的角度切入,講解知識點,讓你透徹理解協(xié)議、API 和代碼。學(xué)完就能用得上,這點挺不錯的,值得推薦給你。






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