摘要:之前記錄在公司內(nèi)部的上的現(xiàn)在把這些經(jīng)驗(yàn)分享出來(lái)當(dāng)然這些優(yōu)化都已經(jīng)在框架的底層做掉了使用框架時(shí)并不需要特別在意和的性能差別在注冊(cè)用戶的時(shí)候之前我們大量使用可以保證用戶數(shù)據(jù)的唯一性防止多次寫(xiě)入但經(jīng)過(guò)測(cè)試這種方式相比性能差別巨大所以采取了下面的方
之前記錄在公司內(nèi)部的wiki上的,現(xiàn)在把這些經(jīng)驗(yàn)分享出來(lái),當(dāng)然這些優(yōu)化,都已經(jīng)在框架的底層做掉了,使用框架時(shí),并不需要特別在意
hset/hsetnx和hmset的性能差別
在注冊(cè)用戶的時(shí)候,之前我們大量使用hsetnx,可以保證用戶數(shù)據(jù)的唯一性,防止多次寫(xiě)入
但經(jīng)過(guò)測(cè)試,這種方式,相比hmset性能差別巨大,所以采取了下面的方式
存儲(chǔ)數(shù)據(jù),某些情況采用ziplist節(jié)省空間
在做游戲時(shí),我們大量使用redis的hash結(jié)構(gòu),但這種結(jié)構(gòu),雖然叫做hash,但當(dāng)hash-max-ziplist-entries 512實(shí)用這個(gè)配置,數(shù)據(jù)key < 512條時(shí),實(shí)際用的是ziplist,一種用binary做鏈表連接標(biāo)識(shí)的壓縮鏈表,為了節(jié)省存儲(chǔ)空間,畢竟hash結(jié)構(gòu)要記錄的信息太多,空間換時(shí)間
在優(yōu)化之前,我們的一個(gè)普通的角色信息,是類(lèi)似這樣存儲(chǔ)的
Key role:96
Field 96
Value [96,96,0,10,1,100]
一個(gè)role:96里只有一個(gè)field(96),這樣實(shí)際上非常浪費(fèi)空間,用一個(gè)完整的ziplist結(jié)構(gòu)描述,但只存儲(chǔ)一個(gè)key
所以進(jìn)行了優(yōu)化,例如role:0這個(gè)key,存儲(chǔ)了512個(gè)field,進(jìn)行了這樣的拆分后,即不會(huì)觸發(fā)閥值,將存儲(chǔ)結(jié)構(gòu)變?yōu)檎嬲膆ash table,也充分利用了ziplist的結(jié)構(gòu)描述,大大節(jié)省了空間
一個(gè)簡(jiǎn)單的配置:
$config["redis_cut_single_table"] = 512;
hIncrBy使用方法優(yōu)化
在我們一次請(qǐng)求,比如用戶道具的插入,這種時(shí)候,一次會(huì)需要生成很多的新id,這種情況,這個(gè)優(yōu)化就非常關(guān)鍵了
減少hIncrBy方法的調(diào)用次數(shù),采用php內(nèi)部預(yù)生成分配的辦法,批量插入的時(shí)候?qū)⒋罅刻嵘?br>
文章版權(quán)歸作者所有,未經(jīng)允許請(qǐng)勿轉(zhuǎn)載,若此文章存在違規(guī)行為,您可以聯(lián)系管理員刪除。
轉(zhuǎn)載請(qǐng)注明本文地址:http://systransis.cn/yun/20933.html
摘要:優(yōu)化的一些建議盡量使用短的當(dāng)然在精簡(jiǎn)的同時(shí),不要完了的見(jiàn)名知意。的開(kāi)發(fā)者向的開(kāi)發(fā)者之一詢問(wèn)優(yōu)化方案,得到的回復(fù)是使用結(jié)構(gòu)。所以內(nèi)存分配策略應(yīng)該設(shè)置為表示內(nèi)核允許分配所有的物理內(nèi)存,而不管當(dāng)前的內(nèi)存狀態(tài)如何。 優(yōu)化的一些建議 1、盡量使用短的key 當(dāng)然在精簡(jiǎn)的同時(shí),不要完了key的見(jiàn)名知意。對(duì)于value有些也可精簡(jiǎn),比如性別使用0、1。 2、避免使用keys * keys *, 這個(gè)...
摘要:它是第一個(gè)把數(shù)據(jù)分布在全球范圍內(nèi)的系統(tǒng),并且支持外部一致性的分布式事務(wù)。目的是使得開(kāi)發(fā)者閱讀之后,能對(duì)項(xiàng)目有一個(gè)初步了解,更好的參與進(jìn)入的開(kāi)發(fā)中。深度探索數(shù)據(jù)庫(kù)并發(fā)控制技術(shù)并發(fā)控制技術(shù)是數(shù)據(jù)庫(kù)事務(wù)處理的核心技術(shù)。 存儲(chǔ)過(guò)程高級(jí)篇 講解了一些存儲(chǔ)過(guò)程的高級(jí)特性,包括 cursor、schema、控制語(yǔ)句、事務(wù)等。 數(shù)據(jù)庫(kù)索引與事務(wù)管理 本篇文章為對(duì)數(shù)據(jù)庫(kù)知識(shí)的查缺補(bǔ)漏,從索引,事務(wù)管理,...
閱讀 3203·2021-11-10 11:35
閱讀 1308·2019-08-30 13:20
閱讀 1128·2019-08-29 16:18
閱讀 2143·2019-08-26 13:54
閱讀 2169·2019-08-26 13:50
閱讀 968·2019-08-26 13:39
閱讀 2487·2019-08-26 12:08
閱讀 1961·2019-08-26 10:37