關於Redis簡介及Window下的分片集羣案例(一)

1.Redis簡介

Redis ~ REmote DIctionary Server,可以直接理解爲遠程字典服務。
官網:http://redis.io
Redis是一個key-value存儲系統。和Memcached類似,它支持存儲的value類型相對更多,包括string(字符串)、list(鏈表)、set(集合)、zset(sorted set –有序集合)和hash(哈希類型)。這些數據類型都支持push/pop、add/remove及取交集並集和差集及更豐富的操作,而且這些操作都是原子性的。在此基礎上,redis支持各種不同方式的排序。與memcached一樣,爲了保證效率,數據都是緩存在內存中。區別的是redis會週期性的把更新的數據寫入磁盤或者把修改操作寫入追加的記錄文件,並且在此基礎上實現了master-slave(主從)同步。
Redis 是一個高性能的key-value數據庫。 redis的出現,很大程度補償了memcached這類key/value存儲的不足,在部 分場合可以對關係數據庫起到很好的補充作用。它提供了Java,C/C++,C#,PHP,JavaScript,Perl,Object-C,Python,Ruby,Erlang等客戶端,使用很方便。
Redis支持主從同步。數據可以從主服務器向任意數量的從服務器上同步,從服務器可以是關聯其他從服務器的主服務器。這使得Redis可執行單層樹複製。存盤可以有意無意的對數據進行寫操作。由於完全實現了發佈/訂閱機制,使得從數據庫在任何地方同步樹時,可訂閱一個頻道並接收主服務器完整的消息發佈記錄。同步對讀取操作的可擴展性和數據冗餘很有幫助。
可以充當緩存、隊列等作用。

2.Redis的特性
1)多種數據類型存儲

  •  字符串類型  散列類型  列表類型  集合類型  有序集合類型

2)內存存儲與持久化

  •  內存的讀寫速度遠快於硬盤  自身提供了持久化功能(RDB、AOF兩種方式)

RDB 持久化可以在指定的時間間隔內生成數據集的時間點快照(point-in-time snapshot)。
AOF 持久化記錄服務器執行的所有寫操作命令,並在服務器啓動時,通過重新執行這些命令來還原數據集。 AOF 文件中的命令全部以 Redis 協議的格式來保存,新命令會被追加到文件的末尾。 Redis 還可以在後臺對 AOF 文件進行重寫(rewrite),使得 AOF 文件的體積不會超出保存數據集狀態所需的實際大小。
AOF十分強大,正由於這個特性,它可以輕鬆實現主從複製。
Redis 還可以同時使用 AOF 持久化和 RDB 持久化。在這種情況下,當 Redis 重啓時,它會優先使用 AOF 文件來還原數據集,因爲 AOF 文件保存的數據集通常比 RDB 文件所保存的數據集更完整。
甚至可以關閉持久化功能,讓數據只在服務器運行時存在。
3)功能豐富

  •  可以用作緩存、隊列、消息訂閱/發佈  支持鍵的生存時間  按照一定規則刪除相應的鍵

4)簡單穩定

  •  相比SQL而言更加簡潔  不同語言的客戶端豐富  基於C語言開發,代碼量只有3萬多行

3.Redis安裝和啓動

  1. Windows(64位)下安裝Redis :http://www.redis.net.cn/download/
  2. Windows(64位)安裝系統服務啓動
    註冊服務:
  redis-server --service-install redis.windows.conf --loglevel verbose
卸載服務:
 redis-server --service-uninstall
啓動Redis:
 redis-server --service-start
停止Redis:
  redis-server --service-stop

4.啓動Redis

把下載好的Redis解壓好之後,在window下打開cmd窗口:
把路徑切換到你Redis的解壓目錄如下所示:
這裏寫圖片描述

這裏寫圖片描述
然後在cmd窗口啓動Redis命令,就啓動了Redis了:
這裏寫圖片描述

5.操作Redis
剛纔那個啓動Redis的按鈕不要關閉,再重新打開一個cmd窗口:
這裏寫圖片描述
默認連接:IP 127.0.0.1 端口 6379
redis-cli
指定IP端口:
redis-cli –h 127.0.0.1 –p 6379
使用ping命令測試與客戶端和服務器鏈接是否正常

6.Redis簡單命令
賦值與取值:
SET key value
GET key
127.0.0.1:6379> keys *
(empty list or set)
127.0.0.1:6379> set test 123
OK
127.0.0.1:6379> set test1 ab
OK
127.0.0.1:6379> keys *
1) “test1”
2) “test”
127.0.0.1:6379> get test
“123”
127.0.0.1:6379> get test1
“abc”

下一篇介紹java操作Redis小案例!!

發佈了32 篇原創文章 · 獲贊 14 · 訪問量 3萬+
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章