簡體   English   中英

使用Go Redis客戶端(Redigo)

[英]using Go redis client (Redigo)

我正在使用GO Redis客戶端Redigo將映像寫入約20個Redis服務器。
速度是這里的一個重要因素,我只是將設置命令發送到Redis,所以我使用Send和Flush而不調用Receive。
幾個小時后,我在客戶端上收到“對等連接重置”。
我想知道,這與我不稱呼接收有關嗎?
也許我的RX隊列剛剛達到最大容量,因為我沒有用Receive清空它?

謝謝。

應用程序必須調用Receive來清除服務器的響應並檢查錯誤。 如果應用程序不是管道命令,則最好調用Do。 合並發送,刷新和接收。

如果您不關心錯誤,請啟動goroutine讀取響應:

go func(c redis.Conn) {
   for c.Err() == nil {
       c.Receive()
   }
}()

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM