為了提高redis連線的訪問效率,我們需要考慮長時間與redis伺服器保持連線,這樣可以隨時在需要時快速獲取命令結果。
接下,我們就要解決與redis的連線的穩定性問題。
為了保證與redis長連線的穩定,我們需要了解針對redis訪問的更多細節以及遇到了哪些異常,這樣就可以做出很多有針對性的處理,提公升穩定性。
這裡給出另一組使用hiredis訪問redis的方法。
1、使用介面
作用:將命令提交到連線上下文
2)介面:int redisgetreply(rediscontext *c, void **reply);
作用:返回請求連線上下文最前面的reply,注意第二個引數型別是reply指標的指標
2、**例項
redisreply *r;
int n=redisgetreply(c,&r);
3、異常狀況分析:
n的可能值:
null : 連線上下文為空
redis_err: 連線上下文出現錯誤
redis_ok : 連線上下文執行命令成功
n為redis_err,c的對應錯誤碼:
redis_err_io: io錯誤
redis_err_eof: 連線錯誤,伺服器已經關閉了連線
redis_err_protocol:協議解析錯誤
redis_err_other: 其他錯誤
風險:
redis命令簡介和hiredis的使用
客戶端第二次訪問資料庫時,直接從redis讀出 客戶端 key string value string 設定乙個鍵值對 string string set key value 通過key得到value get key 同時設定乙個或多個 key value 對 mset key value key ...
記錄發現的乙個hiredis的bug
hiredis是redis官方提供的c客戶端庫。在讀 的過程中,發現了乙個bug,記錄一下。hiredis裡定義了乙個上下文結構 struct rediscontext 如下 deps hiredis hiredis.h 157 context for a connection to redis 1...
hiredis的一些使用心得
最近公司的乙個後台專案使用的cache模組,由於使用的是公司內部開發的一套分布式的系統,系統由於年代比較久遠,也已經沒有人員進行維護了,出了問題便無人懂得如何維護,也沒有相應的文件,便最近想辦法使用乙個新的cache模組進行替換。hiredis的使用方法,在官方頁面有說明,這裡不在贅述,這裡說明一下...