線程池可以說是 Java 進階必備的知識點了,也是面試中必備的考點,可能不少人看了這篇文章后能對線程池工作原理說上一二,但這還遠遠不夠,如果碰到比較有經(jīng)驗的面試官再繼續(xù)追問,很可能會被吊打。
最近,某團外賣被爆出大數(shù)據(jù)殺熟,所謂的大數(shù)據(jù)殺熟指的是平臺利用戶的數(shù)據(jù),分析你是否是錢多的人,或者是否是不糾結(jié)價格的人,如果是,那么你買同樣的物品會比普通用戶貴一點,一般這種沒有特地去對比價格是很難發(fā)現(xiàn)的,所以平臺就利用了這點額外賺一些錢。說來很可笑,我們作為平臺的資深用戶,竟然被平臺背后偷偷撈一筆。不過,大數(shù)據(jù)殺熟早已是屢見不鮮的事情了,事實上,幾乎所有大平臺都存在這種現(xiàn)象,沒辦法,這就是真實的互聯(lián)網(wǎng)。
Linux 網(wǎng)絡協(xié)議棧是根據(jù) TCP/IP 模型來實現(xiàn)的,TCP/IP 模型由應用層、傳輸層、網(wǎng)絡層和網(wǎng)絡接口層,共四層組成,每一層都有各自的職責。
為了使得多種設備能通過網(wǎng)絡相互通信,和為了解決各種不同設備在網(wǎng)絡互聯(lián)中的兼容性問題,國際標標準化組織制定了開放式系統(tǒng)互聯(lián)通信參考模型(pen System Interconnection Reference Model),也就是OSI網(wǎng)絡模型,該模型主要有7層,分別是應用層、表示層、會話層、傳輸層、網(wǎng)絡層、數(shù)據(jù)鏈路層以及物理層。
今天,我們來思考幾個問題:為什么負數(shù)要用補碼表示? 十進制小數(shù)怎么轉(zhuǎn)成二進制? 計算機是怎么存小數(shù)的? 0.1 + 0.2 == 0.3 嗎? …
通過本文,你將會了解到:IO事件和IO復用、線程模型和事件驅(qū)動模型的架構(gòu)、基于事件驅(qū)動的Reactor模式詳解、同步IO和異步IO簡介。
去年換工作的時候,面試了一下 Google (這里說的是 Google 中國),來了個 Google 面試七輪游,結(jié)果是沒通過?,F(xiàn)在分享下我參與面試的具體流程以及個人認為應該注意的事項,希望對大家有所幫助。
不管是后端開發(fā)還是前端開發(fā),說到底我們所有的軟件開發(fā)都是在計算上編寫程序,雖然對于大部分人來說,真正開始寫代碼的時候很少會讓你去解決計算機底層的問題,不接觸不代表不重要,計算機基礎是最重要的。
進程是程序的一次執(zhí)行,是系統(tǒng)進行資源分配和調(diào)度的獨立單位,他的作用是是程序能夠并發(fā)執(zhí)行提高資源利用率和吞吐率。
昨天,有個女孩子問我提高數(shù)據(jù)庫查詢性能有什么立竿見影的好方法?這簡直是一道送分題,我自豪且略帶鄙夷的說,當然是加「索引」了。她又不緊不慢的問,索引為什么就能提高查詢性能。這還用問,索引就像一本書的目錄,用目錄查當然很快。她失望地搖了搖頭,你說的只是一個類比,可為什么通過目錄就能提高查詢速度呢。
我們知道,現(xiàn)代CPU都是多核處理器。由于cpu核心(Kernel)讀取內(nèi)存數(shù)據(jù)較慢,于是就有了緩存的概念。我們希望針對頻繁讀寫的某個內(nèi)存變量,提升本核心的訪問速率。因此我們會給每個核心設計緩存區(qū)(Cache),緩存該變量。由于緩存硬件的讀寫速度比內(nèi)存快,所以通過這種方式可以提升變量訪問速度。
twtw
289117336
Tronlong創(chuàng)龍
大有可為
xingnan123
xiaoguaixh
liqinglong1023