欧美一级特黄大片做受成人-亚洲成人一区二区电影-激情熟女一区二区三区-日韩专区欧美专区国产专区

緩存專(zhuān)題

(網(wǎng)站性能優(yōu)化第一定律:優(yōu)先考慮使用緩存優(yōu)化性能)

成都創(chuàng)新互聯(lián)公司主要從事網(wǎng)站制作、網(wǎng)站設(shè)計(jì)、網(wǎng)頁(yè)設(shè)計(jì)、企業(yè)做網(wǎng)站、公司建網(wǎng)站等業(yè)務(wù)。立足成都服務(wù)天臺(tái),十余年網(wǎng)站建設(shè)經(jīng)驗(yàn),價(jià)格優(yōu)惠、服務(wù)專(zhuān)業(yè),歡迎來(lái)電咨詢建站服務(wù):18982081108


緩存的基本原理:緩存是指將數(shù)據(jù)存儲(chǔ)在相對(duì)較高訪問(wèn)速度的存儲(chǔ)介質(zhì)中,以供系統(tǒng)處理。

緩存的本質(zhì):緩存是一個(gè)內(nèi)存Hash表。網(wǎng)站應(yīng)用中,數(shù)據(jù)緩存以一對(duì)鍵值對(duì)(Key、Value)的形式存儲(chǔ)在內(nèi)存Hash表中。


計(jì)算KV對(duì)中key的HashCode對(duì)應(yīng)的Hash表索引,可以快速訪問(wèn)Hash表中的數(shù)據(jù)。(許多語(yǔ)言支持獲取任意對(duì)象的HashCode,可以把HashCode理解為對(duì)象的唯一標(biāo)識(shí)符)

Java中HashCode方法包含在根對(duì)象Object中,其返回值是一個(gè)Int。然后通過(guò)Hashcode 計(jì)算Hash表的索引下標(biāo),最簡(jiǎn)單的是余數(shù)法,使用Hash表數(shù)組長(zhǎng)度對(duì)Hashcode求余,余數(shù)即Hash表索引,

使用該索引可以直接訪問(wèn)得到Hash表中存儲(chǔ)的KV對(duì),如下圖(數(shù)值僅供參考)。

緩存專(zhuān)題


緩存的基本概念:緩存是將程序或系統(tǒng)經(jīng)常要調(diào)用的對(duì)象存在內(nèi)存中,以便其使用時(shí)可以快速調(diào)用,不必再去創(chuàng)建新的重復(fù)的實(shí)例。這樣做可以減少系統(tǒng)開(kāi)銷(xiāo),提高系統(tǒng)效率。

緩存的作用:用于存放讀寫(xiě)比很高、很少變化的數(shù)據(jù)。   如商品的類(lèi)目信息,熱門(mén)詞的搜索列表,熱門(mén)商品等。應(yīng)用程序讀取數(shù)據(jù)時(shí),先讀取緩存,如果讀取不到或數(shù)據(jù)已失效,再訪問(wèn)數(shù)據(jù)庫(kù),并將數(shù)據(jù)寫(xiě)入緩存

網(wǎng)站數(shù)據(jù)訪問(wèn)通常遵循二八定律,80%的訪問(wèn)落在20%的數(shù)據(jù)上,因此利用Hash表和內(nèi)存的高速訪問(wèn)特性,將這20%的數(shù)據(jù)緩存起來(lái),可很好的改善系統(tǒng)的性能,提高數(shù)據(jù)的讀取速度,降低存儲(chǔ)訪問(wèn)壓力。

使用緩存應(yīng)注意的問(wèn)題:

1. 頻繁修改的數(shù)據(jù)不應(yīng)存入緩存,一般來(lái)說(shuō)讀寫(xiě)比在2:1以上才有使用緩存的意義,因?yàn)轭l繁修改的數(shù)據(jù)如果存入緩存,會(huì)出現(xiàn)應(yīng)用還來(lái)不及讀取,數(shù)據(jù)就已經(jīng)失效的情況,這樣會(huì)增加系統(tǒng)負(fù)擔(dān)。

2. 沒(méi)有熱點(diǎn)的訪問(wèn)。內(nèi)存資源寶貴而有限,不可能把所有數(shù)據(jù)都緩存起來(lái),只能將最新訪問(wèn)的數(shù)據(jù)及熱門(mén)的數(shù)據(jù)緩存起來(lái),把歷史數(shù)據(jù)清理出緩存。

