python寫入redis
DataError: Invalid input of type: ‘dict’. Convert to a bytes, string, int or float first.
DataError: Invalid input of type: ‘dict’. Convert to a bytes, string, int or float first.
Invalid input of type: ‘list’. Convert to a bytes, string, int or float first.
unhashable type: ‘dict’
redis 存dict 方案1
set -> str(v)
get -> eval(v)
方案2
set -> json.dumps(v)
get -> json.loads(v)
keys or scan
scani遊標迭代器
對scan的解釋,參照
scan 0 match user* count 10000(默認10)
返回一個下次開始行數(遊標),和數據key的集合,返回的遊標有點類似使用分頁的offset概念
持久化
修改redis配置文件,開啓RDB
rdbchecksum yes
dbfilename dump.rdb
save 900 1 # 900秒內有至少1個鍵被更改則進行快照
save 300 10 # 300秒內有至少10個鍵被更改則進行快照
save 60 10000 # 60秒內有至少10000個鍵被更改則進行快照
dir ./ 持久化存儲位置
rdbcompression yes 默認開啓數據壓縮
保存重啓redis
也可以通過手動異步執行持久化操作
$ bgsave