怎樣通過(guò)NoSQL內(nèi)存數(shù)據(jù)庫(kù)來(lái)進(jìn)行Linux性能優(yōu)化

這期內(nèi)容當(dāng)中小編將會(huì)給大家?guī)?lái)有關(guān)怎樣通過(guò)NOSQL內(nèi)存數(shù)據(jù)庫(kù)來(lái)進(jìn)行Linux性能優(yōu)化,文章內(nèi)容豐富且以專(zhuān)業(yè)的角度為大家分析和敘述,閱讀完這篇文章希望大家可以有所收獲。

創(chuàng)新互聯(lián)公司是一家專(zhuān)注于成都做網(wǎng)站、成都網(wǎng)站制作與策劃設(shè)計(jì),西鄉(xiāng)塘網(wǎng)站建設(shè)哪家好?創(chuàng)新互聯(lián)公司做網(wǎng)站,專(zhuān)注于網(wǎng)站建設(shè)10多年,網(wǎng)設(shè)計(jì)領(lǐng)域的專(zhuān)業(yè)建站公司;建站業(yè)務(wù)涵蓋:西鄉(xiāng)塘等地區(qū)。西鄉(xiāng)塘做網(wǎng)站價(jià)格咨詢(xún):13518219792

我們不僅要選擇適合自己口味的NoSql數(shù)據(jù)庫(kù),比如基于內(nèi)存的Memcache或redis,更適合企業(yè)級(jí)架構(gòu)的Cassandra或HBase,同時(shí),針對(duì)Linux服務(wù)器的優(yōu)化也必不可少。下面小編來(lái)講解下怎樣基于NoSQL內(nèi)存數(shù)據(jù)庫(kù)來(lái)進(jìn)行Linux性能優(yōu)化?

Linux性能優(yōu)化是一個(gè)很大的話(huà)題,涉及應(yīng)用程序棧的層次架構(gòu),并非是一門(mén)精確的科學(xué)。本文是Linux性能優(yōu)化系列文章的第一篇,著眼于NoSQL內(nèi)存數(shù)據(jù)庫(kù)的Linux服務(wù)器性能優(yōu)化。為此,我們將重構(gòu)Linux服務(wù)器的內(nèi)核。

也許你曾經(jīng)親自下載、編譯過(guò)Linux內(nèi)核,因此,在重構(gòu)Linux內(nèi)核之前,請(qǐng)不要忘記風(fēng)險(xiǎn)。

通過(guò)優(yōu)化vanilla 3.x kernel中的如下選項(xiàng)可以應(yīng)對(duì)我們所提到的工作負(fù)載挑戰(zhàn):

CONFIG_TASK_IO_ACCOUNTING:非常重要,允許您監(jiān)控服務(wù)器進(jìn)程的磁盤(pán)活動(dòng)狀態(tài)。

CONFIG_SLUB:Chris Lameter的內(nèi)核對(duì)象緩存系統(tǒng)。相比SLAB而言,在管理內(nèi)核內(nèi)存分配方面效率更高。

CONFIG_JUMP_LABEL:內(nèi)核分支優(yōu)化,使內(nèi)核速度更快。

CONFIG_NUMA and friends:適用于多核處理器,為內(nèi)核啟用NUMA功能,提升對(duì)高速緩存和內(nèi)存的一致性支持。

CONFIG_SPARSEMEM_VMEMMAP:針對(duì)pfn_to_page和page_to_pfn函數(shù)的稀疏內(nèi)存優(yōu)化選項(xiàng)。

CONFIG_TRANSPARENT_HUGEPAGE, CONFIG_COMPACTION, CONFIG_MIGRATION, CONFIG_TRANSPARENT_HUGEPAGE_ALWAYS:這些參數(shù)可用于分配大于4KB的內(nèi)存頁(yè),為內(nèi)存饑餓進(jìn)程加速分配內(nèi)存。另外,它們還可以對(duì)內(nèi)存頁(yè)進(jìn)行壓縮和遷移,以對(duì)大型頁(yè)面進(jìn)行安全查詢(xún),并進(jìn)一步減少內(nèi)存碎片。

