今天給大家講講衡量網(wǎng)絡(luò)性能的四大指標(biāo):帶寬、時(shí)延、抖動(dòng)、丟包。如何客戶需要我們?nèi)ピu估一個(gè)網(wǎng)絡(luò)的性能,我們就可以從這四方面去進(jìn)行評估。帶寬1、帶寬概念:帶寬在百度百科中定義:在單位時(shí)間內(nèi)從網(wǎng)絡(luò)中的某一點(diǎn)到另一點(diǎn)所能通過的“最高數(shù)據(jù)率”。計(jì)算機(jī)網(wǎng)絡(luò)的帶寬是指網(wǎng)絡(luò)可通過的最高數(shù)據(jù)率,即...
↓推薦關(guān)注↓前言測試是軟件開發(fā)過程中一個(gè)必須的環(huán)節(jié),測試確保軟件的質(zhì)量符合預(yù)期。對于工程師自己來說,單元測試也是提升自信心的一種方式。直接交付沒有經(jīng)過測試的代碼是不太好的,因?yàn)檫@很可能會浪費(fèi)整個(gè)團(tuán)隊(duì)的時(shí)間,在一些原本早期就可以發(fā)現(xiàn)的問題上。而單元測試,就是發(fā)現(xiàn)問題一個(gè)很重要的環(huán)節(jié)...
在我們?nèi)粘9ぷ髦?,為了?yàn)證開發(fā)的功能,比如:文件上傳功能或者算法的處理效率等,經(jīng)常需要一些大文件進(jìn)行測試,有時(shí)在四處找了一頓之后,發(fā)現(xiàn)竟然沒有一個(gè)合適的,雖然Linux中也有一些命令比如:vim、touch等可以創(chuàng)建文件,但是如果需要一個(gè)100G或者1T的大文件,這些命令就顯得力...
鎖是一個(gè)常見的同步概念,我們都聽說過加鎖(lock)或者解鎖(unlock),當(dāng)然學(xué)術(shù)一點(diǎn)的說法是獲?。╝cquire)和釋放(release)。恰好pthread包含這幾種鎖的API,而C11只包含其中的部分。接下來我主要通過pthread的API來展開本文。mutex(互斥量...
之前整理過一篇C20新特性的文章全網(wǎng)首發(fā)!!C20新特性全在這一張圖里了,里面提到過latch、barrier和semaphore,但是沒有詳細(xì)介紹過三者的作用和區(qū)別,這里詳細(xì)介紹下。latch這個(gè)可能大多數(shù)人都有所了解,這就是我們經(jīng)常會用到的CountDownLatch。用于使...
↓推薦關(guān)注↓轉(zhuǎn)自:量子位?公眾號(QbitAI)程序bug也能負(fù)負(fù)得正嗎?還真可以。比如程序員們再熟悉不過的排序算法,通過兩個(gè)“bug”居然能歪打正著,實(shí)在令人匪夷所思。請看這位程序員寫的數(shù)組升序排序代碼:for?i?=?1?to?n?do??for?j?=?1?to?n?do?...
↓推薦關(guān)注↓文章目錄一、QUIC如何解決TCP的隊(duì)頭阻塞問題?1.1TCP為何會有隊(duì)頭阻塞問題1.2QUIC如何解決隊(duì)頭阻塞問題1.3QUIC沒有隊(duì)頭阻塞的多路復(fù)用二、QUIC如何優(yōu)化TCP的連接管理機(jī)制?2.1TCP連接的本質(zhì)是什么2.2QUIC如何減少TCP建立連接的開銷2....
↓推薦關(guān)注↓1.線程池原理我們使用線程的時(shí)候就去創(chuàng)建一個(gè)線程,這樣實(shí)現(xiàn)起來非常簡便,但是就會有一個(gè)問題:如果并發(fā)的線程數(shù)量很多,并且每個(gè)線程都是執(zhí)行一個(gè)時(shí)間很短的任務(wù)就結(jié)束了,這樣頻繁創(chuàng)建線程就會大大降低系統(tǒng)的效率,因?yàn)轭l繁創(chuàng)建線程和銷毀線程需要時(shí)間。那么有沒有一種辦法使得線程可...
↓推薦關(guān)注↓大家好,今天給大家分享一篇關(guān)于Cache的硬核的技術(shù)文,基本上關(guān)于Cache的所有知識點(diǎn)都可以在這篇文章里看到。關(guān)于Cache這方面內(nèi)容圖比較多,不想自己畫了,所以圖都來自《ComputerArchitecture:AQuantitativeApproach》。這是一...
緣起近期排查了一個(gè)問題,epoll驚群的問題,起初我并不認(rèn)為這是驚群導(dǎo)致,因?yàn)閺默F(xiàn)象上看,只是體現(xiàn)了CPU不均衡。一共fork了20個(gè)Server進(jìn)程,在請求負(fù)載中等的時(shí)候,有三四個(gè)Server進(jìn)程呈現(xiàn)出比較高的CPU利用率,其余的Server進(jìn)程的CPU利用率都是非常低。中斷,...
〇、本文寫作背景大約2年前,在騰訊內(nèi)網(wǎng),筆者和很多同事討論了GPU虛擬化的現(xiàn)狀和問題。從那以后,出現(xiàn)了一些新的研究方向,并且,有些業(yè)界變化,可能會徹底顛覆掉原來的一些論斷。但這里并不是要重新介紹完整的GPU虛擬化的方案譜系。而是,我們將聚焦在英偉達(dá)GPUCUDA計(jì)算領(lǐng)域,介紹下我...
眾所周知,C并不是一種流行的Web開發(fā)語言,究其原因有很多:語言門檻高、使用難度大、開發(fā)效率低......話雖如此,但隨著Emscripten的成熟,未來C在Web方面會發(fā)揮更大的潛能,尤其是游戲、3D應(yīng)用等方面。有關(guān)CWeb相關(guān)的框架有不少,下面進(jìn)行了簡單的整理,并按照“Sta...
說起Web開發(fā),大多數(shù)人會想到Java、Python、Golang...?因?yàn)樗鼈兊闹髁鱓eb框架有很多,Java有非常知名的Spring全家桶,Python有大而全的Django、小而精的Flask、高性能的Tornado,Golang也有快速靈活的Gin、Echo等框架。相比...
當(dāng)我每了解一個(gè)新技術(shù)或者新框架的時(shí)候,我都想要先把名字概念弄懂是什么,可見概念對于我們的幫助非常大。計(jì)算機(jī)網(wǎng)絡(luò)中的概念也是非常龐雜,理解起來比較困難,所以這里,我給大家匯總了計(jì)算機(jī)網(wǎng)絡(luò)中89個(gè)常見的概念,希望對你有所幫助。主機(jī):計(jì)算機(jī)網(wǎng)絡(luò)上任何一種能夠連接網(wǎng)絡(luò)的設(shè)備都被稱為主機(jī)或...
↓推薦關(guān)注↓std::set/std::map(以下用std::map代表)是常用的關(guān)聯(lián)式容器,也是ADT(抽象數(shù)據(jù)類型)。也就是說,其接口(不是OO意義下的interface)不僅規(guī)定了操作的功能,還規(guī)定了操作的復(fù)雜度(代價(jià)/cost)。例如set::insert(iterat...