Redis入門
Redis是什麼:
①Redis:REmote DIctionary Server(遠端字典伺服器)
②是完全開源免費的,用C語言編寫的,遵守BSD協議,是一個高效能的(key/value)分散式記憶體資料庫, 基於記憶體 執行
並 支援持久化 的 NoSQL資料庫 ,是當前最熱門的NoSql資料庫之一,也被人們稱為資料結構伺服器
能幹嘛:
①記憶體儲存和持久化:redis支援 非同步 將記憶體中的資料寫到硬碟上,同時不影響繼續服務
②取最新N個數據的操作,如:可以將最新的10條評論的ID放在Redis的List集合裡面
③模擬類似於HttpSession這種需要設定過期時間的功能
④釋出、訂閱訊息系統
⑤定時器、計數器
官網:
①.官網 ofollow,noindex" target="_blank">http://redis.io/
②.中文翻譯的官網 http://www.redis.cn/
功能:(重要)
資料型別、基本操作和配置
持久化和複製,RDB/AOF
事務的控制
主從複製
在Linux上安裝可能出現的問題:
執行make命令時故意出現的錯誤解析:
gcc是linux下的一個編譯程式,是C程式的編譯工具。 GCC(GNU Compiler Collection) 是 GNU(GNU's Not Unix) 計劃提供的編譯器家族,它能夠支援 C, C++,Objective-C, Fortran, Java 和 Ada 等等程式設計語言前端,同時能夠執行在 x86, x86-64, IA-64,PowerPC, SPARC 和 Alpha 等等幾乎目前所有的硬體平臺 上。鑑於這些特徵,以及 GCC 編譯程式碼的高效性,使得 GCC 成為絕大多數自由軟體開發編譯的首選工具。雖然對於程式設計師們來說,編譯器只是一個 工具,除了開發和維護人員,很少有人關注編譯器的發展,但是 GCC 的影響力是如此之大,它的效能提升甚至有望改善所有的自由軟體的執行效率, 同時它的內部結構的變化也體現出現代編譯器發展的新特徵。
首先安裝gcc
yum install gcc-c++
二次make:jemalloc/jemalloc.h:沒有那個檔案或目錄
如果之前使用make安裝之後,報了這個錯,一定要將原來檔案刪除再次進行安裝
不然會報錯找不到資料夾
安裝:
下載,解壓,安裝
$ wget http://download.redis.io/releases/redis-3.2.4.tar.gz $ tar xzf redis-3.2.4.tar.gz $ cd redis-3.2.4 $ make $make install
安裝成功之後,下面的命令啟動伺服器
$ src/redis-server
客戶端測試命令:
$ src/redis-cli redis> set key val1 OK redis> get key "val1"
一般不建議直接使用原始碼,所以此時:在根目錄建立myredis資料夾
賦值配置檔案的程式碼
cp redis.conf /myredis
啟動:
redis-server /myredis/redis.conf
進入客戶端的編譯測試系統:
redis-cli -p 6379
測試:
此時可以說安裝成功!
啟動之後的講解:
檢視預設安裝目錄:usr/local/bin
redis-benchmark
1.單程序
單程序模型來處理客戶端的請求。對讀寫等事件的響應 是通過對epoll函式的包裝來做到的。Redis的實際處理速度完全依靠主程序的執行效率
epoll是Linux核心為處理大批量檔案描述符而作了改進的epoll,是Linux下多路複用IO介面select/poll的增強版本, 它能顯著提高程式在大量併發連線中只有少量活躍的情況下的系統CPU利用率。
2.預設16個數據庫,類似陣列下表從零開始,初始預設使用零號庫
設定資料庫的數量,預設資料庫為0,可以使用SELECT <dbid>命令在連線上指定資料庫id databases 16
3.select命令切換資料庫
預設第一個庫是0
不同庫之間的資料是不相通的
4.dbsize檢視當前資料庫的key的數量
系統預設自帶的有key
5. flushdb :清空當前庫
6. Flushall ;通殺全部庫
7.統一密碼管理,16個庫都是同樣密碼,要麼都OK要麼一個也連線不上
8.Redis索引都是 從零開始