原创 第三章 存儲與檢索

第二章關注的是將數據錄入數據庫系統的格式,以及檢索出來的機制,這章關注同樣的問題,但是是從數據庫的視角來看:數據庫如何存儲我們的數據,以及如何檢索出我們需要的數據。 書中開篇列舉了一個 使用bash 命令製作的簡單數據庫的例子:

原创 spring bean 的生命週期一覽

我們就從最先執行的setBeanName開始一覽,spring bean 的生命週期 setBeanName 的執行流程 先看一波 debug 棧的截圖 先是registerBeanPostProcessors這個都熟悉,接下來

原创 第二章 數據模型和查詢語言

第二章 數據模型和查詢語言 總結 本章開始介紹了關係型數據庫,非關係型數據庫,圖模型數據。 首先解釋了關係模型和文檔模型是什麼,然後指出了從數據庫模型到應用程序對象模型之間的不匹配(稱爲對象關係不匹配)我們通常使用 ORM 框架來

原创 第一章 可靠性、可擴展性、可維護性

數據系統 首先講述了大多數應用都是數據密集型而非 計算密集型,更多的問題來自於 數據量、數據變更速度,列舉一些通用組件 數據庫系統:存儲數據; 緩存系統:提升讀取速度; 搜索索引:按照關鍵字搜索,以及過濾; 批處理:定期處理大量

原创 Mockito可以做哪些事情

Mockito可以做哪些事情 1.驗證行爲 @Test public void verify_behaviour() { List mock = mock(List.class);

原创 RPC極簡單實現

爲什麼有了HTTP還要使用RPC HTTP是被設計用來在桌面瀏覽器上的 HTTP是無狀態的、每次傳輸都需要攜帶報文頭,會造成一部分額外的網絡開銷 適用於接口不多的情況下,簡單,直接; RPC會有註冊中心,有豐富的監控中心,提供軟負載均衡,

原创 2018-9-21 嗶哩嗶哩筆試編程題

22娘和33娘接到了小電視君的扭蛋任務: 一共有兩臺扭蛋機,編號分別爲扭蛋機2號和扭蛋機3號,22娘使用扭蛋機2號,33娘使用扭蛋機3號。 扭蛋機都不需要投幣,但有一項特殊能力: 扭蛋機2號:如果塞x(x範圍爲>=0正整數)個扭蛋進去,然

原创 一個簡單的seqlist的模板實現

首先是 seqlist.h template <typename T> class seqlist { public: seqlist(int capacity); ~seqlist(); int get_len

原创 std::bind 淺析

首先聲明,並不涉及std::function 的使用,留作下次吧 bind 用來綁定一個函數,包括 全局函數, 普通成員函數, 靜態成員函數, operator函數, 虛函數 但是不包括重載函數,原因是,通過函數名並不知道 因爲無法確定

原创 VS下 調試 Qt程序提示缺少xxx.dll的解決辦法

右鍵 打開屬性頁 ,在鏈接器中 的    附加庫目錄  $(QTDIR)\lib;$(QTDIR)\lib;$(QTDIR)\lib;%(AdditionalLibraryDirectories)  中添加上  $F:\Qt\5.

原创 Linux下多進程避免殭屍進程的方法

首先服務端是這樣的的,使用父進程進行監聽,每當有一個鏈接到來就開啓一個子進程所以程序大概是這個樣子的:#include <unistd.h> #include <sys/types.h> #include

原创 linux中文件操作函數

系統調用 1. open 函數返回一個整數 例如以只讀(O_DRONLY)打開文件,返回值會是一個大於等於3的整數,打開失敗返回-1 標準輸入文件(STDIN_FILENO) 0 從標準輸入讀 read(STDIN_FILEN

原创 求十進制數n的 2至 n-1進制的表達

/*假設數爲num, 進製爲n */ vector<int> transform(int num, int n) {vector<int> list;while (num != 0){int a = num % n;num = num /

原创 一個簡單的多線程下的singleton實現

首先看一個簡單的單線程的單例模式 (1)構造函數私有化 (2)提供一個全局的靜態方法(靜態訪問點) (3)在類中定義一個靜態指針,指向本類的變量 的靜態變量指針 #include<iostream> using namespace st

原创 一個工廠模式的淺析

首先看簡單工廠模式 此模式的職責就是負責創建其他類的的實例,通常是一類對象 如下fruit -> banana     fruit -> apple #include <iostream> using namespace std; cl