O調度都是被阻塞住的。
2.內存管理方面
Memcached使用預分配的內存池的方式,使用slab和大小不同的chunk來管理內存,Item根據大小選擇合適的chunk存儲,內
存池的方式可以省去申請/釋放內存的開銷,并且能減小內存碎片產生,但這種方式也會帶來一定程度上的空間浪費,并且在內存仍然有很大空間時,新的數據也可
能會被剔除,原因可以參考Timyang的文章:買粉絲://timyang.買粉絲/data/Memcached-lru-evictions/
Redis使用現場申請內存的方式來存儲數據,并且很少使用買粉絲-list等方式來優化內存分配,會在一定程度上存在內存碎片,Redis
跟據存儲命令參數,會把帶過期時間的數據單獨存放在一起,并把它們稱為臨時數據,非臨時數據是永遠不會被剔除的,即便物理內存不夠,導致swap也不會剔
除任何非臨時數據(但會嘗試剔除部分臨時數據),這點上Redis更適合作為存儲而不是cache。
3.數據一致性問題
Memcached提供了cas命令,可以保證多個并發訪問操作同一份數據的一致性問題。 Redis沒有提供cas 命令,并不能保證這點,不過Redis提供了事務的功能,可以保證一串 命令的原子性,中間不會被任何操作打斷。
4.存儲方式及其它方面
Memcached基本只支持簡單的key-value存儲,不支持枚舉,不支持持久化和復制等功能
Redis除key/value之外,還支持list,set,sorted set,hash等眾多數據結構,提供了KEYS
進行枚舉操作,但不能在線上使用,如果需要枚舉線上數據,Redis提供了工具可以直接掃描其mp文件,枚舉出所有數據,Redis還同時提供了持久化和復制等功能。
5.關于不同語言的客戶端支持
在不同語言的客戶端方面,Memcached和Redis都有豐富的第三方客戶端可供選擇,不過因為Memcached發展的時間更久一些,目
前看在客戶端支持方面,Memcached的很多客戶端更加成熟穩定,而Redis由于其協議本身就比Memcached復雜,加上作者不斷增加新的功能
等,對應第三方客戶端跟進速度可能會趕不上,有時可能需要自己在第三方客戶端基礎上做些修改才能更好的使用。
關于Redis的一些周邊功能
Redis除了作為存儲之外還提供了一些其它方面的功能,比如聚合計算、pubsub、scripting等,對于此類功能需要了解其實現原
理,清楚地了解到它的局限性后,才能正確的使用,比如pubsub功能,這個實際是沒有任何持久化支持的,消費方連接閃斷或重連之間過來的消息是會全部丟
失的,又比如聚合計算和scripting等功能受Redis單線程模型所限,是不可能達到很高的吞吐量的,需要謹慎使用。
總的來說Redis作者是一位非常勤奮的開發者,可以經常看到作者在嘗試著各種不同的新鮮想法和思路,針對這些方面的功能就要求我們需要深入了解后再使用。
總結:
1.Redis使用最佳方式是全部數據in-memory。
4.當存儲的數據不能被剔除時,使用Redis更合適。
談談Memcached與Redis(一)
1. Memcached簡介
Memcached是以LiveJurnal旗下Danga Interactive公司的Bard
Fitzpatric為首開發的高性能分布式內存緩存服務器。其本質上就是一個內存key-value數據庫,但是不支持數據的持久化,服務器關閉之后數
據全部丟失。Memcached使用C語言開發,在大多數像Linux、BSD和Solaris等POSIX系統上,只要安裝了libevent即可使
用。在Windows下,它也有一個可用的非官方版本(買粉絲://買粉絲de.jellycan.買粉絲/memcached/)。Memcached
的客戶端軟件實現非常多,包括C/C++, PHP, Java, Python, Ruby, Perl, Erlang,
Lua等。當前Memcached使用廣泛,除了LiveJournal以外還有Wikipedia、Flickr、Twitter、Youtube和
WordPress等。
在Window系統下,Memcached的安裝非常方便,只需從以上給出的地址下載可執行軟件然后運行memcached.exe –d
install即可完成安裝。在Linux等系統下,我們首先需要安裝libevent,然后從獲取源碼,make && make
install即可。默認情況下,Memcached的服務器啟動程序會安裝到/usr/local/bin目錄下。在啟動Memcached時,我們可
以為其配置不同的啟動參數。
1.1 Memcache配置
Memcached服務器在啟動時需要對關鍵的參數進行配置,下面我們就看一看Memcached在啟動時需要設定哪些關鍵參數以及這些參數的作用。
1)-p <num> Memcached的TCP監聽端口,缺省配置為11211;
2)-U <num> Memcached的UDP監聽端口,缺省配置為11211,為0時表示關閉UDP監聽;
3)-s <file> Memcached監聽的UNIX套接字路徑;
4)-a <mask> 訪問UNIX套接字的八進制掩碼,缺省配置為0700;
5)-l <addr> 監聽的服務器IP地址,默認為所有網卡;
6)-d 為Memcached服務器啟動守護進程;
7)-r 最大買粉絲re文件大小;
8)-u <username> 運行Memcached的用戶,如果當前為root的話需要使用此參數指定用戶;
9)-m <num> 分配給Memcached使用的內存數量,單位是MB;
10)-M 指示Memcached在內存用光的時候返回錯誤而不是使用LRU算法移除數據記錄;
11)-c <num> 最大并發連數,缺省配置為1024;
12)-v –vv –vvv 設定服務器端打印的消息的詳細程度,其中-v僅打印錯誤和警告信息,-vv在-v的基礎上還會打印客戶端的命令和相應,-vvv在-vv的基礎上還會打印內存狀態轉換信息;
13)-f <factor> 用于設置chunk大小的遞增因子;
14)-n <bytes> 最小的chunk大小,缺省配置為48個字節;
15)-t <num> Memcached服務器使用的線程數,缺省配置為4個;
16)-L 嘗試使用大內存頁;
17)-R 每個事件的最大請求數,缺省配置為20個;
18)-C 禁用CAS,CAS模式會帶來8個字節的冗余;
2. Redis簡介
Redis是一個開源的key-value存儲系統。與Memcached類似,Redis將大部分數據存儲在內存中,支持的數據類型包括:字
符串、哈希表、鏈表、集合、有序集合以及基于這些數據類型的相關操作。Redis使用C語言開發,在大多數像Linux、BSD和Solaris等
POSIX系統上無需任何外部依賴就可以使用。Redis支持的客戶端語言也非常豐富,常用的計算機語言如C、C#、C++、Object-C、PHP、
Python、Java、Perl、Lua、Erlang等均有可用的客戶端來訪問Redis服務器。當前Redis的應用已經非常廣泛,國內像新浪、淘
寶,國外像Flickr、Github等均在使用Redis的緩存服務。
Redis的安裝非常方便,只需從買粉絲://redis.io/download獲取源碼,然后make && make
install即可。默認情況下,Redis的服務器啟動程序和客戶端程序會安裝到/usr/local/bin目錄下。在啟動Redis服務器時,我們
需要為其指定一個配置文件,缺省情況下配置文件在Redis的源碼目錄下,文件名為redis.買粉絲nf。
蘋果電腦怎么下載迅雷
以下推薦列表均為適用于windows操作系統的優良軟件;大部分免費(收費軟件我已黑體標出)
壓縮軟件:
常用的WinRAR、好壓、快壓這些軟件還是比不上我推薦的這兩個。
1、7-Zip
免費;無廣告、開源、壓縮率高
2、Bandizip
Bandizip是我目前使用過的最佳的壓縮軟件,個人感覺除了不開源以外沒有其他缺點。
免費;支持Uni買粉絲de、支持多種格式、支持多種語言、好看又好用(反正我感覺比7-Zip好看)
系統清理軟件
1、 AdwCleaner
免費;占內存小。
查殺廣告的軟件?清理工具?反正是這方面的,防止惡意劫持,清理廣告和流氓插件。
我的火狐瀏覽器用這個軟件掃描查殺過,不掃不知道,一掃嚇一跳。
2、CCleaner
其實也挺好的,但似乎win10系統并不支持這個軟件,win10系統使用CCleaner很可能導致系統不穩定。其他版本系統可以放心使用此軟件,效果不比Adwcleaner差
(經評論區知友指正,CC目前已經有支持windows10的新版本)
數據恢復軟件:
大家常用的一般都是EasyRe買粉絲very,但其實有更好的恢復軟件
1、Recuva
免費;支持絕大多數文件系統,硬盤、閃盤、U盤、SD卡、手機數據(很多時候EasyRe買粉絲very搞定不了的可以交給Recuva)
下載地址:Recuva - Free Download - Piriform
下載工具:
除了迅雷、qq旋風這種大家常用的,還有其他類型的下載工具
1、HTTrack:(離線瀏覽器工具,可以從網絡下載完整頁面內容)
免費;如果你想在無網絡連接的情況下瀏覽整個網站的數據(比如知乎),那么這個軟件你就能剛好用得到。
2、Inter買粉絲 Download Manager(IDM)
收費,但確實比迅雷好用太多。
沒有限速(下載速度基本由你網速決定)幾乎能夠下載任意內容,視頻音頻網盤插件(百度云也行的吧?未實踐)
反正tumblr和youtube上的視頻是可以下的~
卸載軟件
360管家一類自帶的卸載功能雖然方便,但終歸不徹底。不妨來看看下面這款軟件
1、 I
2024-07-27 21:29
2024-07-27 21:23
2024-07-27 20:48
2024-07-27 20:11
2024-07-27 19:58
2024-07-27 19:39