Time of Update: 2018-12-05
redis短小精悍,系統中的瑞士軍刀。研究了它的原始碼,收穫頗多。1:網路架構2:各種資料結構的精巧實現3:持久化4:複製 網路架構 redis網路架構蠻簡單的,redis自己實現了一個事件庫,總的架構是:基於事件的單進程。一般大家都覺得現在伺服器都是多進程或多線程的,單進程的效能不行。但redis恰恰不同,他就是單進程,而且效能很好。我個人覺著原因有下面幾點:1、redis的記憶體結構非常複雜,多線程不可避免要加鎖,加鎖是很大的開銷,而單進程避免了這。2、redis處理的資料的特點,
Time of Update: 2018-12-05
文章目錄 1. 主動複製避開Redis複製缺陷。2. 通過presharding進行Redis線上擴容。 上一篇文章討論了Redis的常用資料類型與儲存機制,本文會討論一下Redis的複製功能以及Redis複製機制本身的優缺點以及叢集搭建問題。
Time of Update: 2018-12-05
我們知道Redis並沒有自己實現記憶體池,沒有在標準的系統記憶體 Clerk上再加上自己的東西。所以系統記憶體 Clerk的效能及片段率會對Redis造成一些效能上的影響。在Redis的 zmalloc.c 源碼中,我們可以看到如下代碼: 48 /* Explicitly override malloc/free etc when using tcmalloc. */ 49 #if defined(USE_TCMALLOC) 50 #define malloc(size)
Time of Update: 2018-12-06
ServiceStack.Redis是Redis官網推薦的C#用戶端(這裡下載),使用的人也很多。最近項目中也用到了,網上查了一下使用這個用戶端的方法大概有三種:每次訪問建立一個串連,使用串連池和使用長串連(可以看這裡)。我一開始使用很簡單(我用的版本是3.9.32.0)封裝了一個RedisHelper類,內部每次訪問new一個RedisClient,並每次用完dispose掉。public class RedisHelper : IDisposable { public
Time of Update: 2018-12-06
redis_version:2.4.16 # Redis 的版本redis_git_sha1:00000000redis_git_dirty:0arch_bits:64multiplexing_api:epollgcc_version:4.1.2 #gcc版本號碼process_id:10629 # 當前 Redis 伺服器處理序iduptime_in_seconds:145830 # 已耗用時間(秒)uptime_in_days:1 #
Time of Update: 2018-12-06
Redis入門教程作者:nosqlfan on 星期五, 七月 23, 2010 · 評論本文 【閱讀:1,425
Time of Update: 2018-12-07
NoSQL簡介 介紹redis前,我想還是先認識下NoSQL,即not only sql, 是一種非關係型的資料存放區,key/value索引值對儲存。現有Nosql DB 產品: Redis/MongoDB/Memcached/Hbase/Cassandra/ Tokyo Cabinet/Voldemort/Dynomite/Riak/ CouchDB/Hypertable/Flare/Tin/Lightcloud/ KiokuDB/Scalaris/Kai/ThruDB, 等等~~
Time of Update: 2018-12-07
發布訂閱(pub/sub)是一種訊息通訊模式,主要的目的是解耦訊息發行者和訊息訂閱者之間的耦合,這點和設計模式中的觀察者模式比較相似。pub /sub不僅僅解決發行者和訂閱者直接代碼層級耦合也解決兩者在物理部署上的耦合。redis作為一個pub/sub server,在訂閱者和發行者之間起到了訊息路由的功能。訂閱者可以通過subscribe和psubscribe命令向redis
Time of Update: 2018-12-07
redis主從複製配置和使用都非常簡單。通過主從複製可以允許多個slave server擁有和master
Time of Update: 2018-12-07
放假沒事學習了redis這個key-value資料庫。順便寫了點學習筆記和大家分享下,希望對想瞭解redis的同學有所協助。一 redis學習筆記之環境搭建 二 redis學習筆記之資料類型 三 redis學習筆記之排序 四 redis學習筆記之事務 五 redis學習筆記之pipeline 六 redis學習筆記之發布訂閱 七 redis學習筆記之持久化 八 redis學習筆記之主從複製 九 redis學習筆記之虛擬記憶體
Time of Update: 2018-12-07
首先說明下redis的虛擬記憶體與os的虛擬記憶體不是一碼事,但是思路和目的都是相同的。就是暫時把不經常訪問的資料從記憶體交換到磁碟中,從而騰出寶貴的 記憶體空間用於其他需要訪問的資料。尤其是對於redis這樣的記憶體資料庫,記憶體總是不夠用的。除了可以將資料分割到多個redis server外。另外的能夠提高資料庫容量的辦法就是使用vm把那些不經常訪問的資料交換的磁碟上。如果我們的儲存的資料總是有少部分資料被經常訪問,大
Time of Update: 2018-12-07
redis主從複製配置和使用都非常簡單。通過主從複製可以允許多個slave server擁有和master
Time of Update: 2018-12-07
redis是一個支援持久化的記憶體資料庫,也就是說redis需要經常將記憶體中的資料同步到磁碟來保證持久化。redis支援兩種持久化方式,一種是 Snapshotting(快照)也是預設,另一種是Append-only file(縮寫aof)的方式。下面分別介紹Snapshotting 快照是預設的持久化方式。這種方式是就是將記憶體中資料以快照的方式寫入到二進位檔案中,預設的檔案名稱為dump.rdb。可以通過配置設定自動做快照持久
Time of Update: 2018-12-07
發布訂閱(pub/sub)是一種訊息通訊模式,主要的目的是解耦訊息發行者和訊息訂閱者之間的耦合,這點和設計模式中的觀察者模式比較相似。pub /sub不僅僅解決發行者和訂閱者直接代碼層級耦合也解決兩者在物理部署上的耦合。redis作為一個pub/sub server,在訂閱者和發行者之間起到了訊息路由的功能。訂閱者可以通過subscribe和psubscribe命令向redis
Time of Update: 2018-12-06
下載Redis的windows 版本,裡麵包含32bit和64bit2個檔案夾,和其他檔案,根據系統選擇拷貝32bit或者64bit的目錄裡面的檔案到D:\redis檔案夾裡面,然後通過cmd命令進入到該檔案,執行Redis-Server.exe Redis.conf啟動服務端。如果出現如下內容,及服務端啟動成功:(注意服務端的Cmd視窗不能關閉,一旦關閉服務就停止了)d:\redis>redis-server.exe redis.conf[9340] 09 Dec 22:13:37 *
Time of Update: 2018-12-06
最近這段時間一直在搗鼓Redis,搗鼓了蠻長一段時間了,略有所感就記錄下來了。老的文章在這裡:http://www.cnblogs.com/scotoma/archive/2010/12/05/1897067.html這裡主要是寫Redis在PHP下的擴充,原來打算在生產環境下使用PHP 5.3.4 可是感覺PHP官方都不是很推薦使用PHP 5.3.*的功能,新的Zend Framework2.0 更是沒有咋繼續更新了,所以就退回到了 5.2.16了.為什麼用Redis就不用說了,退回了5.2.
Time of Update: 2018-12-07
Redis開創了一種新的資料存放區思路,使用Redis,我們不用在面對功能單調的資料庫時,把精力放在如何把大象放進冰箱這樣的問題上,而是利用Redis靈活多變的資料結構和資料操作,為不同的大象構建不同的冰箱。Redis常用資料類型Redis最為常用的資料類型主要有以下五種:StringHashListSetSorted
Time of Update: 2018-12-07
redis 是一個高效能的key-value資料庫。 redis的出現,很大程度補償了memcached這類keyvalue儲存的不足,在部 分場合可以對關聯式資料庫起到很好的補充作用。它提供了Python,Ruby,Erlang,PHP用戶端,使用很方便。問題是這個項目還很新,可能還不足夠穩定,而且沒有在實際的一些大型系統應用的執行個體。此外,缺乏mc中批量get也是比較大的問題,始終批量擷取跟多次擷取的網路開銷是不一樣的。效能測試結果:SET操作每秒鐘 110000 次,GET操作每秒鐘
Time of Update: 2018-12-07
Normal 0 7.8 磅 0 2 false false false MicrosoftInternetExplorer4 試用Redis安裝、php環境串連、測試 Redis介紹
Time of Update: 2018-12-07
Redis千萬級的資料量的效能測試 可以猜測到還會有Redis 2.2.1 的測試,相同的測試環境,1K的資料量,使用ServiceStack.Redis用戶端進行如下測試: 1) Set操作 2) Get操作 3) Del操作 每一套測試分別使用三個配置進行測試: 1) 綠色線條的是開啟Dump方式的持久化,5分鐘持久化一次 2) 可以猜測到還會有Redis 2.2.1 的測試,相同的測試環境,1K的資料量,使用ServiceStack.Redis用戶端進行如下測試: 1) Set操作