go語言中連線kafka使用第三方庫: github.com/shopify/sarama。
go get github.com/shopify/sarama
sarama v1.20之後的版本加入了zstd壓縮演算法,需要用到cgo,在windows平台編譯時會提示類似如下錯誤:
所以在windows平台請使用v1.19版本的sarama。(如果不會版本控制請檢視部落格裡面的go module章節)
)// 基於sarama第三方庫開發的kafka client
func
main()
msg.topic =
"web_log"
msg.value = sarama.
stringencoder
("this is a test log"
)// 連線kafka
client, err := sarama.
newsyncproducer([
]string
, config)
if err !=
nildefer client.
close()
// 傳送訊息
)// 根據topic取到所有的分割槽
if err !=
nil fmt.
println
(partitionlist)
for partition :=
range partitionlist
defer pc.
asyncclose()
// 非同步從每個分割槽消費資訊
gofunc
(sarama.partitionconsumer)
}(pc)
`在這裡插入**片`
}}
Go語言基礎(十六) Go語言檔案操作
package main import fmt os bufio io ioutil 錯誤處理方法 func handle why string,e error func main handle 檔案讀取失敗!err fmt.println str fmt.println 檔案讀取完畢!讀檔案方式二...
Go語言操作MySQL
go語言安裝mysql資料庫驅動步驟 安裝驅動 go get github.com go sql driver mysql檢測安裝是否成功 sudo find name go sql driver 進入mysql目錄。ls l wc l一共32個檔案 匯入mysql資料庫驅動import 測試連線資...
Go語言檔案操作
檔案的開啟和關閉 os.open 函式能夠開啟乙個檔案,返回乙個 file和乙個err。對得到的檔案例項呼叫close 方法能夠關閉檔案。為了防止檔案忘記關閉,我們通常使用defer註冊檔案關閉語句。讀取檔案 file.read read方法定義如下 func f file read b byte ...