## **Redis介紹**
Redis是一個開源的使用ANSI C語言編寫、支持網絡、可基于內存亦可持久化的日志型、Key-Value數據庫,并提供多種語言的API。
Redis是一個key-value存儲系統。和Memcached類似,它支持存儲的value類型相對更多,包括string(字符串)、list(鏈表)、set(集合)、zset(sorted set --有序集合)和hash(哈希類型)。
Redis 是一個高性能的key-value數據庫。 redis的出現,很大程度補償了memcached這類key/value存儲的不足,在部 分場合可以對關系數據庫起到很好的補充作用。它提供了Java,C/C++,C#,PHP,JavaScript,Perl,Object-C,Python,Ruby,Erlang等客戶端,使用很方便。
## **redis和memecache的比較、區別**
1\. Redis 中,并不是所有的數據都一直存儲在內存中的,這是和Memcached相比一個最大的區別。
2\. Redis 不僅僅支持簡單的k/v類型的數據,同時還提供list,set,hash等數據結構的存儲。
3\. Redis 支持數據的備份,即master-slave模式的數據備份。
4\. Redis 支持數據的持久化,可以將內存中的數據保持在磁盤中,重啟的時候可以再次加載進行使用。
5\. 相較于Memcached只能采用客戶端實現分布式存儲,Redis則在服務器端構建分布式存儲。Redis Cluster是一個實現了分布式且允許單點故障的Redis高級版本,它沒有中心節點,各個節點地位一致,具有線性可伸縮的功能。
## **綜合結論**
應該說Memcached和Redis都能很好的滿足解決我們的問題,它們性能都很高,總的來說,可以把Redis理解為是對Memcached的拓展,是更加重量級的實現,提供了更多更強大的功能。具體來說:
## **1.性能上:**
性能上都很出色,具體到細節,由于Redis只使用單核,而Memcached可以使用多核,所以平均每一個核上Redis在存儲小數據時比Memcached性能更高。而在100k以上的數據中,Memcached性能要高于Redis,雖然Redis最近也在存儲大數據的性能上進行優化,但是比起 Memcached,還是稍有遜色。
## **2.內存空間和數據量大小:**
MemCached可以修改最大內存,采用LRU算法。Redis增加了VM的特性,突破了物理內存的限制。
## **3.操作便利上:**
MemCached數據結構單一,僅用來緩存數據,而Redis支持更加豐富的數據類型,也可以在服務器端直接對數據進行豐富的操作,這樣可以減少網絡IO次數和數據體積。
## **4.可靠性上:**
MemCached不支持數據持久化,斷電或重啟后數據消失,但其穩定性是有保證的。Redis支持數據持久化和數據恢復,允許單點故障,但是同時也會付出性能的代價。
## **5.應用場景:**
Memcached:動態系統中減輕數據庫負載,提升性能;做緩存,適合多讀少寫,大數據量的情況(如人人網大量查詢用戶信息、好友信息、文章信息等)。
Redis:適用于對讀寫效率要求都很高,數據處理業務復雜和對安全性要求較高的系統(如新浪微博的計數和微博發布部分系統,對數據安全性、讀寫要求都很高)。
## **需要慎重考慮的部分**
1\. Memcached單個key-value大小有限,一個value最大只支持1MB,而Redis最大支持512MB
2\. Memcached只是個內存緩存,對可靠性無要求;而Redis更傾向于內存數據庫,因此對對可靠性方面要求比較高
3\. 從本質上講,Memcached只是一個單一key-value內存Cache;而Redis則是一個數據結構內存數據庫,支持五種數據類型,因此Redis除單純緩存作用外,還可以處理一些簡單的邏輯運算,Redis不僅可以緩存,而且還可以作為數據庫用
4\. 新版本(3.0)的Redis是指集群分布式,也就是說集群本身均衡客戶端請求,各個節點可以交流,可拓展行、可維護性更強大。
- 快速開始
- phpGrace 介紹
- 環境需求及偽靜態設置
- 目錄結構及命名規則
- 初始化、原理、分組
- 控制器與路由
- 創建控制器
- 基礎控制器
- URL解析規則
- 自定義路由
- URL生成
- 數據與模型
- 數據庫配置
- 獲取數據庫操作對象
- 數據庫操作(CURD)
- 數據分頁詳解
- 事務處理
- 數據驗證
- 表單令牌及驗證
- 模型創建與調用
- 視圖
- 視圖文件創建
- 調用、引用視圖
- 視圖路徑模式
- 會話機制
- Cookie 操作
- Session[文件型 ]
- Session [memcache]
- Session [redis]
- 緩存機制
- 緩存概述及配置
- 文件型緩存
- Memcache 形式的緩存
- Memcache介紹
- Memcache安裝
- 開啟PHP Memcache
- PHP操作Memcache
- Memcache來保存Session
- Memcached圖形化管理工具
- Memcache安全相關
- redis 形式的緩存
- Redis介紹
- Redis安裝
- 開啟 PHP Redis
- Redis圖形化管理工具
- PHP操作Redis
- 配置、常量、語言
- 全局配置、分組配置
- 預定義常量
- 語言包使用說明
- 工具
- 函數小工具
- 安全與擴展
- 框架部署安全
- 常規安全
- 擴展說明
- 常用類庫
- 圖片處理類
- 文件上傳類
- IP地址獲取類
- 驗證碼繪制類
- 日期時間換算類
- md5加密類
- 服務器信息類
- curl通信類
- 文件下載類
- 類反射工具
- XML生成與解析
- 漢字轉拼音類
- 文件夾操作
- 人民幣大寫轉換類
- 第三方類庫
- QQ登錄 - web版
- 微信掃碼登錄-網站
- excel 讀寫操作
- 阿里云短信接口
- SMTP 郵件發送
- 二維碼生成類
- word、pdf 生成類
- 阿里云靜態云存儲接口類