• 深入理解 Linux的 I/O 系統(tǒng)

    ↓推薦關(guān)注↓傳統(tǒng)的SystemCallI/O在Linux系統(tǒng)中,傳統(tǒng)的訪(fǎng)問(wèn)方式是通過(guò)write()和read()兩個(gè)系統(tǒng)調(diào)用實(shí)現(xiàn)的,通過(guò)read()函數(shù)讀取文件到到緩存區(qū)中,然后通過(guò)write()方法把緩存中的數(shù)據(jù)輸出到網(wǎng)絡(luò)端口。read(file_fd,?tmp_buf,?le...

  • 深入理解高并發(fā)服務(wù)器性能優(yōu)化

    ↓推薦關(guān)注↓我們現(xiàn)在已經(jīng)搞定了C10K并發(fā)連接問(wèn)題,升級(jí)一下,如何支持千萬(wàn)級(jí)的并發(fā)連接?你可能說(shuō),這不可能。你說(shuō)錯(cuò)了,現(xiàn)在的系統(tǒng)可以支持千萬(wàn)級(jí)的并發(fā)連接,只不過(guò)所使用的那些激進(jìn)的技術(shù),并不為人所熟悉。要了解這是如何做到的,我們得求助于ErrataSecurity的CEORober...

  • Linux文件系統(tǒng)十問(wèn)

    關(guān)于文件系統(tǒng),相信大家都不陌生。身為攻城獅的我們幾乎天天都會(huì)與之打交道,但是細(xì)深剖一下,其中又有多少是我們理解深度不夠的呢。那么讓我們一起來(lái)看一下下面這一組Linux文件系統(tǒng)相關(guān)的問(wèn)題吧:1、機(jī)械磁盤(pán)隨機(jī)讀寫(xiě)時(shí)速度非常慢,操作系統(tǒng)是采用什么技巧來(lái)提高隨機(jī)讀寫(xiě)的性能的?2、touc...

  • 如果讓你來(lái)設(shè)計(jì)網(wǎng)絡(luò),你會(huì)把它弄成啥樣?

    你是一臺(tái)電腦,你的名字叫A很久很久之前,你不與任何其他電腦相連接,孤苦伶仃。直到有一天,你希望與另一臺(tái)電腦B建立通信,于是你們各開(kāi)了一個(gè)網(wǎng)口,用一根網(wǎng)線(xiàn)連接了起來(lái)。用一根網(wǎng)線(xiàn)連接起來(lái)怎么就能"通信"了呢?我可以給你講IO、講中斷、講緩沖區(qū),但這不是研究網(wǎng)絡(luò)時(shí)該關(guān)心的問(wèn)題。如果你糾...

  • 12306 搶票算法被曝光了,居然這么簡(jiǎn)單!

    導(dǎo)讀相信大家應(yīng)該都有搶火車(chē)票的經(jīng)驗(yàn),每年年底,這都是一場(chǎng)盛宴。然而你有沒(méi)有想過(guò)搶火車(chē)票這個(gè)算法是怎么實(shí)現(xiàn)的呢?其實(shí)并沒(méi)有你想的那么難。位運(yùn)算先回顧一下位運(yùn)算:12306搶票算法詳解我們以北京到西安這趟高鐵為例,比如我的路線(xiàn)就是從北京到西安,車(chē)上如果只剩最后一張票了,那么如果有其他...

  • 宇宙第一 IDE 發(fā)布新版了

    ↓推薦關(guān)注↓轉(zhuǎn)自:cnBeta前言VisualStudio2022正式版于發(fā)布。新版本帶有g(shù)o-live許可證,可供生產(chǎn)使用。在VisualStudio2019的基礎(chǔ)上,新版集成開(kāi)發(fā)壞境提供了非常多的改進(jìn),包括對(duì)64位、.NET6和C20的支持,為核心調(diào)試器提供更好的性能,并在實(shí)...

  • 這篇?CPU?Cache,估計(jì)也沒(méi)人看

    ↓推薦關(guān)注↓無(wú)論你寫(xiě)什么樣的代碼都會(huì)交給CPU來(lái)執(zhí)行,所以,如果你想寫(xiě)出性能比較高的代碼,這篇文章中提到的技術(shù)還是值得認(rèn)真學(xué)習(xí)的。另外,千萬(wàn)別覺(jué)得這些東西沒(méi)用,這些東西非常有用,十多年前就是這些知識(shí)在性能調(diào)優(yōu)上幫了我的很多大忙,從而跟很多人拉開(kāi)了差距……基礎(chǔ)知識(shí)首先,我們都知道現(xiàn)...

  • 研究了一波?Android?Native?C ?內(nèi)存泄漏的調(diào)試

    最近在調(diào)試AndroidNative層的內(nèi)存泄漏問(wèn)題,整理了一些筆記,分享一下如何查看內(nèi)存信息?在代碼中打印,開(kāi)啟一個(gè)線(xiàn)程,間隔固定時(shí)間打印出當(dāng)前內(nèi)存信息【有好多種獲取內(nèi)存信息的API,這里只列出其中一種方式,親測(cè)有效】private?void?startMemProfiler(...

  • 糟糕程序員的?20?個(gè)壞習(xí)慣

    今天想聊一聊優(yōu)秀程序員的基本素養(yǎng)。我想你肯定遇到過(guò)這樣一類(lèi)程序員:他們無(wú)論是寫(xiě)代碼,還是寫(xiě)文檔,又或是和別人溝通,都顯得特別專(zhuān)業(yè)。每次遇到這類(lèi)人,我都在想,他們到底是怎么做到的?隨著工作時(shí)間的增長(zhǎng),漸漸地我也總結(jié)出一些經(jīng)驗(yàn),他們身上都保持著一些看似很微小的優(yōu)秀習(xí)慣,但正是因?yàn)檫@些...

  • 為什么空類(lèi)大小是?1

    我們可能都知道,C中空類(lèi)的大小是1。#include?class?EmptyA?{};int?main()?{???????std::cout?

  • 經(jīng)典?|?圖解?Linux?內(nèi)存性能優(yōu)化核心思想

    ↓推薦關(guān)注↓今天分享一篇內(nèi)存性能優(yōu)化的文章,文章用了大量精美的圖深入淺出地分析了Linux內(nèi)核slab性能優(yōu)化的核心思想,slab是Linux內(nèi)核小對(duì)象內(nèi)存分配最重要的算法,文章分析了內(nèi)存分配的各種性能問(wèn)題(在不同的場(chǎng)景下面),并給出了這些問(wèn)題的優(yōu)化方案,這個(gè)對(duì)我們實(shí)現(xiàn)高性能內(nèi)存...

  • 干貨|磁珠該如何選型?

    ▼點(diǎn)擊下方名片,關(guān)注公眾號(hào)▼磁珠的選型重要嗎?先看下磁珠選型現(xiàn)狀:磁珠用得最多的地方,應(yīng)該是串聯(lián)在電源上面,用于電源濾波。只要保證額定電流,DCR引起的壓降滿(mǎn)足要求,再大致看下100Mhz時(shí)的阻抗,基本上就可以了,然后在公司物料庫(kù)里面挑一個(gè),盡量不用新物料。如果按照上述方式,確實(shí)...

  • 又火了一個(gè)百度的神器!

    你以為這些人像發(fā)絲的勾勒是PS做的嗎?NO!這是AI算法的效果!這么好的效果,大家一定好奇是通過(guò)什么AI手段實(shí)現(xiàn)的。經(jīng)過(guò)小編的一番調(diào)研,這項(xiàng)技術(shù)叫做Matting,是指通過(guò)計(jì)算前景的顏色和透明度,將前景從影像中擷取出來(lái),并生成一張Alpha圖的技術(shù)。圖片數(shù)據(jù)引用公開(kāi)數(shù)據(jù)集[1]還...

    小林coding
    2021-11-29
  • 深入理解 Linux I/O 系統(tǒng)

    大家好,我是小林。我在之前的圖解系統(tǒng)寫(xiě)過(guò)LinuxI/O的文章,但是沒(méi)有集中在一起講。今天就跟大家分享一篇,LinuxI/O系統(tǒng)。目錄傳統(tǒng)的SystemCallI/O??讀操作??寫(xiě)操作??網(wǎng)絡(luò)I/O??磁盤(pán)I/O高性能優(yōu)化的I/O存儲(chǔ)設(shè)備的I/O棧I/OBuffering???...

    小林coding
    2021-11-29
    I/O
  • 阿里二面:為什么要分庫(kù)分表?

    前言在高并發(fā)系統(tǒng)當(dāng)中,分庫(kù)分表是必不可少的技術(shù)手段之一,同時(shí)也是BAT等大廠面試時(shí),經(jīng)常考的熱門(mén)考題。你知道我們?yōu)槭裁匆龇謳?kù)分表嗎?這個(gè)問(wèn)題要從兩條線(xiàn)說(shuō)起:垂直方向和水平方向。1垂直方向垂直方向主要針對(duì)的是業(yè)務(wù),下面聊聊業(yè)務(wù)的發(fā)展跟分庫(kù)分表有什么關(guān)系。1.1單庫(kù)在系統(tǒng)初期,業(yè)務(wù)...

發(fā)布文章