.NET分布式緩存Memcached如何從入門(mén)到實(shí)戰(zhàn)

這期內(nèi)容當(dāng)中小編將會(huì)給大家?guī)?lái)有關(guān).NET分布式緩存Memcached如何從入門(mén)到實(shí)戰(zhàn),文章內(nèi)容豐富且以專(zhuān)業(yè)的角度為大家分析和敘述,閱讀完這篇文章希望大家可以有所收獲。

成都創(chuàng)新互聯(lián)-專(zhuān)業(yè)網(wǎng)站定制、快速模板網(wǎng)站建設(shè)、高性?xún)r(jià)比平武網(wǎng)站開(kāi)發(fā)、企業(yè)建站全套包干低至880元,成熟完善的模板庫(kù),直接使用。一站式平武網(wǎng)站制作公司更省心,省錢(qián),快速模板網(wǎng)站建設(shè)找我們,業(yè)務(wù)覆蓋平武地區(qū)。費(fèi)用合理售后完善,十載實(shí)體公司更值得信賴(lài)。

.NET分布式緩存Memcached如何從入門(mén)到實(shí)戰(zhàn)

Memcached讀取操作

二、概念名稱(chēng)含義解釋

2.1、什么是Memcached?

Memcached是一個(gè)自由開(kāi)源的,高性能,分布式于內(nèi)存的key-value存儲(chǔ)內(nèi)存對(duì)象緩存系統(tǒng)。它通過(guò)在內(nèi)存中緩存數(shù)據(jù)和對(duì)象來(lái)減少讀取數(shù)據(jù)庫(kù)的次數(shù),從而提高動(dòng)態(tài)、數(shù)據(jù)庫(kù)驅(qū)動(dòng)網(wǎng)站的速度。Memcached基于一個(gè)存儲(chǔ)鍵/值對(duì)的hashmap。其守護(hù)進(jìn)程(daemon )是用C寫(xiě)的,但是客戶(hù)端可以用任何語(yǔ)言來(lái)編寫(xiě),并通過(guò)memcached協(xié)議與守護(hù)進(jìn)程通信。

有的童鞋在學(xué)完阿笨的《.NET分布式緩存redis從入門(mén)到實(shí)戰(zhàn)》課程的時(shí)候提問(wèn)怎么理解分布式。那么何為分布式?簡(jiǎn)單的從字母上意思理解就是說(shuō)它不是本地的。

2.2、Memcached的優(yōu)勢(shì)和不足

優(yōu)勢(shì):

速度快,操作簡(jiǎn)便,易擴(kuò)展

不足:

1)、數(shù)據(jù)的臨時(shí)性(數(shù)據(jù)僅保存在內(nèi)存中)。

2)、只能通過(guò)指定鍵來(lái)讀取數(shù)據(jù),不支持模糊查詢(xún)。

需要注意的是,memcached使用內(nèi)存管理數(shù)據(jù),所以它是易失的,當(dāng)服務(wù)器重啟,或者memcached進(jìn)程中止,數(shù)據(jù)便會(huì)丟失,所以memcached不能用來(lái)持久保存數(shù)據(jù)。 

三、Memcached安裝和配置手冊(cè)

3.1、Memcached在Windows系統(tǒng)安裝手冊(cè)

一般情況下,我們用linux作為生產(chǎn)環(huán)境,但是開(kāi)發(fā)還是在windows下面,所以我們需要 windows版本。但是memcache官方網(wǎng)站只提供了源碼,因此必須使用第三方編譯的Windows版本。

1)、Windows下Memcache安裝步驟:

1、下載memcache for windows。下載地址:http://downloads.northscale.com/memcached-win64-1.4.4-14.zip,解壓到d:\memcached。

2、在命令行狀態(tài)下輸入: d:\memcached\memcached.exe -d install 。至此memcached已經(jīng)安裝成windows服務(wù)。

3、在命令行下輸入: d:\memcached\memcached.exe -d start 以啟動(dòng)memcached服務(wù)。當(dāng)然也可以選擇在windows服務(wù)中啟動(dòng)。

就是這么簡(jiǎn)單,簡(jiǎn)簡(jiǎn)單單的三步memcache的服務(wù)器端就準(zhǔn)備完畢。

2)、設(shè)置memcachedd的默認(rèn)端口和最大內(nèi)存。memcached服務(wù)默認(rèn)占用的端口是11211,占用的最大內(nèi)存默認(rèn)是64M。
如果需要修改這兩個(gè)參數(shù),比如修改端口為10000,內(nèi)存為512,
則輸入: D:\memcached\memcached.exe -p 10000 -m 512 -d start , -p 表示要修改的端口, -m表示  占用的最大內(nèi)存(單位為M)

3.2、Memcached配置說(shuō)明手冊(cè)

telnet 127.0.0.1 11211 鍵入stats可以查看當(dāng)前Memcached的版本以及配置信息

memcached的基本設(shè)置:

-p 監(jiān)聽(tīng)的端口

-l 連接的IP地址, 默認(rèn)是本機(jī)

-d start 啟動(dòng)memcached服務(wù)

-d restart 重起memcached服務(wù)

-d stop|shutdown 關(guān)閉正在運(yùn)行的memcached服務(wù)

