第七色在线视频,2021少妇久久久久久久久久,亚洲欧洲精品成人久久av18,亚洲国产精品特色大片观看完整版,孙宇晨将参加特朗普的晚宴

為了賬號安全,請及時綁定郵箱和手機立即綁定
已解決430363個問題,去搜搜看,總會有你想問的

重新連接外部數(shù)據(jù)庫的好模式是什么?

重新連接外部數(shù)據(jù)庫的好模式是什么?

Go
有只小跳蛙 2021-06-02 21:26:30
當我發(fā)現(xiàn)持久連接關閉時,如何有效地重新連接到外部數(shù)據(jù)庫?如果ExtClient失去連接,它會在 上返回“Broken pipe” err。func ListenForWork(cmdChannel <-chan *WorkCmd) {    for {        cmd, ok := <- cmdChannel        if !ok {            break        }        for { // Retry request until it's OK (`Broken pipe error` might destroy it)            _, err := ExtClient.Request(cmd.Key, cmd.Value)            if err == nil {                break            }        }    }}我怎樣才能通過這種或另一種方法以有效的方式重新連接?也歡迎對此代碼進行任何改進。ExtClient不會自行重新連接并且是一個全局變量。
查看完整描述

2 回答

?
慕姐4208626

TA貢獻1852條經(jīng)驗 獲得超7個贊

假設 ExtClient 有一個 Connect 或 Reconnect 方法。

并且還假設 BrokenPipe 錯誤被導出為一個可以再次匹配的變量。

那么這應該工作 if err == BrokenPipeErr { ExtClient.Connect(args ...SomeType) }

不過,這些假設很多,因此您可能應該告訴我們更多信息,例如您要連接的數(shù)據(jù)庫。您正在使用哪個客戶端庫。以及其他此類信息。


查看完整回答
反對 回復 2021-06-07
  • 2 回答
  • 0 關注
  • 181 瀏覽
慕課專欄
更多

添加回答

舉報

0/150
提交
取消
微信客服

購課補貼
聯(lián)系客服咨詢優(yōu)惠詳情

幫助反饋 APP下載

慕課網(wǎng)APP
您的移動學習伙伴

公眾號

掃描二維碼
關注慕課網(wǎng)微信公眾號