redis 應用場景

2021-10-01 09:14:21 字數 1631 閱讀 4047

redis 應用場景

毫無疑問,redis開創了一種新的資料儲存思路,使用redis,我們不用在面對功能單調的資料庫時,把精力放在如何把大象放進冰箱這樣的問題上,而是利用redis靈活多變的資料結構和資料操作,為不同的大象構建不同的冰箱。希望你喜歡這個比喻。

一、redis常用資料型別

redis最為常用的資料型別主要有以下五種:

//把當前登入人新增到煉表裡

ret = r.lpush(「login:last_login_times」, uid)

//保持鍊錶只有n位

ret = redis.ltrim(「login:last_login_times」, 0, n-1)

//獲得前n個最新登陸的使用者id列表

last_login_list = r.lrange(「login:last_login_times」, 0, n-1)

set book:1:name 」the ruby programming language」

set book:2:name 」ruby on rail」

set book:3:name 」programming erlang」

//tag表使用集合來儲存資料,因為集合擅長求交集、並集

sadd tag:ruby 1

sadd tag:ruby 2

sadd tag:web 2

sadd tag:erlang 3

//即屬於ruby又屬於web的書?

inter_list = redis.sinter(「tag.web」, 「tag:ruby」)

//即屬於ruby,但不屬於web的書?

inter_list = redis.sdiff(「tag.ruby」, 「tag:web」)

//屬於ruby和屬於web的書的合集?

「a_end」

這個命令的意思是在sorted sets中查詢大於15的第乙個值。(+inf在redis中表示正無窮大,15前面的括號表示》15而非》=15)查詢的結果是a_end,由於所有值是按順序排列的,所以可以判定15是在a_start到a_end區間上,也就是說15是在a這個範圍裡。至此大功告成。

9、交集,並集,差集:(set)

//book表儲存book名稱

set book:1:name 」the ruby programming language」

set book:2:name 」ruby on rail」

set book:3:name 」programming erlang」

//tag表使用集合來儲存資料,因為集合擅長求交集、並集

sadd tag:ruby 1

sadd tag:ruby 2

sadd tag:web 2

sadd tag:erlang 3

//即屬於ruby又屬於web的書?

inter_list = redis.sinter(「tag.web」, 「tag:ruby」)

//即屬於ruby,但不屬於web的書?

inter_list = redis.sdiff(「tag.ruby」, 「tag:web」)

//屬於ruby和屬於web的書的合集?

inter_list = redis.sunion(「tag.ruby」, 「tag:web」)

Redis應用場景

redis開創了一種新的資料儲存思路,使用redis,我們不用在面對功能單調的資料庫時,把精力放在如何把大象放進冰箱這樣的問題上,而是利用redis靈活多變的資料結構和資料操作,為不同的大象構建不同的冰箱。redis常用資料型別 redis最為常用的資料型別主要有以下五種 在具體描述這幾種資料型別之...

Redis應用場景

redis開創了一種新的資料儲存思路,使用redis,我們不用在面對功能單調的資料庫時,把精力放在如何把大象放進冰箱這樣的問題上,而是利用redis靈活多變的資料結構和資料操作,為不同的大象構建不同的冰箱。redis常用資料型別 redis最為常用的資料型別主要有以下五種 在具體描述這幾種資料型別之...

Redis應用場景

閱讀 31,232 次 毫無疑問,redis 開創了一種新的資料儲存思路,使用redis,我們不用在面對功能單調的資料庫時,把精力放在如何把大象放進冰箱這樣的問題上,而是利用redis靈活多變的資料結構和資料操作,為不同的大象構建不同的冰箱。希望你喜歡這個比喻。下面是一篇新鮮出爐的文章,其作者是re...