3. 數(shù)據(jù)不一致與臟讀。一般會(huì)對(duì)緩存的數(shù)據(jù)設(shè)置失效時(shí)間,一旦超過(guò)失效時(shí)間,就要從數(shù)據(jù)庫(kù)重新加載,因此要容忍一定時(shí)間的數(shù)據(jù)不一致

緩存可用性:

緩存是為了提高數(shù)據(jù)訪問(wèn)性能的,緩存數(shù)據(jù)丟失或緩存不可用不會(huì)影響到程序的處理--它可以直接從數(shù)據(jù)庫(kù)中獲取。但隨著業(yè)務(wù)的發(fā)展,緩存會(huì)承擔(dān)大部分的數(shù)據(jù)訪問(wèn)壓力,數(shù)據(jù)庫(kù)已經(jīng)習(xí)慣了有緩存的日子,一旦緩存不可用(緩存服務(wù)奔潰),數(shù)據(jù)庫(kù)會(huì)因?yàn)椴荒艹袚?dān)如此大的壓力而宕機(jī),進(jìn)而導(dǎo)致整個(gè)網(wǎng)站不可用,這種情況被稱(chēng)為緩存雪崩。 實(shí)踐中可以通過(guò)緩存熱備等手段提高緩存的可用性,當(dāng)某臺(tái)緩存服務(wù)器宕機(jī)時(shí),將緩存訪問(wèn)切換到熱備服務(wù)器上,但這樣有違緩存的初衷。更多的是通過(guò)分布式緩存服務(wù)器集群,將緩存數(shù)據(jù)分布到集群多臺(tái)服務(wù)器上可一定程度上改善緩存的可用性

緩存預(yù)熱(Warm Up):

緩存存放的是熱點(diǎn)數(shù)據(jù),熱點(diǎn)數(shù)據(jù)又是緩存系統(tǒng)通過(guò)LRU(最近最久未用)算法對(duì)不斷訪問(wèn)的數(shù)據(jù)篩選淘汰出來(lái)的,這個(gè)過(guò)程需花費(fèi)較長(zhǎng)的時(shí)間。新啟動(dòng)的緩存系統(tǒng),如果沒(méi)有任何數(shù)據(jù),在重建緩存數(shù)據(jù)的過(guò)程中,系統(tǒng)的性能及數(shù)據(jù)庫(kù)的負(fù)載都不太好,

那么最好在緩存系統(tǒng)啟動(dòng)時(shí)就把熱點(diǎn)數(shù)據(jù)加載好,這個(gè)緩存預(yù)加載手段叫作緩存預(yù)熱。對(duì)于一些元數(shù)據(jù)如城市列表、類(lèi)目信息,可以在啟動(dòng)時(shí)加載數(shù)據(jù)庫(kù)中全部數(shù)據(jù)到緩存進(jìn)行預(yù)熱。

緩存穿透:

如果因?yàn)椴磺‘?dāng)?shù)臉I(yè)務(wù)、或者惡意***持續(xù)高并發(fā)地請(qǐng)求某個(gè)不存在的數(shù)據(jù),由于緩存沒(méi)有存儲(chǔ)該數(shù)據(jù),所有的請(qǐng)求都會(huì)落到數(shù)據(jù)庫(kù)上,會(huì)對(duì)數(shù)據(jù)庫(kù)造成很大的壓力,甚至崩潰。一個(gè)簡(jiǎn)單的對(duì)策是將不存在的數(shù)據(jù)也緩存起來(lái)(其value值為null)。

緩存主要可分為二大類(lèi):

    一、通過(guò)文件緩存,顧名思義文件緩存是指把數(shù)據(jù)存儲(chǔ)在磁盤(pán)上,不管你是以XML格式,序列化文件DAT格式還是其它文件格式; 

    二、內(nèi)存緩存,也就是實(shí)現(xiàn)一個(gè)類(lèi)中靜態(tài)Map,對(duì)這個(gè)Map進(jìn)行常規(guī)的增刪查. 

分布式緩存架構(gòu):

分布式緩存指緩存部署在多個(gè)服務(wù)器組成的集群中,以集群方式提供緩存服務(wù)。

