
TCP異步框架 Golang 編程風格 Go語言面向對象編程的風格是多用組合,少用繼承,以匿名嵌入的方式實現繼承。 掌握Go語言,要把握一個中心...
設計思路 在linux下實現定時器主要有如下方式 基于鏈表實現定時器 基于排序鏈表實現定時器 基于最小堆實現定時器 基于時間輪實現定時器 在這當...
控制并發有三種種經典的方式,一種是通過channel通知實現并發控制 一種是WaitGroup,另外一種就是Context。 1. 使用最基本通...
在講解InnoDB的MVCC機制之前,我們應該了解MySQL所支持的事務,以及各個事務級別的區別和每一個事務級別所存在的問題。 1. 事務 事務...
互斥鎖 互斥鎖用來保證一段時間內只有一個線程在執行一段代碼。 我們先看下面一段代碼。這是一個讀/寫程序,它們公用一個緩沖區,并且我們假定一個緩沖...
這是守護進程的啟動的代碼 接下來逐個分析 每一個進程都有一組資源限制,可以通過getrlimit和setrlimit函數查詢和更改。 兩個函數返...
計算機與網絡設備要相互通信,雙方就必須基于相同的方法。比如,如何結束通信等規則都需要事先確定。不同的硬件、操作系統之間的通信,所有的這一切都需要...
雖然redis服務是單線程的服務,單步的redis操作是線程安全的,但是當我們在高并發的情況下,需要一系列的redis邏輯操作,而這些操作需要保...
下列情況socket可讀: socket內核接收緩存區中的字節數大于或者等于其低水位標記SO_RCVLOWAT。此時我們可以無阻塞地讀該sock...