redis實現分頁

2021-09-25 15:00:22 字數 861 閱讀 9459

使用有序集合zadd

使用hash儲存具體的資料

取資料通過有序集合的zrevrange—倒敘 zrange—正序

比如,現在我們要對新聞表news做查詢分頁,我們按照新聞新增時間add_time正序或者倒敘排列

// 新增資料

// $redis redis例項 不多說

// $add_time 文章新增時間

// $id 文章id

// $news 文章內容

// 如果想根據文章id排序,第二個引數也用$id即可

$redis->zadd('news', $add_time, $id);

$redis->hmset('news:id:' . $id , $news);

// 分頁處理

// $page 頁碼

// $pagenumber 一頁展示條數

$start = ($page - 1) * $pagenumber;

$end = $start + $pagenumber -1;

$data = $redis->zrange('news', $start, $end);//zrevrange

$total = $redis->zcard('news');// 總條數

$list = array();

foreach($data as $key => $value)

$result['total'] = $total;

$result['list'] = $pagelist;

$result['pagenumber'] = $pagenumber;

$result['page'] = $page;

利用redis實現分頁和型別切換

場景 資料表結構如下 create table cityarea id int 11 notnull auto increment name varchar 50 not null phone varchar 30 not null city id int 11 notnull area id in...

php利用redis實現分頁列表,新增,刪除功能

在開發中經常遇到主頁面大量資料載入,同時又不會經常改變的資料,每次從資料庫裡取資料對資料庫的負荷非常大,然而將其放入到快取內可以有效減輕資料庫壓力,提公升頁面載入速度。1.基本連線方式實現 use redis 引入redis類 this redis redis connection email 連線...

redis快取分頁思路

傳統分頁 一般分頁做快取都是直接查詢出來,按頁放到快取裡,但是這種快取方式有很多缺點。如快取不能及時更新,一旦資料有變化,所有的之前的分頁快取都失效了。比如像微博這樣的場景,微博下面現在有乙個頂次數的排序。這個用傳統的分頁方式很難應對。redis快取分頁 1.資料以id為key快取到redis裡 2...