-d install 安裝memcached服務(wù)

-d uninstall 卸載memcached服務(wù)

-u 以的身份運(yùn)行 (僅在以root運(yùn)行的時(shí)候有效)

-m 最大內(nèi)存使用,單位MB。默認(rèn)64MB

-M 內(nèi)存耗盡時(shí)返回錯(cuò)誤,而不是刪除項(xiàng)

-c 最大同時(shí)連接數(shù),默認(rèn)是1024

-f 塊大小增長(zhǎng)因子,默認(rèn)是1.25

-n 最小分配空間,key+value+flags默認(rèn)是48

-h 顯示幫助

3.3、 Memcached可視化客戶(hù)端GUD管理及監(jiān)控工具安裝手冊(cè)

TreeNMS是一款 Redis,Memcache可視化客戶(hù)端工具,采用JAVA開(kāi)發(fā),實(shí)現(xiàn)基于WEB方式對(duì)Redis, Memcached數(shù)據(jù)庫(kù)進(jìn)行管理、維護(hù)。

.NET分布式緩存Memcached如何從入門(mén)到實(shí)戰(zhàn)

TreeNMS

四、.NET Memcached實(shí)戰(zhàn)演練分享

4.1、.NET Memcached牛刀小試

1)、NET SDK之Enyim.Caching修煉手冊(cè),看這一篇就足夠了。

.NET分布式緩存Memcached如何從入門(mén)到實(shí)戰(zhàn)

Enyim.Caching修煉手冊(cè)

2)、NET SDK之MemcachedClientLibrary修煉手冊(cè),看這一篇就足夠了。(強(qiáng)烈推薦使用)

.NET分布式緩存Memcached如何從入門(mén)到實(shí)戰(zhàn)

MemcachedClientLibrary修煉手冊(cè)  

3)、NET SDK之ServiceStack修煉手冊(cè),看這一篇就足夠了。

.NET分布式緩存Memcached如何從入門(mén)到實(shí)戰(zhàn)

ServiceStack修煉手冊(cè)


4.2、在A(yíng)SP.NET中Memcached如何進(jìn)行Session托管

MemcachedSessionProvider
https://github.com/rohita/MemcachedSessionProvider
實(shí)際項(xiàng)目中強(qiáng)烈建議使用Redis作為存儲(chǔ)!

五、課后思考與總結(jié)

5.1、思考
1)、什么時(shí)候選擇使用Memached和Redis?
簡(jiǎn)單的Key/Value應(yīng)用場(chǎng)景(例如緩存),Memcached擁有更高的讀寫(xiě)性能;而在數(shù)據(jù)持久化和數(shù)據(jù)同步場(chǎng)景,Redis擁有更加強(qiáng)大的功能和更為豐富的數(shù)據(jù)類(lèi)型。

2)、Memached的持久化和高可用變種產(chǎn)品
memcachedb是新浪網(wǎng)基于Memcached開(kāi)發(fā)的一個(gè)開(kāi)源項(xiàng)目,使Memcached具備了事務(wù)恢復(fù)能力、持久化能力。
repcached是日本人開(kāi)發(fā)的基于Memcached的一個(gè)patch,實(shí)現(xiàn)Memcached的復(fù)制功能,它支持多個(gè)Memcached之間相互復(fù)制,可以解決 容災(zāi)問(wèn)題。 
memcacheQ在Memcached的基礎(chǔ)上實(shí)現(xiàn)了消息隊(duì)列。

5.2、總結(jié):
由于數(shù)據(jù)僅存在于內(nèi)存中,因此重啟memcached、重啟操作系統(tǒng)會(huì)導(dǎo)致全部數(shù)據(jù)消失。 另外,內(nèi)容容量達(dá)到指定值之后,就基于LRU(Least Recently Used)算法自動(dòng)刪除不使用的緩存。memcached本身是為緩存而設(shè)計(jì)的服務(wù)器,因此并沒(méi)有過(guò)多考慮數(shù)據(jù)的永久性問(wèn)題。NOSQL中比較優(yōu)秀的一款產(chǎn)品:Redis,比較好地解決了數(shù)據(jù)持久化的這個(gè)問(wèn)題,重啟Redis不會(huì)導(dǎo)致數(shù)據(jù)丟失。 

上述就是小編為大家分享的.NET分布式緩存Memcached如何從入門(mén)到實(shí)戰(zhàn)了,如果剛好有類(lèi)似的疑惑,不妨參照上述分析進(jìn)行理解。如果想知道更多相關(guān)知識(shí),歡迎關(guān)注創(chuàng)新互聯(lián)行業(yè)資訊頻道。

本文題目:.NET分布式緩存Memcached如何從入門(mén)到實(shí)戰(zhàn)
分享地址:http://muchs.cn/article16/pdgsdg.html

成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供全網(wǎng)營(yíng)銷(xiāo)推廣、Google、網(wǎng)頁(yè)設(shè)計(jì)公司、網(wǎng)站設(shè)計(jì)、用戶(hù)體驗(yàn)、微信小程序

廣告

聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶(hù)投稿、用戶(hù)轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請(qǐng)盡快告知,我們將會(huì)在第一時(shí)間刪除。文章觀(guān)點(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)

小程序開(kāi)發(fā)