新聞中心
隨著互聯(lián)網(wǎng)的發(fā)展,性能的提升和數(shù)據(jù)的存儲優(yōu)化越來越受到重視。Redis作為一種優(yōu)秀的非關(guān)系型數(shù)據(jù)庫,能夠在一定程度上提升性能,緩存頻繁的數(shù)據(jù)訪問,使用戶極速的體驗分頁查詢,非常適合于分頁查詢數(shù)據(jù)的應(yīng)用。

從事成都服務(wù)器托管,服務(wù)器租用,云主機,網(wǎng)頁空間,域名與空間,CDN,網(wǎng)絡(luò)代維等服務(wù)。
將分頁查詢信息存儲在Redis中,可以極大的提升體驗,節(jié)省查詢分頁耗費的時間。一般來說,數(shù)據(jù)庫會都會保存分頁信息(sql語句及結(jié)果),但當(dāng)有大量的查詢時,會嚴(yán)重影響數(shù)據(jù)庫查詢和維護效率,降低系統(tǒng)并行訪問能力,引起性能問題,降低用戶系統(tǒng)體驗。
這時,可以使用redis緩存分頁信息,解決這一問題。Redis的存取效率非常高,其操作的延時較low,使用Redis緩存分頁數(shù)據(jù)不僅能減少數(shù)據(jù)庫的壓力,還能為用戶提供更為流暢的分頁查詢效果。
下面是Redis存儲分頁查詢的實現(xiàn)代碼:
// Redis存儲分頁查詢
public QueryResult cacheQuery(String hql,int pageSize, int pageNo){
String sqlKey = generatorSqlKey(hql, pageSize, pageNo);
String realKey = jedis.get(sqlKey);
if(realKey != null){
String listStr = jedis.hget(realKey, “l(fā)ist”);
int totalCount = Convert.toInt(jedis.hget(realKey, “totalCount”));
QueryResult queryResult = new QueryResult(JSON.parseArray(listStr, Object.class), totalCount, pageSize, pageNo);
return queryResult;
}
QueryResult queryResult = query(hql, pageSize, pageNo);
if(queryResult!=null){
listValue = JSON.toJSONString(queryResult.getList());
jedis.hset(realKey, “l(fā)ist”, listValue);
jedis.hset(realKey, “totalCount”, Convert.toStr(queryResult.getTotalCount()));
jedis.expire(realKey, 3600);
}
return queryResult;
}
通過上面的實現(xiàn)代碼,將分頁數(shù)據(jù)存儲到Redis中,可以把多次的數(shù)據(jù)庫查詢優(yōu)化成一次查詢,只要第一次查詢時間有較高,后續(xù)就能從Redis中獲取查詢結(jié)果,進而避免消耗大量時間,極大的提高了系統(tǒng)效率,為用戶提供極速體驗。
成都創(chuàng)新互聯(lián)科技公司主營:網(wǎng)站設(shè)計、網(wǎng)站建設(shè)、小程序制作、成都軟件開發(fā)、網(wǎng)頁設(shè)計、微信開發(fā)、成都小程序開發(fā)、網(wǎng)站制作、網(wǎng)站開發(fā)等業(yè)務(wù),是專業(yè)的成都做小程序公司、成都網(wǎng)站建設(shè)公司、成都做網(wǎng)站的公司。創(chuàng)新互聯(lián)公司集小程序制作創(chuàng)意,網(wǎng)站制作策劃,畫冊、網(wǎng)頁、VI設(shè)計,網(wǎng)站、軟件、微信、小程序開發(fā)于一體。
網(wǎng)站名稱:極速體驗將分頁查詢存儲在Redis中(分頁查詢放redis)
分享鏈接:http://www.dlmjj.cn/article/djsshhi.html


咨詢
建站咨詢
