久久亚洲中文字幕精_精品国产一区二区三区不卡_99久久久无码国产精品免费手机_国产亚洲精品久久久久动漫

將想法與焦點(diǎn)和您一起共享

網(wǎng)站對(duì)象緩存發(fā)布者:本站     時(shí)間:2019-11-12 13:11:43

對(duì)象緩存用于存儲(chǔ)會(huì)被應(yīng)用再用到的對(duì)象。這些對(duì)象通常來(lái)自數(shù)據(jù)庫(kù),或由計(jì)算或應(yīng)用操作生成。這些對(duì)象幾乎都是有序?qū)ο螅瑫?huì)被排列或組編成有序的格式,以便最小化內(nèi)存占用量。在獲取這些對(duì)象時(shí),它們的排序會(huì)被打亂或解編,以轉(zhuǎn)換成原始的數(shù)據(jù)類(lèi)型。所謂組編,就是把對(duì)象的內(nèi)存表示形式轉(zhuǎn)換成字節(jié)流或字節(jié)序列進(jìn)程,以便存儲(chǔ)或傳輸。所謂解編,就是把字節(jié)流表示的對(duì)象解碼成原始的對(duì)象格式的進(jìn)程。如果使用了對(duì)象緩存,應(yīng)用必須注意到它們,并且實(shí)現(xiàn)操作緩存的方法。

操作緩存的基本方法包括把數(shù)據(jù)加人緩存、從緩存中獲取數(shù)據(jù)以及更新數(shù)據(jù)。通常在緩存中添加數(shù)據(jù)叫做set,從緩存中獲取數(shù)據(jù)叫做get,更新數(shù)據(jù)是replace。許多程序設(shè)計(jì)語(yǔ)言對(duì)最流行的緩存都已經(jīng)有內(nèi)置的支持。memcached是當(dāng)前最常用的緩存之一。它“本質(zhì)上是一種高性能的分布式內(nèi)存對(duì)象緩存系統(tǒng),但目的在于通過(guò)減輕數(shù)據(jù)庫(kù)的負(fù)載來(lái)加速動(dòng)態(tài)的Web應(yīng)用”。這種特殊的緩存使用了非??斓臒o(wú)阻塞網(wǎng)絡(luò)輸入輸出(IO),它自身具備防止內(nèi)存分片的slab分配器、可以確保分配是的,即不論數(shù)據(jù)多少都能夠在常數(shù)時(shí)間內(nèi)進(jìn)行計(jì)算。
 
正如在memcached的描述中所說(shuō)的,它主要是通過(guò)減少對(duì)數(shù)據(jù)庫(kù)的請(qǐng)求,從而加速了Web應(yīng)用。這種方法是合理的,因?yàn)閿?shù)據(jù)庫(kù)幾乎總是應(yīng)用層中獲取數(shù)據(jù)最慢的設(shè)備。在關(guān)系數(shù)據(jù)庫(kù)管理系統(tǒng)中,實(shí)現(xiàn)ACID(原子性、一致性、隔離性、持久性)屬性的額外支出是很高的,尤其是要從硬盤(pán)讀寫(xiě)數(shù)據(jù)時(shí)。但在某些情況下,在系統(tǒng)的其他層之間使用對(duì)象緩存層,也是完全正常和明智的。
 
在一個(gè)典型的兩層或者三層架構(gòu)中,放置對(duì)象緩存最好的方法是把它放在數(shù)據(jù)庫(kù)層之前。正如前面提到過(guò)的,這是因?yàn)閿?shù)據(jù)庫(kù)層通常是整體執(zhí)行速度最慢的層,也通常是擴(kuò)展最貴的一層。其中有一個(gè)Web服務(wù)器層、一個(gè)應(yīng)用服務(wù)器層和一個(gè)數(shù)據(jù)庫(kù)層。這里不止有一個(gè)對(duì)象緩存,而是有兩個(gè)。一個(gè)對(duì)象緩存位于應(yīng)用服務(wù)器與數(shù)據(jù)庫(kù)層之間,另一個(gè)位于Web服務(wù)器與應(yīng)用服務(wù)器之間。如果應(yīng)用服務(wù)器要執(zhí)行大量可緩存的計(jì)算或操作,那么這種設(shè)計(jì)是很合理的。這樣可以使應(yīng)用服務(wù)器不必總是重復(fù)計(jì)算相同的數(shù)據(jù),而是可以把結(jié)果緩存起來(lái),從而減輕了應(yīng)用服務(wù)器的負(fù)載。與數(shù)據(jù)庫(kù)的情況相似,這個(gè)緩存層可以在不添加硬件的情況下,幫助應(yīng)用服務(wù)器層擴(kuò)展。緩存的對(duì)象很可能是來(lái)自數(shù)據(jù)庫(kù)或應(yīng)用服務(wù)器的完整數(shù)據(jù)集的子集。例如,Web服務(wù)器上的應(yīng)用代碼可能會(huì)利用緩存存放用戶(hù)權(quán)限對(duì)象,但是不會(huì)存放交易金額,因?yàn)橛脩?hù)權(quán)限不經(jīng)常改變且會(huì)被經(jīng)常訪問(wèn),而每個(gè)交易的交易金額可能各不同且只會(huì)被訪問(wèn)一次。
 