怎樣基于NoSQL內(nèi)存數(shù)據(jù)庫(kù)來(lái)進(jìn)行Linux性能優(yōu)化

CONFIG_KSM:以MADV_MERGEABLE的方式取消內(nèi)存頁(yè)面的標(biāo)記是一個(gè)非常重要的機(jī)制,可以以終極的方式節(jié)省內(nèi)存。

CONFIG_ZRAM:提供了一個(gè)基于內(nèi)存的塊設(shè)備。在此塊設(shè)備中寫(xiě)入的數(shù)據(jù)會(huì)被壓縮,并存儲(chǔ)在內(nèi)存中。這對(duì)臨時(shí)存儲(chǔ)空間非常有用(掛載在/tmp目錄下),由于此特性用于臨時(shí)區(qū)域,請(qǐng)將它構(gòu)建為一個(gè)模塊,并小心使用。

CONFIG_ZCACHE, CONFIG_ZSMALLOC & CONFIG_CLEANCACHE:一個(gè)內(nèi)存頁(yè)面壓縮框架,可透明地壓縮清潔頁(yè)面和交換頁(yè)面,從而為基于內(nèi)存的工作負(fù)荷提供顯著的性能提升。CleanCache使用ZCache框架對(duì)內(nèi)存頁(yè)面進(jìn)行壓縮,可以在高內(nèi)存環(huán)境下有效地降低I/O請(qǐng)求。由于此特性用于臨時(shí)區(qū)域,請(qǐng)謹(jǐn)慎使用。

當(dāng)然,我們的優(yōu)化是基于x86_64架構(gòu)的。此外,另一些選項(xiàng)也會(huì)涉及到工作負(fù)荷的性能優(yōu)化:

CONFIG_PERF_EVENTS:內(nèi)核性能計(jì)數(shù)器,與perf等工具共同使用。尤其適用于深度性能監(jiān)控。

CONFIG_PROFILING:性能分析計(jì)數(shù)器,與OProfile等工具共同使用。與PERF_EVENTS同樣重要。

HAVE_BPF_JIT:基于時(shí)間規(guī)則的編譯器,用于基于PCAP(packet capture library)并使用伯克利包篩選器(Berkeley Packet Filter,如tcpdump)的用戶(hù)工具,可以大幅提升復(fù)雜規(guī)則的處理性能。通過(guò)/proc/sys/net/core/bpf_jit_enable啟用它。

我們可以選擇最適合自己的選項(xiàng),保存、編譯并運(yùn)行它,看看最后的結(jié)果是否能帶給你成就感!

也許會(huì)有其它許多技術(shù),可以幫助我們建立高效的基礎(chǔ)架構(gòu),優(yōu)化基于內(nèi)存的工作負(fù)載(比如,RAMSter可以提供交換集群)。不論如何,我們都需對(duì)我們的內(nèi)核優(yōu)化結(jié)果進(jìn)行測(cè)試,以構(gòu)建一個(gè)穩(wěn)定的生產(chǎn)環(huán)境。

上述就是小編為大家分享的怎樣通過(guò)NoSQL內(nèi)存數(shù)據(jù)庫(kù)來(lái)進(jìn)行Linux性能優(yōu)化了,如果剛好有類(lèi)似的疑惑,不妨參照上述分析進(jìn)行理解。如果想知道更多相關(guān)知識(shí),歡迎關(guān)注創(chuàng)新互聯(lián)行業(yè)資訊頻道。

網(wǎng)頁(yè)名稱(chēng):怎樣通過(guò)NoSQL內(nèi)存數(shù)據(jù)庫(kù)來(lái)進(jìn)行Linux性能優(yōu)化
轉(zhuǎn)載來(lái)于:http://bm7419.com/article44/gihiee.html

成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供企業(yè)建站、域名注冊(cè)、虛擬主機(jī)、靜態(tài)網(wǎng)站、企業(yè)網(wǎng)站制作網(wǎng)站營(yíng)銷(xiāo)

廣告

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

成都seo排名網(wǎng)站優(yōu)化