原创 centos7 yum 安裝最新版本 docker

安裝docker的過程 使用命令 uname -a 檢查 linux 內核版本是否大於 3.8 [vagrant@centos7 ~]$ uname -a Linux centos7 3.10.0-957.12.2.el7.x

原创 基於 Gin 的會議室預約 API 設計 (一)

基於 Gin 的會議室預約 API 設計 基本功能設計 設計分爲手機mobile端和電腦pc端 在會議室張貼二維碼,手機掃描二維碼即可加入手機預定頁面 手機端只能進行會議室的預約和查看個人預約情況 電腦端即可以預約,也可以登陸管

原创 淺談 Mysql 事務 由 ACID 到 MVCC

最近公司的技術分享一直在分享 mysql 事務,隔離級別,鎖和 MVCC 方面的知識,但是都是基於單個點進行分析,沒有一步一步來闡述,所以在這裏我整理了一下 mysql 由 ACID 到 MVCC 這一塊的知識準備分享給大家。

原创 基於 Gin 的會議室預約 API 設計 (二)

會議室預約功能模塊大概可以分爲三大部分 預約模塊 黑名單模塊 日誌模塊 預約模塊 請求佔用時間表,驗證請求時間是否被佔用,沒有則進行第2步,有則返回失敗 創建預約,並將請求寫入操作日誌 向佔用時間表插入數據 假設用戶選中

原创 Go 語言實現堆排序與快速排序

堆排序 package main import "fmt" func buildHeap(arr []int) { length := len(arr) for i := length/2 - 1; i >= 0;

原创 Go 指針聲明後賦值,出現 panic: runtime error: invalid memory address or nil pointer dereference

指針基礎知識 package main import "fmt" func main() { var p *int p = new(int) *p = 1 fmt.Println(p, &p, *p) } 輸出 0x

原创 Go struct 類型的 map 結構體成員不能修改的問題

錯誤示例 剛剛上手,我們都會習慣性的向下面這樣賦值 ,示例如下 package main import "fmt" type person struct { name string age int sex str

原创 mysql 驗證出 bug 的經歷

本人之前做了一個簡單的會議預約系統 邏輯非常的簡單 建立用戶佔用時間表 used_time 和會議預約表 meeting_books 規定會議時間以半小時爲單位,最長不得超過兩個小時 用戶每預定一個時間我就會向佔用時間表裏插入時

原创 centos8 安裝 flink 並測試 wordcount

開發環境和所需軟件 centos 8 java flink 安裝 flink 我們選擇安裝的是 flink 目前的最新版本 1.9 版本 , 安裝前請保證 java 已經正常安裝 檢查 java 是否安裝 [vagrant

原创 Restful API 請注意 HTTP 動詞描述操作的冪等性

冪等性是一個老生常談的話題,但是往往容易被大家忽略 面試時當問到 POST 請求和 GET 請求有什麼區別的時候,很多人往往可以巴拉巴拉說一大堆,但是往往容易忘記了在 Restful API 中 GET是冪等的而 POST 不是

原创 go 封裝 ActiveMq,並實現 topic 和 queue 的生產和消費

go 封裝 ActiveMq,並實現 topic 和 queue 的生產和消費 需要了解的基礎知識 總所周知 activemq 有兩種消息傳遞類型分別爲 queue Point-to-Point,點對點通信模型,即一個生產者對

原创 centos8 安裝 kafka 並使用 supervisor 守護 kafka 進程

首先我們需要的軟件機環境如下 centos 8 java kafka supervisor 首先我們需要先下載 java ,因爲 kafka 運行需要 jdk 環境,其次我們需要下載 kafka 的二進制包,最後安裝super

原创 使用 Vagrant 打包並運行本地開發環境

使用工具 Virtualbox 免費開源的虛擬機軟件,使用它可以快速生成虛擬機 Vagrant 基於Ruby的工具,用於創建和部署虛擬化開發環境 Git 使用Git for Windows 來作命令行工具 打包虛擬機 使用

原创 centos7 安裝 kafka 2.3.0 並配置集羣

安裝 kafka 安裝 java 11,爲了方便選擇yum安裝 sudo yum -y install java-11-openjdk* 下載 Kafka ,在官網選擇下載時請選擇二進制下載 wget http://

原创 使用 Vagrant 和 Virtualbox 快速搭建服務器集羣

使用工具 Virtualbox 免費開源的虛擬機軟件,使用它可以快速生成虛擬機 Vagrant 基於Ruby的工具,用於創建和部署虛擬化開發環境 Git 使用Git for Windows 來作命令行工具 Centos 服務器集