背景
現在公司項目大量使用go語言開發,Redis則是常用的kv數據庫,我們使用aws的Redis托管服務,在項目開發過程中,很多項目組在開發初期選擇了redigo來操作redis, 對於主從版的redis來講不會有任何問題,但是當用戶量增加,需要使用aws redis cluster時,才發現redigo是不支持cluster的。
解決方法
在發現這個問題后,很多項目組改用了go-redis/redis這個庫,而且目前線上運行良好。
追加:
20210326
發現一個問題,當從aws集群中刪除一個分片,程序在重啟之前會有連接到已經被刪除的分片地址的情況,導致timeout
反思
1.在使用一個庫或工具時,要做好調研,如果使用前看過文檔,就能發現redigo不支持cluster的問題
2.不同雲廠商提供的服務也不盡相同,據說阿里雲的redis cluster前面默認給做了處理,使用redigo也沒有問題。