是一種 key-value 的 storage,可以想成進階版的 memcached,它提供了更多種 data structure 與 operator。它不再只是一個儲存體,更能做一些邏輯運算,之前很多要在 client 端做的事情,都可以在 redis server 處理掉。
和其他 NoSQL 相比,資料儲存在 memory,存取速度超快,但也因此儲存空間會受限在 memory size,雖然支援分散式 (Master-Slave),但每個 node 都是一個映射,也就是儲存一模一樣的資料,所以什麼該放在 redis 也是需要仔細想過。它不是完全用來取代 database,而是針對經常存取、較複雜運算的部份再派它上場。
這三篇推薦看一下
這三份文件也可以看
參數設定
請參考 Redis.conf 中文配置详解.docx,下面列出幾個比較重要的參數:
限制 redis 使用 memory 的大小,當 memory 滿的時候,使用 LRU 的方式來移除舊的key
maxmemory <bytes> maxmemory-policy volatile-lru
文中建議關閉鏡像備份,用 Append Only Mode 的方式來備份,並設定自動執行 BGREWRITEAOF 指令來重整 appendonly.aof
# save <seconds> <changes> appendonly yes appendfilename appendonly.aof auto-aof-rewrite-percentage 128 zset-max-ziplist-value 64 activerehashing yes
若使用分散式架構,要指定master主機的位址
slaveof <masterip> <masterport> slave-serve-stale-data yes
指令使用
應用在哪?
個人也還在摸索當中,只覺得 redis 真的很強大,但再強大的東西也是需要遇到會用的人,也就是怎麼把當下的問題用 redis 來解決,這就攸關個人的設計能力了。
- Pub/Sub 做多人聊天室
- Social network
- Design the graph data with nosql // Speaker Deck
- redis_graph: Graph database for Python - amix.dk
- Fast, easy, realtime metrics using Redis bitmaps «
- Sorted Set: Per user notification
- String: API request limiter
- String, List: Request logging
- List: Job Queue
待整理的資料
- Redis新分支,进行服务端lua脚本支持的开发 - NoSQLFan - 关注NoSQL相关技术、新闻
- Redis: based on real story
- Using Redis SORT and GET to save on roundtrips
- Redis 常见的性能问题和解决方法 - 温柔一刀 - ITeye技术网站

BE996C2F6B
回覆刪除organik takipçi
black swivel accent chair
244263B1
回覆刪除Véletlenszerű csevegés
Náhodný chat
Tilfældig chat
ميت فلايدردشة عشوائية
Random Chat
미트플라이랜덤 채팅
Slumpmässig chatt
Zufälliger Chat
צ'אט אקראי
E6947295
回覆刪除Alanya
Bandırma
Sivrihisar
Alaşehir
Boyabat
Erdemli
Didim
Araban
Esat
7EE9E805
回覆刪除Çerkezköy
Çiğli
Silivri
Kiraz
Bafra
Körfez
İskenderun
Elbistan
Ünye