標籤:訊息發布 驅動 -- erlang lang 資料改變 有序 script 訊息
什麼是redis
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可執行單層樹複製。存檔可以有意無意的對資料進行寫操作。由於完全實現了發布/訂閱機制,使得從資料庫在任何地方同步樹時,可訂閱一個頻道並接收主伺服器完整的訊息發布記錄。同步對讀取操作的可擴充性和資料冗餘很有協助。
在javaweb中使用redis的作用 使用redis,最主要的功能就是它的緩衝,就如電腦的快取,當我們要訪問某些資料時,先去redis中找,看其是否存在,若不存在,則再訪問資料庫,同時將資料存入redis,下次訪問的時候就可以直接從redis中讀取,在一個小項目中,你可能感覺不到效能的提升,但是若同時有幾十萬,上百萬的訪問量時,其對效能的提升是飛躍的,極大地減小了資料庫的壓力,但每次資料庫中的資料改變時,必須改變redis緩衝中的資料,否則將會出現不同步的錯誤,redis提供五種資料類型:string,hash,list,set及zset(sorted set)。可儲存多種資料。
開始在 Java 中使用 Redis 前, 我們需要確保已經安裝了 redis 服務及 Java redis 驅動,且你的機器上能正常使用 Java。
(1)Java的安裝配置可以參考我們的 Java開發環境配置
(2)安裝了 redis 服務;
windows下開始redis服務步驟
進入redis的bin目錄:
開啟redis服務
成功開啟後如下:
使用redis減小資料庫訪問壓力及提高系統效能