任務(wù)背景不管報(bào)表引擎的算法如何優(yōu)化,報(bào)表數(shù)據(jù)量大到一定程度,用戶并發(fā)數(shù)多到一定程度,服務(wù)器的性能總會(huì)告急,因此,報(bào)表引擎的任務(wù)一方面是優(yōu)化算法,另一方面也是更重要的,是要提供有效的緩存機(jī)制與并發(fā)控制機(jī)制。面臨困難報(bào)表的緩存,乍一聽似乎挺簡單的,不就是把算好的報(bào)表存下來,然后再次訪問時(shí)不用再次計(jì)算了,直接從緩存里讀取嗎?實(shí)際做起來需要考慮的細(xì)節(jié)很多,并不那么容易。首先,要考慮" />

黄色网页视频 I 影音先锋日日狠狠久久 I 秋霞午夜毛片 I 秋霞一二三区 I 国产成人片无码视频 I 国产 精品 自在自线 I av免费观看网站 I 日本精品久久久久中文字幕5 I 91看视频 I 看全色黄大色黄女片18 I 精品不卡一区 I 亚洲最新精品 I 欧美 激情 在线 I 人妻少妇精品久久 I 国产99视频精品免费专区 I 欧美影院 I 欧美精品在欧美一区二区少妇 I av大片网站 I 国产精品黄色片 I 888久久 I 狠狠干最新 I 看看黄色一级片 I 黄色精品久久 I 三级av在线 I 69色综合 I 国产日韩欧美91 I 亚洲精品偷拍 I 激情小说亚洲图片 I 久久国产视频精品 I 国产综合精品一区二区三区 I 色婷婷国产 I 最新成人av在线 I 国产私拍精品 I 日韩成人影音 I 日日夜夜天天综合

配置潤乾報(bào)表的緩存

系統(tǒng) 2393 0

配置潤乾報(bào)表的緩存

<wbr></wbr>

<wbr></wbr>

任務(wù)背景

不管報(bào)表引擎的算法如何優(yōu)化,報(bào)表數(shù)據(jù)量大到一定程度,用戶并發(fā)數(shù)多到一定程度,服務(wù)器的性能總會(huì)告急,因此,報(bào)表引擎的任務(wù)一方面是優(yōu)化算法,另一方面也是更重要的,是要提供有效的緩存機(jī)制與并發(fā)控制機(jī)制。

<wbr></wbr>

面臨困難

報(bào)表的緩存,乍一聽似乎挺簡單的,不就是把算好的報(bào)表存下來,然后再次訪問時(shí)不用再次計(jì)算了,直接從緩存里讀取嗎?實(shí)際做起來需要考慮的細(xì)節(jié)很多,并不那么容易。

首先,要考慮參數(shù)和宏。大部分報(bào)表都是有參數(shù)或者宏的,不同的參數(shù)和宏,會(huì)算出不同的結(jié)果報(bào)表,因此,報(bào)表的緩存不僅僅和報(bào)表模板關(guān)聯(lián),還和參數(shù)、宏有關(guān)系,只有參數(shù)和宏完全相同的時(shí)候,才能從緩存里讀取。

其次是緩存時(shí)間的問題,如果某個(gè)緩存的報(bào)表不斷地被訪問,那么用戶訪問到的始終是舊報(bào)表,無法更新,因此報(bào)表緩存的時(shí)候還需要記錄緩存的時(shí)間,而用戶訪問的時(shí)候可以請(qǐng)求多長時(shí)間內(nèi)緩存的報(bào)表,從而保證一定的新鮮度。

接著,還需要考慮報(bào)表模板的更新問題,一旦報(bào)表模板更新了,就要觸發(fā)該報(bào)表的緩存清除,從而保證用戶訪問到的是新的報(bào)表。而這種緩存的清除,不能影響到別的報(bào)表。

最麻煩的要數(shù)集群的情況了,目前的集群有兩種,一種是session和服務(wù)器綁定,一旦登陸了就始終訪問同一臺(tái)服務(wù)器;另一種是session復(fù)制的機(jī)制,session不和服務(wù)器綁定,可能一會(huì)訪問這臺(tái)服務(wù)器,一會(huì)訪問另一臺(tái)服務(wù)器,這種情況用戶參數(shù)還必須跟著session走。

集群的時(shí)候,在A服務(wù)器上緩存的報(bào)表,在B服務(wù)器上是找不到的,此時(shí)只能在服務(wù)器之間進(jìn)行通訊,互相查找、讀取緩存的報(bào)表。

<wbr></wbr>

<wbr><wbr><wbr><wbr><wbr><wbr> 小小的緩存問題,卻引發(fā)了如此多的麻煩事,不過不用煩惱,潤乾報(bào)表4.0新推出的緩存機(jī)制,很好地解決了上述問題。實(shí)現(xiàn)步驟非常簡單:</wbr></wbr></wbr></wbr></wbr></wbr>

<wbr></wbr>

實(shí)現(xiàn)步驟

1、<wbr> 在reportConfig.xml文件中,把a(bǔ)lwaysReloadDefine屬性設(shè)為no</wbr>

2、<wbr> 在調(diào)用報(bào)表的jsp中,把 &lt;report:html 標(biāo)簽的useCache屬性設(shè)為yes,同時(shí)設(shè)上timeout屬性,即調(diào)用多少分鐘內(nèi)緩存的報(bào)表。</wbr>

<wbr></wbr>

<wbr></wbr>

效果演示

配置潤乾報(bào)表的緩存

<wbr></wbr>

圖1、沒有使用緩存,每一次訪問,都會(huì)與數(shù)據(jù)庫交互一次

配置潤乾報(bào)表的緩存

<wbr></wbr>

圖2、啟動(dòng)緩存機(jī)制,再次訪問時(shí)不再計(jì)算,而是直接生成HTML

<wbr></wbr>

配置潤乾報(bào)表的緩存


更多文章、技術(shù)交流、商務(wù)合作、聯(lián)系博主

微信掃碼或搜索:z360901061

微信掃一掃加我為好友

QQ號(hào)聯(lián)系: 360901061

您的支持是博主寫作最大的動(dòng)力,如果您喜歡我的文章,感覺我的文章對(duì)您有幫助,請(qǐng)用微信掃描下面二維碼支持博主2元、5元、10元、20元等您想捐的金額吧,狠狠點(diǎn)擊下面給點(diǎn)支持吧,站長非常感激您!手機(jī)微信長按不能支付解決辦法:請(qǐng)將微信支付二維碼保存到相冊(cè),切換到微信,然后點(diǎn)擊微信右上角掃一掃功能,選擇支付二維碼完成支付。

【本文對(duì)您有幫助就好】

您的支持是博主寫作最大的動(dòng)力,如果您喜歡我的文章,感覺我的文章對(duì)您有幫助,請(qǐng)用微信掃描上面二維碼支持博主2元、5元、10元、自定義金額等您想捐的金額吧,站長會(huì)非常 感謝您的哦!!!

發(fā)表我的評(píng)論
最新評(píng)論 總共0條評(píng)論