其架構(gòu)方式有兩種:

  一、以JBoss Cache為代表的需要更新同步的分布式緩存

  二、以Memcached為代表的不互相通信的分布式緩存。

JBoss Cache的分布式緩存在集群中所有服務(wù)器中保存相同的緩存數(shù)據(jù),當(dāng)某臺(tái)服務(wù)器由緩存數(shù)據(jù)更新的時(shí)候,會(huì)通知集群中其他機(jī)器更新緩存數(shù)據(jù)或清除緩存數(shù)據(jù)。JBoss Cache通常將應(yīng)用程序和緩存部署在同一臺(tái)服務(wù)器上,應(yīng)用程序可以從本地快速獲取緩存數(shù)據(jù),但是這種方式帶來(lái)的問(wèn)題是緩存數(shù)據(jù)的數(shù)量受限于單一服務(wù)器的內(nèi)存空間,而且當(dāng)集群規(guī)模較大的時(shí)候,緩存更新信息需要同步到集群所有機(jī)器上,其代價(jià)驚人,因而這種方式更多見(jiàn)于企業(yè)應(yīng)用系統(tǒng)中,而很少在大型網(wǎng)站中使用。

緩存專(zhuān)題

大型網(wǎng)站需要緩存的數(shù)據(jù)量一般都很龐大,可能會(huì)需要數(shù)TB的內(nèi)存做緩存,這時(shí)候就需要另一種分布式緩存---Memcached,

它采用一種集中式的緩存集群管理,也被稱(chēng)作互不通信的分布式架構(gòu)方式。緩存與應(yīng)用分離部署,緩存系統(tǒng)部署在一組專(zhuān)門(mén)的服務(wù)器上,應(yīng)用程序通過(guò)一致性Hash等路由算法選擇緩存服務(wù)器遠(yuǎn)程訪問(wèn)緩存數(shù)據(jù),緩存服務(wù)器之間不通信,緩存集群的規(guī)??梢院苋菀椎膶?shí)現(xiàn)擴(kuò)容,具有良好的可伸縮性。

緩存專(zhuān)題

文章名稱(chēng):緩存專(zhuān)題
轉(zhuǎn)載源于:http://aaarwkj.com/article22/gdgojc.html

成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供營(yíng)銷(xiāo)型網(wǎng)站建設(shè)標(biāo)簽優(yōu)化、外貿(mào)網(wǎng)站建設(shè)、品牌網(wǎng)站制作、商城網(wǎng)站網(wǎng)站設(shè)計(jì)公司

廣告

聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請(qǐng)盡快告知,我們將會(huì)在第一時(shí)間刪除。文章觀點(diǎn)不代表本網(wǎng)站立場(chǎng),如需處理請(qǐng)聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時(shí)需注明來(lái)源: 創(chuàng)新互聯(lián)

小程序開(kāi)發(fā)
精品在线中文字幕不卡| 欧美制服丝袜亚洲自拍偷拍| 91人妻精品一区二区| 欧美男女精品一区二区三区| 亚洲国产日韩精品欧美| 久久精品亚洲精品国产| 精品午夜免费福利视频| 麻豆一区二区人妻网站| 久久精品一品二品三品| 国产亚洲精品久久久闺蜜| 日韩精品专区在线影院重磅| 久久久久久精品人妻网| 中文字幕一区二区不卡顿| 麻豆映画传媒在线播放| 国产成人精品一二三四区| 深夜福利视频一区二区| 精品国产50部农村老熟女av| 少妇视频资源一区二区三区| 中午字幕人妻少妇久久| 夫妻过性生活视频播放| 中文字幕在线日韩av| 国产免费看黄色的网站| 日本高清三级精品一区二区| 欧美日韩国产精品精品| 日韩精品欧美视频久久| 欧美十日本亚洲激情视频| 欧美老熟妇精品一区二区| 国产精品国产一级国产av| 国产91久久精品一区二区| 亚洲一区二区日韩人妻| 日韩在线一区中文字幕| 中文字幕一区中出爽亚洲| 日韩不卡的一区免费视频| 99久久这里只有精品视频| 尤物资源视频在线观看| 国产口爆一区二区三区| 中文字幕乱码亚州精品一区| 国产午夜视频成人无遮挡| 午夜影院免费在线观看五分钟| 校园春色亚洲一区二区| 亚洲中文字幕婷婷在线|