原创 Go 自定義error錯誤

原文鏈接: http://www.zhoubotong.site/post/17.htmlGo的error比較靈活.但是自身對error處理的機制有不太好用,我們可以自定義錯誤輸出: 只要所有實現了 Error() 方法的對象都可以, 這裏

原创 Go 數組合並去重和排序

博客原文鏈接:http://www.zhoubotong.site/post/15.html      Sort包實現了四種基本排序算法:插入排序、歸併排序、堆排序和快速排序。 但是這四種排序方法是不公開的,它們只被用於sort包內

原创 Go常用排序算法

原文鏈接:http://zhoubotong.site/post/6.html 常用的排序算法各種語言相同,這裏大致介紹下go的常用排序,廢話不多說,直入正題: 冒泡排序 package main import (

原创 Go 安裝配置golint

原文鏈接:http://zhoubotong.site/post/3.html一. Golint介紹 Golint 是一個源碼檢測工具用於檢測代碼規範 Golint 不同於gofmt, Gofmt用於代碼格式化 Golint會對

原创 使用Charles代理的方法

原文鏈接:http://zhoubotong.site/post/4.html經常我們移動開發經常都需要抓包調試,這裏我用的是Charles,在此記錄下使用心得操作; 基於:Charles v4.x系統: Windows10/mac

原创 golang nsq示例使用介紹

消息隊列廢話不多說了,直切正題吧:直接去https://github.com/nsqio/nsq/releases下載編譯好的執行文件,比如我下載的是nsq-1.2.0.linux-amd64.go1.12.9.tar.gz 直接解壓後(我

原创 git push和pull每次都要輸入密碼

git config --global credential.helper store 使用上述的命令配置好之後,再操作一次git pull,然後它會提示輸入賬號密碼,這一次之後就不需要再次輸入密碼了:

原创 Go處理每分鐘100萬個請求

引用原文 原文鏈接 http://marcio.io/2015/07/handling-1-million-requests-per-minute-with-golang/ 問題描述 直入本文要描述的問題:網站流量上來了,高併發負載是不

原创 GO 使用Webhook 實現github 自動化部署

通常大家開發大部分是本地git push 提交,服務器上git pull 手動更新。git 可以使用webhook實現自動部署。webhook是倉庫平臺的一個鉤子事件,通過hook 鉤子監聽代碼,回調通知(通知地址就是你在各個git倉庫平臺

原创 Docker WARNING! Using --password via the CLI is insecure. Use --password-stdin

好久沒更新博客了,今年整體行業不太樂觀,在朋友的引薦下進了新的東家討口飯吃,難得清靜下來一個週末,好吧,廢話不多說了, 今天更新了windows 的docker客戶端docker-toolbox, 發現原來的docker login -u

原创 GO的方法值和方法表達式用法

手冊上關於這塊的解釋感覺不是很詳細清晰,經過幾個示例自己總結了下這塊的用法。 方法表達式:說簡單點,其實就是方法對象賦值給變量。 這裏有兩種使用方式: 1)方法值:隱式調用, struct實例獲取方法對象 2)  方法表達式:顯示調用, s

原创 Golang 熱編譯rizla 插件

今天在寫gin接口的時候,每次添加或修改個接口都需要重啓項目才能測試,感覺很麻煩。 因爲beego有bee工具,bee run啓動項目fsnotify會監控文件變動,經查發現在iris項目中有個插件支持熱重啓。 使用方法如下: # 安裝r

原创 Go 驗證是否字符串包含中文

發現一個驗證字符串是否包含中文滴時候,一個比正則更好使滴方法,而且是golang 自帶滴驗證。 不需要自己寫正則驗證,代碼如下: package main import ( "fmt" "regexp" "uni

原创 Go get unrecognized import path "gopkg.in/yaml.v2"

安裝gin: go get -u github.com/gin-gonic/gin 出現錯誤: package gopkg.in/yaml.v2: unrecognized import path "gopkg.in/yaml.v2"

原创 Go 修改map slice array元素值

在“range”語句中生成的數據的值其實是集合元素的拷貝。它們不是原有元素的引用。這就意味着更新這些值將不會修改原來的數據。我們來直接看段示例: package main import "fmt" func main() {