原创 海量數據處理面試題總結

教你如何迅速秒殺掉:99%的海量數據處理面試題 本文經過大量細緻的優化後,收錄於我的新書《編程之法》第六章中,新書目前已上架京東/噹噹/亞馬遜     作者:July出處:結構之法算法之道blog:http://blo

原创 進程的調度

進程調度方式     進程調度方式是指當某一處進程正在處理機上執行時,若有某個更爲重要或緊迫的進程需要處理,即有優先權更高的進程進入就緒隊列,此時應如何分配處理機。     通常有以下兩種進程調度方式:     (1)非剝奪調度方式(非搶

原创 stringstream操縱string小總結

1 split字符串   之前在用C#寫代碼的時候,用過split函數,可以把一個字符串根據某個分隔符分成若干個字符串數組。在用C++操縱字符串的時候,我一直使用很笨的遍歷的方法。爲此,我問候過很多次C++

原创 I/O多路複用——select函數與poll函數

1 區別   同:(1)機制類似,本質上沒有多大差別,管理多個描述符也是進行輪詢,根據描述符的狀態進行處理。(2)包含大量文件描述符的數組被整體複製於用戶態和內核的地址空間之間,而不論這些文件描述符是否就緒

原创 SYN Flood應如何應對

1 什麼是SYN Flood攻擊   在TCP三次握手時,服務器接收客戶端的SYN請求,操作系統將爲該請求分配一個TCP(Transmission Control Block),服務器返回一個SYN/ACK

原创 BFS、DFS與選課問題

1選課問題   Leetcode上有這樣一道題:有代號0,1,2……n-1的n門課程。其中選擇某些課程需要另一些課程作爲前提條件。用一組pair來表示這些條件:[1,0],[1,2],表示如果要選修課程1,

原创 Linux的文件權限

1 文件權限的表示   (1)字母表示法   Linux中所有文件(普通文件、目錄文件、字符特殊文件、塊特殊文件、管道或FIFO、符號鏈接、套接字)都有9個權限,如下圖所示:   -rw-rw-r--就是

原创 socket服務器開發中的SO_REUSEADDR選項與讓人心煩的TIME_WAIT

1 發現問題     我在開發一個socket服務器程序並反覆調試的時候,發現了一個讓人無比心煩的情況:每次kill掉該服務器進程並重新啓動的時候,都會出現bind錯誤:error:98,Address a

原创 I/O多路複用——epoll函數

1 select的低效率   select/poll函數效率比較低,主要有以下兩個原因:   (1)調用select函數後需要對所有文件描述符進行循環查找   (2)每次調用select函數時都需要向該函數

原创 【轉】初識CGI

一.基本原理 CGI:通用網關接口(Common Gateway Interface)是一個Web服務器主機提供信息服務的標準接口。通過CGI接口,Web服務器就能夠獲取客戶端提交的信息,轉交給服務器端的C

原创 C++ STL 迭代器失效問題

之前看《C++ Primier》的時候,也解到在順序型窗口裏insert/erase會涉及到迭代器失效的問題,並沒有深究。今天寫程序的時候遇到了這個問題。 1 莫名其妙的Erase     最初我的程序是醬

原创 IPv4中IP地址分類

分三個部分進行講述:   1 五類IP   2 特殊用途的IP   3 私有IP   1 五類IP   IPV4簡單粗暴地把IP地址分爲五類。分類方法如下圖所示: 也就是說,分爲以下幾類: A: 0.0.

原创 面向對象編程要點

1 面向對象與面向過程的本質區別   從思想來講,面向過程強調的是做了一件什麼事情,強調這個過程以及做的方法;而面向對象強調的是對象,也就是誰做了一件事情,這件事情是此對象的一個屬性,使用者只需要知道這個對