Time of Update: 2015-01-14
標籤:redis是個記憶體資料庫,所有的操作都是在記憶體中進行,但是記憶體有個特點是,程式出問題或者系統出問題、重啟,關機都會造成記憶體資料丟失。所以需要把記憶體中的資料dump到硬碟中備份起來。RDB持久化,是記憶體資料庫dump到硬碟的過程,其中RDB是個檔案格式,待會介紹。本文從兩個方向剖析,1)載入dump.rdb檔案到記憶體中。2)記憶體資料庫dump到硬碟中dump.rdb檔案。載入dump.rdb檔案到記憶體main函數入口:int main(int argc,
Time of Update: 2015-01-13
標籤:<?phpnamespace iphp\db;use iphp\App;/** * redis操作類 * 說明,任何為false的串,存在redis中都是空串。 * 只有在key不存在時,才會返回false。 * 這點可用於防止緩衝穿透 * @author xuen * */class Redis{private $redis;//當前資料庫ID號protected $dbId=0;//當前許可權認證碼protected $auth;/** * 執行個體化的對象,單例模式. *
Time of Update: 2015-01-16
標籤:: https://github.com/mythz/ServiceStack.Redis添加dll引用:using ServiceStack.Common.Extensions;using ServiceStack.Redis;using ServiceStack.Redis.Generic;using ServiceStack.Text;using ServiceStack.Redis.Support;聲明一個用戶端對象:protected RedisClient Redis =
Time of Update: 2015-01-20
標籤:redis redis持久化 rdb aof 快照 一、 持久化
Time of Update: 2015-01-19
標籤:zend framework redis $redis = $this->getServiceLocator()->get(‘Zend\Db\Adapter\Adapter\Redis‘);var_dump($redis->setItem(‘zzc‘, ‘[email protected]‘));一直提示false,apache日誌中也沒有錯誤,此時,在命令列下執行redis-cli
Time of Update: 2015-01-18
標籤:在redis的使用過程中,有時候需要急需修改redis的配置,比如在業務啟動並執行情況下,記憶體不夠怎麼辦,這時要麼趕緊刪除無用的記憶體,要麼擴充記憶體。如果有無用的內容可刪除那麼所有問題都已經解決。如果內容都是重要的,那隻能選擇擴充記憶體。說到擴充記憶體,redis為我們提供了一個命令。CONFIG SETCONFIG SET parameter valueCONFIG SET 命令可以動態地調整 Redis
Time of Update: 2015-01-17
標籤:redis研究 有序集合類型 sorted set 一、介紹sorted
Time of Update: 2015-01-17
標籤:redis研究 有序集合類型 sorted set redis 上一篇已經講了一部分有序集合類型的命令了http://blog.csdn.net/wtyvhreal/article/details/42804571三、命令拾遺1.獲得集合中元素的數量zcard key2.獲得指定分數範圍內的元素個數<span
Time of Update: 2015-01-16
標籤:本文對Redis如何儲存關係型資料,以及如何對其匹配、範圍、模糊查詢進行舉例講解,其中模糊查詢功能基於最新的2.8.9以後版本。1 關係型資料的儲存以Staff對象為例,在關係型資料庫或類似GridGain的記憶體網格產品中(底層使用H2資料庫的記憶體模式儲存),我們以表形式儲存對象的資料。因為記憶體網格是基於對象做緩衝的,所以還要額外多出一列(Staff列)儲存整個對象的編碼,例如序列化後的二進位或者JSON格式等,便於直接返回給應用後進行還原序列化。而在Redis中,我們可以
Time of Update: 2015-01-16
標籤:[[email protected] redis-2.8.19]# /usr/local/redis/bin/redis-server >> /data/redis-start.txt #從定向到檔案,方便我們查看,內容如下:[[email protected] redis-2.8.19]# cat /data/redis-start.txt[6033] 16 Jan 23:21:42.506 # Warning: no
Time of Update: 2015-01-16
標籤:代碼如下:# chkconfig: 2345 90 10# description: service of redis for start and stop add by tomener PATH=/usr/local/bin:/sbin:/usr/bin:/binREDISPORT=6379EXEC=/usr/local/redis/bin/redis-serverREDIS_CLI=/usr/local/redis/bin/redis-cli
Time of Update: 2015-01-16
標籤: Redis是目前眾多NoSQL產品中非常有特點的一款,支援的資料類型和方法都非常豐富,做為一款具備持久化功能的軟體,實際使中更多卻是將其做為cache。 三思在個人的測試環境中安裝使用了兩三天,這期間儘管文檔看了不少,但其實收穫不多,不過對於NoSQL產品的整體看法一直沒變,我覺著各類型NoSQL產品都還只是工具,並且是小工具,稱不上產品。小工具能起大作用這不假(redis目前在國內最知名的案例應該是新浪微博),但前提是為其找到適合的應用情境,深入的瞭解才能用好它。
Time of Update: 2015-01-15
標籤:在CentOS(Linux)下編譯安裝Redis(V2.8.19)之後,總結的注意事項如下: 下載安裝Redis: $ wget http://download.redis.io/releases/redis-2.8.19.tar.gz$ tar xzf redis-2.8.19.tar.gz$ cd redis-2.8.19$ makeTIPS: 可先到官網下載Redis檔案,同時可以查看官網的編譯安裝方法( 傳送門 )。 在Redis根目錄下,直接 make make
Time of Update: 2015-01-14
標籤:redis 事件迴圈 redis作為伺服器程式,網路IO處理是關鍵。redis不像memcached使用libevent,它實現了自己的IO事件架構,並且很簡單、小巧。可以選擇select、epoll、kqueue等實現。 作為 IO事件架構,需要抽象多種IO模型的共性,將整個過程主要抽象為:
Time of Update: 2015-01-15
標籤:redis 複製(Replication)功能,是實現主從資料庫。如果想提高請求效率,可以使用主要資料庫用於寫操作,從資料庫用於讀操作。並且可以使用一個主,多個從。redis是個單線程的程式,所有的事件(檔案事件和時間事件)都是在一個線程中完成的。沒有什麼讀寫鎖,可以釋放程式的執行效率。從另一個角度來說,單線程只可能在一個CPU裡面跑,沒有利用多核CPU的處理能力,可以使用主從資料庫來解決處理能力問題,並且redis採用I/O多工技術來處理高並發請求。操作比如主要資料庫的ip為10.1.1
Time of Update: 2015-01-13
標籤:redis 源碼 伺服器 最近一直在看redis的源碼,準備把對源碼的理解以及閱讀心得記錄下來,避免忘記並可以和大家分享、談論。看代碼的思路很簡單,直接從main函數走起,先看看初始化過程。redis中一個最重要的資料結構是redis_server,會建立一個這個結構的全域變數server,表示當前redis的配置及狀態,初始化的大部分工作就是設定這個結構的屬性。可以把初始化工作主要劃分為
Time of Update: 2015-01-13
標籤:假設我們伺服器上面已經安裝好了redis;可參看:http://www.cnblogs.com/super-d2/p/3819385.html下面我們來配置redis單主機多執行個體:我們首先拷貝兩份檔案:[[email protected] redis-2.8.12]# cp /etc/redis.conf /etc/redis6380.conf[[email protected] redis-2.8.12]# cp /etc/redis.conf
Time of Update: 2015-01-13
標籤:redis是個key, value資料庫,是個記憶體資料庫。目前是個互連網公司的架構標配。支援的資料對象有string, list, set, zest和hash object。資料結構:資料庫的核心結構是dict(實現是使用hashmap):key: stringvalue: string或者list或者set或者zest或者hash object。dict資料結構定義:typedef struct dictht { // 雜湊表數組 dictEntry
Time of Update: 2015-01-12
標籤:http://www.cnblogs.com/lulu/archive/2013/06/10/3130878.html根據一些測試整理出來的一份方案:1. Redis 效能對於redis 的一些簡單測試,僅供參考:測試環境:Redhat6.2 , Xeon E5520(4核)*2/8G,1000M網卡Redis 版本:2.6.9 用戶端機器使用redis-benchmark 簡單GET、SET操作:1. 1單一實例測試1. Value大小:10Byte~1390Byte處理速度:
Time of Update: 2015-01-12
標籤:為什麼做Redis Client?Redis Client顧名思義,redis的用戶端,主要是封裝了一些對於Redis的操作。而目前用的比較廣泛的 ServiceStack.Redis 不學好,居然開始收費了。作為輪子狂魔,是可忍孰不可忍啊。於是我決定自己造輪子了。 Redis通訊協定先給個Redis官方的通訊協定地址:http://redisdoc.com/topic/protocol.html關鍵是我的部分,我們可以得到以下幾個資訊:1.tcp協議2.預設連接埠63