數(shù)據(jù)庫(kù)的ACID屬性
 
原子性、一致性、隔離性、持久性(ACID)是數(shù)據(jù)庫(kù)管理系統(tǒng)采用的屬性,以確保交易是完全可靠的。
 
原子性是數(shù)據(jù)庫(kù)管理系統(tǒng)的屬性,可以確保一個(gè)交易的所有任務(wù)都被完全執(zhí)行了,或者整個(gè)交易都被回退了。硬件或軟件的故障不會(huì)造成交易只完成了一半。
 
一致性是確保交易前和交易后數(shù)據(jù)庫(kù)保持穩(wěn)定狀態(tài)的屬性。如果一個(gè)交易成功了,它會(huì)把數(shù)據(jù)庫(kù)從一個(gè)有效狀態(tài)轉(zhuǎn)換到另一個(gè)符合一定規(guī)則的有效狀態(tài)。
 
隔離性是在一個(gè)交易操作數(shù)據(jù)時(shí),防止另一個(gè)交易訪問(wèn)它的屬性。大多數(shù)數(shù)據(jù)庫(kù)管理系統(tǒng)都采用數(shù)據(jù)庫(kù)鎖來(lái)確保隔離性。
 
持久性這個(gè)屬性指的是在系統(tǒng)把交易標(biāo)記為成功后,交易就會(huì)保持為完成的、不會(huì)回退的。所有的一致性檢查必須在交易被認(rèn)為是完成了之前完成。
 
如果你在網(wǎng)站建設(shè)數(shù)據(jù)庫(kù)或應(yīng)用服務(wù)器中有經(jīng)常被訪問(wèn)但卻不經(jīng)常更新的數(shù)據(jù),那么使用對(duì)象緩存就非常合理。要減少負(fù)載,首先查看的就是數(shù)據(jù)庫(kù),因?yàn)樗ǔJ亲盥彩亲钯F的一層。但除此之外,還要考慮一下系統(tǒng)中的其他層或池,看看哪里需要對(duì)象緩存。另一個(gè)可能需要對(duì)象緩存的地方是集中的會(huì)話管理緩存。如果你使用了會(huì)話數(shù)據(jù),我們建議你首先盡可能地減少會(huì)話數(shù)據(jù)。如果你可以避免使用會(huì)話,那么就根本不要采用它們,因?yàn)樗鼈冊(cè)诨A(chǔ)設(shè)施和架構(gòu)方面,實(shí)現(xiàn)成本都很高。如果你不能避免使用會(huì)話,我們建議你考慮集中的會(huì)話管理系統(tǒng),這樣可以把請(qǐng)求發(fā)送到任何一個(gè)Web服務(wù)器上,會(huì)話可以從一個(gè)服務(wù)器轉(zhuǎn)移到另一個(gè)服務(wù)器上,不會(huì)造成任何干擾。這樣通過(guò)一個(gè)負(fù)載均衡的解決方案,你就能夠更有效地利用Web服務(wù)器,而當(dāng)發(fā)生故障時(shí),也可以以最小的干擾,把用戶(hù)從一臺(tái)服務(wù)器上轉(zhuǎn)移到另一臺(tái)服務(wù)器上。你可以繼續(xù)檢查自己的應(yīng)用,找到更多可以應(yīng)用對(duì)象緩存的地方。



選擇我們,優(yōu)質(zhì)服務(wù),不容錯(cuò)過(guò)
1. 優(yōu)秀的網(wǎng)絡(luò)資源,強(qiáng)大的網(wǎng)站優(yōu)化技術(shù),穩(wěn)定的網(wǎng)站和速度保證
2. 15年上海網(wǎng)站建設(shè)經(jīng)驗(yàn),優(yōu)秀的技術(shù)和設(shè)計(jì)水平,更放心
3. 全程省心服務(wù),不必?fù)?dān)心自己不懂網(wǎng)絡(luò),更省心。
------------------------------------------------------------
24小時(shí)聯(lián)系電話:021-58370032
广平县| 本溪| 威海市| 社旗县| 屏边| 荥经县| 长治市| 金堂县| 皋兰县| 舒兰市| 江孜县| 邵阳市| 云梦县| 枣强县| 麦盖提县| 隆林| 莱芜市| 石门县| 蓝山县| 万年县| 张家界市| 凉城县| 宁国市| 绥滨县| 武汉市| 大埔县| 化隆| 武隆县| 上栗县| 涟水县| 信宜市| 健康| 河北区| 定远县| 洞口县| 佛学| 资兴市| 遵义县| 阿克苏市| 尼木县| 汉寿县|