標籤:style blog http 使用 java strong 檔案 資料 sp
Redis 是一個開源的使用ANSI C語言編寫、支援網路、可基於記憶體亦可持久化的日誌型、Key-Value資料庫,並提供多種語言的API。其提供了多種主流語言的用戶端,方便使用;同時Redis支援主從同步。
除了常規的數值或字串,Redis的索引值還可以是以下形式之一:hash,list,set及zset(sorted set)。Redis支援諸如列表、集合或有序集合的交集、並集、差集等進階原子操作;同時,如果索引值的類型是普通數字,Redis則提供自增等原子操作。
所有用關係型資料庫理論可以描述的結構,用Redis的資料結構,都可以實現。如果使用MySQL,當資料規模非常大時,複雜查詢操作都需要藉助表關聯技術,比較耗時。Redis中key-value的儲存方式,定位一個key只需O(1)的操作。
Redis通常將資料存放區於記憶體中,或被配置為使用虛擬記憶體。可以通過兩種方式可以實現資料持久化:
–使用快照(filesnapshotting)的方式,將記憶體中的資料不斷寫入磁碟;
–使用類似MySQL的日誌方式,記錄每次更新的日誌(Append-only)。
Redis支援將資料同步到多台從庫上,這種特性對提高讀取效能非常有益;通過主從複製可以允許多個slave server擁有和master server相同的資料庫副本。配置slave伺服器很簡單,只需要在設定檔中加入配置:
slaveof 主redis服務ip port
支援C、C++、C#、Java、Lua、 Perl Javascript、Objective-C、PHP、Ruby、 Python 、Go等語言;C/C++官方的推薦用戶端為:hiredis.(執行個體如下)
參考:
?中文官方網站:http://www.redis.cn/
?Redis工具使用方法: http://dmouse.iteye.com/blog/811455
?Redis主從配置: http://www.cnblogs.com/liuling/p/2014-4-19-02.html
Key-value資料庫:Redis快取服務