1.學生抽題慢
2.做學生端的時候發現學生每次做一道題的時候觸發一次資料庫,把資料更新到資料庫裡面,這樣子學生端前台響應很慢,每次點選的時候都有1-2秒的延遲。然後當學生多的時候,不斷的對一張表進行更改,大家都懂得。
(加redis)
1. 把共用的東西放到redis裡面
2. 師姐的意思大體是這樣子的,我每次更新的時候並不是更新的資料庫,而是redis,一段時間後內容把整個都提交到資料庫裡面。(反正原話我已經忘記了……)
其實解決抽題中的公共部分,而且給的文件很詳細很簡單:
/**主要用到的redis的**例子:* **邏輯:
* 首先檢視redis是否有題型
* 如果有的話,直接讀取redis的內容,如果沒有的話,就去資料庫裡面查
// 定義題型集合
list
<
questiontypedetail
>
questiontypesdetaillist
=new
arraylist
<
questiontypedetail
>();
string
getquestiontypedetail
=jediscluster
.get
(persorttypeid
);
if(
getquestiontypedetail
==null
||getquestiontypedetail
.equals(""
))else
catch
(ioexceptione)
}
}else
jacksonjsonuntil
.beantojson
(response
,questiontypesdetaillist
);
//新增list
("test4"//查詢list昨天才接觸redis,我還比較單純,已經對於redis的操作,只有文件上面的get,set這兩個方法。所以當郭郭跟我說,重名的時候,資料就會被覆蓋了,我一測試,可不是嘛,於是我果斷的用persorttypeid作為key值。
但是,今天在查詢的時候,才知道是因為我直接set,如果用list儲存結構,用lpush()方法就能輕鬆解決問題了。但是也是因為關於底層redis封裝的方法太少了,用起來一直在各種轉換。
/**
* 根據課程id,學生id,試卷id,資料庫;查詢考生答題記錄;
* 十一期 譚倩倩
* 修改人:譚倩倩
* 修改原因:新增radis
重點邏輯:其實,我是在點選「交卷」的時候把資料儲存到資料庫的。獲取redis儲存資料的個數作為迴圈的條件
把list的每個實體查詢出來,匹配對應的答案,
更新list裡面的資料
//快取更新
list
<
*****record
>
stulist*****record
=new
arraylist
<
*****record
>();
string
stu*****record
=examineearrangement
.getstudentid
()+"list*****record"
;
long
count
=jediscluster
.llen
(stu*****record
);//獲取redis儲存資料的個數
// stulist*****record=jsonutils.jsontolist(strlist*****record,*****record.class);
if(
count==0
)else
catch
(ioexceptione)
}
}
我感覺我的redis僅僅是用了一點點,並沒有很好地利用。以後有機會自己再多學習一下,感謝我老公和紅霞給我各種指導和建議。
還有,就是不要僅僅依賴技術文件。這次我明顯感覺到文件給我的滿足不了業務需求,不要嘗試用自己的簡單邏輯處理,先去查查網上有沒有好的方法。
中期考評調研
想解決的或者是要解決的問題 回答需慢慢完善 q1 我用關係型資料庫構建的 知識圖譜 怎樣利用 知識圖譜 的分析能力?a1 資料庫毀了啊。先想想如何實現資料報入資料庫,以及資料報到攻擊事件or網路異常的跨越?最後再想攻擊事件如何關聯。q2 在利用 網安知識圖譜 的前提下,怎樣做 告警關聯 多找找告警關...
管理感悟 怎樣考評工作產出
管理感悟 怎樣考評工作產出 紅朝儒生 2016 5 9 關鍵字 管理 產出 簡介 真正的技術高手,能解決別人解決不了的問題,看起來沒有辦法解決的問題。上文說過,用工作產出衡量技術,大家心服口服。那有人問了,怎樣考評工作產出呢?其實這事也真不是那麼容易。以軟體而言,工作產出有 即實現的功能 故障解決。...
快速入手ITOO匯入 客戶端
最近正在按照師哥的文件做匯入,瀏覽了好幾遍才知道流程。在這裡給大家分享一下大概流程和容易出現的問題。好讓 itoo 的同志們容易上手。先介紹一下客戶端的流程。流程 1 設計介面 在要做匯入的介面新增 html 和js 以我的基礎匯入課程為例。新增如下 using html.beginform imp...