導(dǎo)讀:近年來,云原生化、全用戶態(tài)、軟硬協(xié)同等技術(shù)對KV存儲服務(wù)產(chǎn)生了巨大的影響,上述技術(shù)在極大提升了服務(wù)的性能和降低服務(wù)成本的同時,也對系統(tǒng)的架構(gòu)和實現(xiàn)提出了新的要求。百度在信息流和搜索業(yè)務(wù)中大量使用了KV存儲服務(wù),服務(wù)每天響應(yīng)近千億次各類訪問請求,如何運用上述技術(shù)提升系統(tǒng)的性能...
眾所周知,F(xiàn)PGA兩大巨頭:Xilinx和Altera,前幾天我們分享了如何制作一款Xilinx的下載器:基于FT2232的低成本、開源的XilinxHS-2下載器,最終成品是這樣的。圖片今天我們分享一款基于STM32的AlteraFPGA下載器,3D效果圖:.項目資料這個開源項...
剛?cè)胄校?就是干入行兩年:熟知各種設(shè)計模式,信手拈來入行三年:閱碼無數(shù),心中已無設(shè)計模式入行五年:就是干大家好,我是安醬。今天來跟大家聊聊程序員的能力進階道路。相信許多小伙伴都知道,互聯(lián)網(wǎng)大廠們都是有一套嚴(yán)格的職級系統(tǒng),專門用來評判員工的能力等級以及對應(yīng)的薪資待遇區(qū)間。比如眾所周...
之前我整理過一篇C20新特性的文章全網(wǎng)首發(fā)?。20新特性全在這一張圖里了,里面提到過latch、barrier和semaphore,但是沒有詳細介紹過三者的作用和區(qū)別,這里詳細介紹下。latch這個可能大多數(shù)人都有所了解,這就是我們經(jīng)常會用到的CountDownLatch。用于...
▼點擊下方名片,關(guān)注公眾號▼在編寫單片機程序的時候,由于中斷服務(wù)程序?qū)懙牟缓?,?dǎo)致單片機程序總是跑飛,最后費了好長時間,花了很大功夫才找到問題原因,由此總結(jié)了單片機程序跑飛的三種現(xiàn)象、原因及解決方法。01、數(shù)組越界/溢出現(xiàn)象單片機程序在函數(shù)中運行時,總是在運行到函數(shù)末尾,要跳出函...
??我快被"卷死"了。跳槽到新公司,又趕上了一個超大的項目,精力幾乎被榨干了,后臺好幾個讀者在催更,實屬抱歉!最近我也在調(diào)整狀態(tài)和節(jié)奏,后續(xù)會多利用碎片化時間進行輸出。這次回到大廠做技術(shù)管理,雖然才兩個多月時間,但是輸入的信息量極大,也讓我對于技術(shù)管理和職場發(fā)展多了很多新的認(rèn)識。...
最近,各大互聯(lián)網(wǎng)巨頭在技術(shù)戰(zhàn)略層面,都把云原生列為了主要發(fā)展方向。以阿里巴巴為例,他們技術(shù)老大說,云原生是云計算釋放紅利的最短路徑,是企業(yè)數(shù)字化的最短路徑。如果你問我未來看好哪個方向,我一定毫不猶豫的告訴你,絕對是云原生。你可以去招聘網(wǎng)站上看看,現(xiàn)在云原生工程師、Kubernet...
??大家好,我是小林。愉快的周末又來了,雖然只有一天哈哈。最近我逛博客園的時候,看到一篇10年工作經(jīng)驗的老哥被裁員之后面試高級Java開發(fā)工程師的求職經(jīng)歷!他把自己面試過程中常見的知識也總結(jié)一下,我覺得非常干貨,特此分享給大家,共勉!概述最近換工作,對最近面試的過程進行總結(jié),總結(jié)...
↓推薦關(guān)注↓本文是《C并發(fā)編程》一文的姊妹篇。將著重介紹C11標(biāo)準(zhǔn)引入的內(nèi)存模型。前言在《C并發(fā)編程》一文中,我們已經(jīng)介紹了C11到C17在并發(fā)編程方面的新增API。借助那篇文章中的知識,你應(yīng)該已經(jīng)可以開發(fā)一個完善的C并發(fā)系統(tǒng)。這對絕大部分人來說,是足夠的了。但在一些情況下,我們...
因為要對百萬、千萬、甚至是過億的用戶提供各種網(wǎng)絡(luò)服務(wù),所以在一線互聯(lián)網(wǎng)企業(yè)里面試和晉升后端開發(fā)同學(xué)的其中一個重點要求就是要能支撐高并發(fā),要理解性能開銷,會進行性能優(yōu)化。而很多時候,如果你對Linux底層的理解不深的話,遇到很多線上性能瓶頸你會覺得狗拿刺猬,無從下手。我們今天用圖解...
我們說的ModernC,一般指的是C11及以后的標(biāo)準(zhǔn),從C11開始,ModernC引入了大量的實用的特性,主要是兩大方面,學(xué)習(xí)的時候也可以從這兩大方面學(xué)習(xí):增強或者改善的語法特性;新增的或者改善的STL庫。我們來看幾個具體的案例:案例1:統(tǒng)一的類成員初始化語法與std::init...
大家都知道,在創(chuàng)建一個服務(wù)器程序的時候,需要先listen一下,然后才能接收客戶端的請求。例如下面的這段代碼我們再熟悉不過了。int?main(int?argc,?char?const?*argv[]){?int?fd?=?socket(AF_INET,?SOCK_STREAM,...
↓推薦關(guān)注↓內(nèi)存管理是C最令人切齒痛恨的問題,也是C最有爭議的問題,C高手從中獲得了更好的性能,更大的自由,C菜鳥的收獲則是一遍一遍的檢查代碼和對C的痛恨,但內(nèi)存管理在C中無處不在,內(nèi)存泄漏幾乎在每個C程序中都會發(fā)生,因此要想成為C高手,內(nèi)存管理一關(guān)是必須要過的,除非放棄C,轉(zhuǎn)到...
↓推薦關(guān)注↓以前做過兩年C程序移植工作,從Win32平臺移植到Linux平臺。大約有上百萬行C/C代碼,歷時一年多。在開發(fā)Win32版本時,已經(jīng)強調(diào)了程序的可植性,無奈Win32團隊里對Linux精通的人比較少,很多問題沒有想到,直到后來移植工作開始時,才發(fā)現(xiàn)移植并非像想的那樣簡...
↓推薦關(guān)注↓正則表達式可以說是軟件開發(fā)中最常用的功能之一。本文將以C語言為例,介紹其中的正則表達式相關(guān)知識。前言當(dāng)你想要判斷許多字符串是否符合某個特定格式;當(dāng)你想在一大段文本中查找出所有的日期和時間;當(dāng)你想要修改大量日志中所有的時間格式,在這些情況下,正則表達式都能幫上忙。簡單來...