原创 MYSQL分佈式事物案例

func tx() { tx := settle.Orm() trans := settle.OrderTrans{} // 啓動協調器 settle.OrderTransandler.Insert(nil,

原创 分佈式唯一id(uuid,雪花算法對比)

UUID UUID總長度 36,由 32 個 16 進制字符和 4 個連字符組成。連字符僅用於增加可讀性,實際的精度爲一個 16 進制字符爲 2^4=4bit,32 個則爲 32*4bit=128bit。UUID具有多個版本,每個版本的算法

原创 常用查詢語句

查詢截止到每個月總開票量(使用了變量) select @count_m:=0; select t_time as '時間', @count_m:=total+@count_m as '開票量' from (SELECT DATE_FO

原创 golang雪花算法SnowFlake解決時間回撥問題

package main import ( "errors" "fmt" "sync" "time" ) const ( workerBits uint8 = 10 // 每臺機器(節點)的id位

原创 通過位運算實現最大值最小值

package main import ( "fmt" "math" ) func main() { var max int = 1<<63 - 1 min := ^max fmt.Printf(

原创 解決前端js暴露加密邏輯問題

首先加密邏輯是js寫的是肯定會暴露的,但是我們的祕鑰可以用登錄態的方式返回。用戶登錄成功之後根據每個用戶的唯一屬性,如id,或者用戶名去生成一個祕鑰,用這個祕鑰去加解密。

原创 go學習資源

書 《The Garbage Collection Handbook》 《深入理解linux網絡技術內幕》 《redis設計與實現》 《Linux內核設計與實現》 網站 go夜讀(源碼學習)

原创 登記

姓名 性別 年齡 身份證號碼 居住地址 劉國強 男 25 51052119950823073X 上海市楊浦區同濟欣苑政立路817弄3號樓602室A 聯繫電話 何處返滬 返滬時間 返滬方式 186216878

原创 golang檢測ip,port

package main import ( "fmt" "net" "os/exec" "strconv" "strings" ) func main() { err := CheckP

原创 github上fork別人的代碼之後,保持和原作者同步的更新

查看git已經有的源分支 git remote -v 結果如下: origin https://github.com/weblazy/utils.git (fetch) origin https://github.com/webl

原创 mac封裝shell命令自動補全complete

complete 補全行爲選項 命令名[4] 1.-F:執行指定函數名,候選結果保存在 COMPREPLY 數組變量裏,補全功能更強大,可以實現命令參數補全,函數名在 /etc/bash_completion定義的。 complete -F

原创 cgroup

簡介 CGroup 提供了一個 CGroup 虛擬文件系統,作爲進行分組管理和各子系統設置的用戶接口。要使用 CGroup,必須掛載 CGroup 文件系統。這時通過掛載選項指定使用哪個子系統 安裝 yum install libcgrou

原创 golang實現一致性hash

package main //一致性哈希(Consistent Hashing) //author: Xiong Chuan Liang //date: 2015-2-20 import ( "fmt" "hash/cr

原创 golang限流

1.channel限流 package main import ( "errors" "fmt" "time" ) type ( Limiter struct { maxCount int

原创 golang200行實現連接池

package main import ( "errors" "fmt" "net" "os" "sync" "time" ) type ( Config struct {