Redis數據結構一之對象的介紹及各版本對應實現
本文首發於公眾號:Hunter後端 原文鏈接:Redis數據結構一之對象的介紹及各版本對應實現 本篇筆記開始介紹 Redis 數據結構的底層實現。 當我們被問到 Redis 中有什麼數據結構,或者説數據類型,我們可能會説有字符串、列表、哈希、集合、有序集合。 其實這幾種數據類型在 Redis 中都由對象構成,而且是兩個對象,一個鍵對象,一個值對象。 在這些數據類型中,它們的鍵都是字符串
本文首發於公眾號:Hunter後端 原文鏈接:Redis數據結構一之對象的介紹及各版本對應實現 本篇筆記開始介紹 Redis 數據結構的底層實現。 當我們被問到 Redis 中有什麼數據結構,或者説數據類型,我們可能會説有字符串、列表、哈希、集合、有序集合。 其實這幾種數據類型在 Redis 中都由對象構成,而且是兩個對象,一個鍵對象,一個值對象。 在這些數據類型中,它們的鍵都是字符串
本文首發於公眾號:Hunter後端 原文鏈接:MySQL面試必備一之索引 在面試過程中,會有一些關於 MySQL 索引相關的問題,以下總結了一些: MySQL 的數據存儲使用的是什麼索引結構 B+ 樹的結構是什麼樣子 什麼是複合索引、聚簇索引、覆蓋索引 什麼是最左匹配原則 數據 B+ 樹中是如何查詢的 回表是什麼操作 B+ 樹的查詢有什麼優勢 索引下推是什麼意思 對於上
本文首發於公眾號:Hunter後端 原文鏈接:Python筆記四之協程 協程是一種運行在單線程下的併發編程模型,它的特點是能夠在一個線程內實現多個任務的併發操作,通過在執行任務時主動讓出執行權,讓其他任務繼續執行,從而實現併發。 以下所有的代碼都是在 Python 3.8 版本中運行。 本篇筆記目錄如下: asyncio async await 併發運行協程
本文首發於公眾號:Hunter後端 原文鏈接:LeetCode熱題一之兩數之和 題目 給定一個整數數組 nums 和一個整數目標值 target,請你在該數組中找出和為目標值 target 的那兩個整數,並返回它們的數組下標。 你可以假設每種輸入只會對應一個答案,並且你不能使用兩次相同的元素。 你可以按任意順序返回答案。 題目來源 此題來源於 LeetCode 題庫序號 1。 L
本文首發於公眾號:Hunter後端 原文鏈接:Python筆記三之閉包與裝飾器 這一篇筆記介紹 Python 裏面的裝飾器。 在介紹裝飾器前,首先提出這樣一個需求,我想統計某個函數的執行時間,假設這個函數如下: import time def add(x, y): time.sleep(1) return x + y 想要統計 add 函數的執行時間,可以如何操作,在一般
本文首發於公眾號:Hunter後端 原文鏈接:Golang基礎筆記八之函數 本篇筆記介紹 Golang 裏函數相關的內容,以下是本篇筆記目錄: 函數的定義語法 函數返回值 可變參數函數 匿名函數 閉包 1、函數的定義語法 函數的定義格式如下: func 函數名(參數列表) (返回值列表) { 函數體 } 比如下面是一個兩數相加返回其和的函數: func add(a, b in
本文首發於公眾號:Hunter後端 原文鏈接:Golang基礎筆記三之數組和切片 這一篇筆記介紹 Golang 裏的數組和切片,以下是本篇筆記目錄: 數組定義和初始化 數組屬性和相關操作 切片的創建 切片的長度和容量 切片的擴容 切片操作 1、數組定義與初始化 第一篇筆記的時候介紹過數組的定義與初始化,這裏再介紹一下。 數組是具有固定長度的相同類型元素的序列。 這裏有兩個點
本文首發於公眾號:Hunter後端 原文鏈接:Gin筆記二之gin.Engine和路由設置 這一篇筆記主要介紹 gin.Engine,設置路由等操作,以下是本篇筆記目錄: gin.Default() 和 gin.New() HTTP 方法 路由分組與中間件 1、gin.Default() 和 gin.New() 前面第一篇筆記介紹,創建一個 gin 的路由引擎使用的函數是 gin
本文首發於公眾號:Hunter後端 原文鏈接:Gin筆記一之項目建立與運行 本篇筆記開始介紹 Golang 的 web 框架 Gin 的相關內容。 本系列筆記預計通過四到五篇筆記內容介紹 Gin 框架的核心內容,然後通過一個簡單的示例介紹一個 Gin 項目的目錄結構,然後介紹如何將一個 Gin 項目使用 Docker 打包部署。 此外,還將介紹在 Gin 項目裏連接使用 Redis、Mon