新聞中心
Redis是目前比較流行的緩存數(shù)據(jù)庫之一,最初是由Salvatore Sanfilippo開發(fā)的一個鍵值對存儲數(shù)據(jù)庫。它具有高并發(fā)讀寫、高可用性、持久化存儲、多種數(shù)據(jù)結(jié)構(gòu)支持等特點(diǎn),廣泛應(yīng)用于網(wǎng)站、移動應(yīng)用、物聯(lián)網(wǎng)等領(lǐng)域。

成都創(chuàng)新互聯(lián)公司是一家集網(wǎng)站建設(shè),株洲企業(yè)網(wǎng)站建設(shè),株洲品牌網(wǎng)站建設(shè),網(wǎng)站定制,株洲網(wǎng)站建設(shè)報價,網(wǎng)絡(luò)營銷,網(wǎng)絡(luò)優(yōu)化,株洲網(wǎng)站推廣為一體的創(chuàng)新建站企業(yè),幫助傳統(tǒng)企業(yè)提升企業(yè)形象加強(qiáng)企業(yè)競爭力??沙浞譂M足這一群體相比中小企業(yè)更為豐富、高端、多元的互聯(lián)網(wǎng)需求。同時我們時刻保持專業(yè)、時尚、前沿,時刻以成就客戶成長自我,堅持不斷學(xué)習(xí)、思考、沉淀、凈化自己,讓我們?yōu)楦嗟钠髽I(yè)打造出實用型網(wǎng)站。
Redis默認(rèn)的內(nèi)存分配策略主要有jeMALLOC和libc malloc兩種。在編譯Redis時可以通過選項–with-malloc選則使用哪種內(nèi)存分配庫。下面我們來對比一下這兩種內(nèi)存分配庫的優(yōu)缺點(diǎn)。
1. jemalloc
jemalloc是freebsd版本中默認(rèn)的內(nèi)存分配庫,也是Redis默認(rèn)使用的內(nèi)存分配庫。它具有以下優(yōu)點(diǎn):
(1)提供了多線程環(huán)境下的內(nèi)存分配優(yōu)化,可以避免內(nèi)存碎片;
(2)擁有專門的內(nèi)存分配器線程,可以為線程池、定時器線程等提供內(nèi)存;
(3)提供內(nèi)存分配計數(shù)和內(nèi)存泄漏檢測等工具。
缺點(diǎn)是:
(1)相對于libc malloc來說占用的內(nèi)存更多,因為jemalloc預(yù)留了很多內(nèi)存用于高并發(fā)場景下的內(nèi)存分配。
(2)與其他分配庫兼容性不高。
(3)不適用所有的應(yīng)用場景。
jemalloc的使用可以提升Redis的性能,減少運(yùn)行時內(nèi)存碎片問題。當(dāng)然,在不適用jvm、php等環(huán)境時可以選擇libc malloc。
2. libc malloc
libc malloc是Linux系統(tǒng)默認(rèn)的內(nèi)存分配庫,它的優(yōu)點(diǎn)是:
(1)與其他開源模塊兼容性較好;
(2)適用范圍比較廣泛,可用于很多應(yīng)用場景。
它的缺點(diǎn)是:
(1)原生的libc malloc在多線程下存在性能問題,需要使用一些多線程改進(jìn)版本的malloc庫;
(2)無法處理高并發(fā)場景中的內(nèi)存分配問題。
在使用libc malloc時,需要考慮鎖競爭的問題,可以選擇Tlsf好Tcmalloc等多線程優(yōu)化版本。
Redis默認(rèn)使用的是jemalloc,若要切換成libc malloc,只需要在編譯時加上–with-malloc選項即可。
$ make MALLOC=libc
當(dāng)然,Redis在默認(rèn)的情況下就已經(jīng)默認(rèn)使用了jemalloc,所以并不需要進(jìn)行改動。
本篇文章介紹了Redis中默認(rèn)的內(nèi)存分配策略jemalloc和libc malloc的優(yōu)缺點(diǎn)和適用范圍。在實際生產(chǎn)中,開發(fā)者可以根據(jù)自己的業(yè)務(wù)需求和服務(wù)器環(huán)境選擇合適的內(nèi)存分配策略。
成都網(wǎng)站設(shè)計制作選創(chuàng)新互聯(lián),專業(yè)網(wǎng)站建設(shè)公司。
成都創(chuàng)新互聯(lián)10余年專注成都高端網(wǎng)站建設(shè)定制開發(fā)服務(wù),為客戶提供專業(yè)的成都網(wǎng)站制作,成都網(wǎng)頁設(shè)計,成都網(wǎng)站設(shè)計服務(wù);成都創(chuàng)新互聯(lián)服務(wù)內(nèi)容包含成都網(wǎng)站建設(shè),小程序開發(fā),營銷網(wǎng)站建設(shè),網(wǎng)站改版,服務(wù)器托管租用等互聯(lián)網(wǎng)服務(wù)。
分享文章:Redis默認(rèn)內(nèi)存分配策略探究(redis的默認(rèn)內(nèi)存大?。?
網(wǎng)頁網(wǎng)址:http://www.dlmjj.cn/article/dpippsp.html


咨詢
建站咨詢
