![redis頁面緩存html,使用redis實現(xiàn)頁面緩存_第1頁](http://file4.renrendoc.com/view/f3f5de39fffcf3814a517423318fa6b8/f3f5de39fffcf3814a517423318fa6b81.gif)
![redis頁面緩存html,使用redis實現(xiàn)頁面緩存_第2頁](http://file4.renrendoc.com/view/f3f5de39fffcf3814a517423318fa6b8/f3f5de39fffcf3814a517423318fa6b82.gif)
![redis頁面緩存html,使用redis實現(xiàn)頁面緩存_第3頁](http://file4.renrendoc.com/view/f3f5de39fffcf3814a517423318fa6b8/f3f5de39fffcf3814a517423318fa6b83.gif)
下載本文檔
版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領
文檔簡介
1、redis頁面緩存html,使用redis實現(xiàn)頁面緩存本文是 一書第二章的讀書筆記設計方案第一個域,是zset類型的key是viewed:userSessionid存放的是商品id與用戶查看此商品時的timestamp第二個域,是zset類型的可以是viewed:member是商品id(全局范圍內),score是商品被用戶(全局范圍內)瀏覽的次數(shù)(是負數(shù))第三個域,是hash類型的- key是item:itemld存放的是商品的信息用戶查看了某件商品public void viewitem (Jed is conn, String token, String user, String item
2、)long timestamp = System.currentTimeMillis() / 1000;if (item != null) 用戶user在某時瀏覽了某件商品conn.zadd(viewed: + token, timestamp, item);只記錄用戶最近查看的25件商品conn.zremrangeByRank(viewed: + token, 0, -26);有序set里score的越小排名越靠前conn.zincrbyCviewed:, -1, item);/-15il?)試著緩存這個頁面首先我們要判斷某個url是否能緩存/*如果request不符合規(guī)范就不緩存返回fal
3、se如果商品還沒有被訪問過自然不能緩存返回false如果商品被訪問過但是訪問的排名在10000之后也就不緩存了返回false如果商品被訪問過且訪問的排名在10000之內就說明可以緩存返回trueparam connparam request“returnVpublic boolean canCache(Jedis conn, String request) 這樣的字符串中獲得paramter代碼就不贅述了Map params = getParams(request);if (params = = null)return false;獲得itemX這個信息String itemld = extr
4、actltemld(params);/params.containsKey(_)這個條件只是示例/ffl戶可以加上自己的判別條件if (itemld = null | params.containsKey(_)return false;)“viewed:這個有序集里存放的是商品的訪問次數(shù)Long rank = conn.zrankCviewed:, itemld);/查看這個商品的訪問量是否在前10000內如果rank二二null說明商品還沒有被訪問過return rank != null & rank getMostPopulate(Jedis conn, int page)int star
5、t 二(1) * ARTICLES_PER_PAGE;intend = start + ARTICLES_PER_ 1;Set ids 二 conn.zrevrange(viewed:z start, end);List items = new ArrayList();for (String id : ids)Map itemData = conn.hgetAII(id);itemData.put(idz id);items.add(itemData);)return items;)在viewitem里,我們已經(jīng)記錄了所有商品的瀏覽次數(shù)(負數(shù))conn.zincrby(viewed:; lz
6、item);那么經(jīng)過n天后,這個viewed里的數(shù)據(jù)項就很多了,而且其實也沒有必要一直保存著所有商品的瀏覽次數(shù)所以publicclass RescaleViewedThread implementsRunnable private Jedis conn;private boolean quit;public RescaleViewedThread(int limit)conn = newJedis(-0);conn.auth(dlfl23123);)public void shutDown() quit=true;)Override public void run()while (!quit) try 移除排名20000之后的商品瀏覽信息conn.zremrangeByRankCviewed:, 0, -20001);將所有商品的瀏覽數(shù)量降低一半conn.zinterstore(viewed/viewed:0.5);Thread.sleep(300); catch (InterruptedException e) /TODO Auto-generated catch block e.printStackT race();)系統(tǒng)后動后就一直運行這個線程。那么怎么做呢?怎么集成到我的項目里呢?我的項目
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
- 4. 未經(jīng)權益所有人同意不得將文件中的內容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內容本身不做任何修改或編輯,并不能對任何下載內容負責。
- 6. 下載文件中如有侵權或不適當內容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 2025至2030年中國丙烯彩印袋數(shù)據(jù)監(jiān)測研究報告
- 2025年度商業(yè)秘密保護合同范本模板(新版)
- 2025年度人力資源外包居間服務合同范例
- 2025年度冷鏈物流配送合同(針對2025年農產(chǎn)品)
- 2025年工藝美術品線上線下銷售代理合同
- 2025年度禁牧區(qū)域生態(tài)環(huán)境修復工程合同
- 2025年回遷房屋買賣合同補充協(xié)議執(zhí)行標準版
- 2025年度智能機器人研發(fā)與應用合同范本
- 2025年度技師技能競賽獎金激勵合同
- 2025年度農業(yè)種植基地草籽采購合同
- 電網(wǎng)工程設備材料信息參考價(2024年第四季度)
- 2025年江蘇農牧科技職業(yè)學院高職單招職業(yè)技能測試近5年??及鎱⒖碱}庫含答案解析
- 2025江蘇連云港市贛榆城市建設發(fā)展集團限公司招聘工作人員15人高頻重點提升(共500題)附帶答案詳解
- 江蘇省揚州市蔣王小學2023~2024年五年級上學期英語期末試卷(含答案無聽力原文無音頻)
- 數(shù)學-湖南省新高考教學教研聯(lián)盟(長郡二十校聯(lián)盟)2024-2025學年2025屆高三上學期第一次預熱演練試題和答案
- 決勝中層:中層管理者的九項修煉-記錄
- 《軌道交通工程盾構施工技術》 課件 項目2 盾構構造認知
- 高中英語選擇性必修二 Unit 1 Period 1 Reading and thinking(課件)(共38張)
- 小學生電子小報通用模板-A4電子小報15
- CAS云計算軟件平臺深入介紹
- 課堂教學方法與手段(課堂PPT)課件(PPT 16頁)
評論
0/150
提交評論